1. 21 Aug, 2019 1 commit
  2. 20 Aug, 2019 1 commit
    • 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
  3. 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
  4. 07 Aug, 2019 1 commit
  5. 15 Jul, 2019 1 commit
  6. 02 Jul, 2019 1 commit
  7. 10 Apr, 2019 1 commit
  8. 09 Apr, 2019 1 commit
  9. 26 Mar, 2019 1 commit
  10. 20 Mar, 2019 1 commit
  11. 13 Mar, 2019 1 commit
    • Nicolas Denoyelle's avatar
      [refactor] reorganize repository · 2ad4488c
      Nicolas Denoyelle authored
      - create one directory per building block in src and include
      - keep one directory for tests, \
        otherwise automake make them "test suites"
      - move to AC_OPENMP, which is from autoconf 2.62 (2008)
      2ad4488c
  12. 15 Feb, 2019 1 commit
  13. 30 Mar, 2018 1 commit
  14. 28 Mar, 2018 1 commit
    • Swann Perarnau's avatar
      [feature] make dma_linux_par thread-safe · 7a69c840
      Swann Perarnau authored
      Add mutex to make request creation and destruction thread-safe. Same as
      dma_linux_seq, the changes are quite simple, as we only need to protect
      modifications to the requests array.
      7a69c840
  15. 27 Mar, 2018 1 commit
  16. 23 Mar, 2018 3 commits
    • Swann Perarnau's avatar
      [test] add working test for dma_linux_par · 12e946e0
      Swann Perarnau authored
      Add working implementation of copy and move to dma_linux_par, and
      corresponding unit test.
      12e946e0
    • Swann Perarnau's avatar
      [feature] add parallel, on-demand dma · 428ec530
      Swann Perarnau authored
      Add a dma that spawns a fixed amount of theads for each request created.
      The number of threads is configured at dma creation time.
      428ec530
    • Swann Perarnau's avatar
      [refactor] remove generic functions from requests · 0a66735a
      Swann Perarnau authored
      This patch refactors dma request types to remove generic function
      pointers from the library. This include modifying the linux_seq
      implementation to:
      - move the copy/move implementation to the dma ops
      - remove one layer of indirection, as the request type no longer need
      _data and _ops substructures.
      
      Enforcing dma requests to have a fully qualified generic type, with
      function pointers, will cause issues for future kinds of dma
      implementation, that might require a different way of handling requests
      altogether.
      
      This work is driven by our current work on a parallel dma implementation.
      0a66735a
  17. 22 Mar, 2018 1 commit
  18. 11 Mar, 2018 1 commit
    • Swann Perarnau's avatar
      [feature] implement simple, working dma engine · 15cd651b
      Swann Perarnau authored
      This patch adds the basics for a dma interface, including
      type-dependent requests structures, and an API based on explicit
      copy/move calls.
      
      The APIs is flexible enough to deal with sync/async calls. The internal
      design is inspired by aml_area, with the goal that create/init stay type
      specific, but the core interactions are generic.
      15cd651b