alpaka-group / llama

A Low-Level Abstraction of Memory Access
https://llama-doc.rtfd.io/
Mozilla Public License 2.0
80 stars 10 forks source link

View iterators should be mapping aware #788

Open bernhardmgruber opened 1 year ago

bernhardmgruber commented 1 year ago

Currently, a LLAMA View's iterator iterates through the MD-array by iterating the index space and passing those indices to the mapping function. This is inefficient for some mappings, like AoSoA or Bitpacked*. A better approach would be to provide two iteration schemes:

See also Bryce's talk on Multidimensional C++: https://youtu.be/aFCLmQEkPUw?t=1933