1. 05 Sep, 2019 7 commits
  2. 30 Aug, 2019 4 commits
    • Swann Perarnau's avatar
      [feature] add padded layouts · 73b7c567
      Swann Perarnau authored
      Merge of padded layouts implementation from @videau, which provides a
      way to extend a layout in any dimension by using a neutral element.
      73b7c567
    • Swann Perarnau's avatar
      [feature] add extra argument to dma operator · 7eb3d520
      Swann Perarnau authored
      Some operators will need an extra argument (like transforms).
      7eb3d520
    • Swann Perarnau's avatar
      [feature] extend dma to support custom operators · 42d0d493
      Swann Perarnau authored
      Change the DMA generic API to allow for a custom function pointer to
      perform a specific request. Requires us to change a bit the underlying
      management structures.
      42d0d493
    • Nicolas Denoyelle's avatar
      [feature] add area options on mmap · c3a501b9
      Nicolas Denoyelle authored
      ## Change area mmap interface to include implementation specific options.
      
      ### Summary of changes in mmap interface
      Previous mmap interface was:
      ```
      int aml_area_mmap(struct aml_area *area, void*ptr, size_t size);
      ```
      First, in this interface, the purpose of ptr is fuzzy as it is implementation specific and neither
      the user nor aml generic interface knows what to do with it in a generic way.
      Second, this interface does not allow for extensive options. In particular, linux mmap allow
      multiple arguments that cannot be elegantly passed with this interface.
      Instead we aml_mmap replace with this new interface:
      ```
      int aml_area_mmap(struct aml_area *area, size_t size, struct aml_area_options *options);
      ```
      Where the last field clearly state it is used for options and can always be NULL so that it can explicitly be used without knowledge of options implementation.
      c3a501b9
  3. 23 Aug, 2019 1 commit
    • Nicolas Denoyelle's avatar
      ### Cuda implementation of areas. · df3b0f85
      Nicolas Denoyelle authored
      New area allow to allocate data on cuda devices.
      Allocation optionally include the ability to map
      host memory on device memory. See cuda area
      documentation.
      
      Includes libtool helper to link cuda device object files
      with the remaining of the library.
      
      An additional error code has been added to aml errors for handling busy cuda devices
      Also, all CI stages as been set not to run on branches name starting with wip.
      df3b0f85
  4. 22 Aug, 2019 3 commits
  5. 21 Aug, 2019 3 commits
    • Swann Perarnau's avatar
      [refactor/fix] harden dmas · f43d2d6d
      Swann Perarnau authored
      Various fixes related to dma API, missing validation on arguments,
      pthread management and so on.
      f43d2d6d
    • Swann Perarnau's avatar
      [test/fix] add checks on layout_dense_create · 625a0e57
      Swann Perarnau authored
      Unit tests were missing a few corner cases on dense_create. In
      particular, there was a bug in the handling of the NULL pitch.
      625a0e57
    • Swann Perarnau's avatar
      [refactor/test] speed up and improve bitmap tests · d70a25c6
      Swann Perarnau authored
      The bitmap tests were slowing down the entire pipeline, while at the
      same time missing important checks on the inputs. This version is a bit
      more exhaustive, while also speeding up the test by only checking the
      corner-cases (first bits, last bits, partial ranges, overlapping
      ranges).
      d70a25c6
  6. 20 Aug, 2019 2 commits
    • Swann Perarnau's avatar
      [refactor/fix] use uuid in user-side request type · 04315e6e
      Swann Perarnau authored
      Since vector resize can cause pointers into the vector to become
      invalid, this patch introduces a level of indirection for DMAs and
      Scratchs, using uuid on the user-side of a request to index into the
      request vector.
      04315e6e
    • Swann Perarnau's avatar
      [refactor] change vector to alloc data out of it · e964e69e
      Swann Perarnau authored
      We need the vector type used for all our "command queues" to be able to
      maintain pointers to the inner data structure across reallocs of the
      vector itself. The resulting change just uses independent callocs for
      each pointer to a data element.
      e964e69e
  7. 13 Aug, 2019 1 commit
    • Swann Perarnau's avatar
      [refactor] redesign DMAs to support layouts · d8f56ffc
      Swann Perarnau authored
      Refactor the DMA API to work on layouts internally. The resulting code
      ends up simpler for most cases, as long as we add a generic copy
      function.
      
      One things missing:
      - a good API to expose the collection of copy functions we have.
      
      One question not solved:
      - should the DMA ask for a copy function on each operation ?
      d8f56ffc
  8. 07 Aug, 2019 2 commits
  9. 06 Aug, 2019 1 commit
  10. 15 Jul, 2019 1 commit
  11. 02 Jul, 2019 8 commits
  12. 28 Jun, 2019 1 commit
  13. 27 Jun, 2019 1 commit
  14. 10 Apr, 2019 2 commits
  15. 09 Apr, 2019 3 commits