Skip to content

Commit

Permalink
Add mapping BitPackedIntAoS
Browse files Browse the repository at this point in the history
  • Loading branch information
bernhardmgruber committed Jan 16, 2023
1 parent dc3a3c6 commit 17fd7d3
Show file tree
Hide file tree
Showing 6 changed files with 366 additions and 158 deletions.
2 changes: 2 additions & 0 deletions docs/pages/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,8 @@ Mappings
.. doxygenstruct:: llama::mapping::AoSoA
:members:
.. doxygenvariable:: llama::mapping::maxLanes
.. doxygenstruct:: llama::mapping::BitPackedIntAoS
:members:
.. doxygenstruct:: llama::mapping::BitPackedIntSoA
:members:
.. doxygenstruct:: llama::mapping::BitPackedFloatSoA
Expand Down
8 changes: 4 additions & 4 deletions docs/pages/mappings.rst
Original file line number Diff line number Diff line change
Expand Up @@ -328,11 +328,11 @@ In this example, all fields of type :cpp:`double`, and the field at coordinate R
The load/store functions are called on loading and storing through a proxy reference returned from the mapping.


BitPackedIntSoA
---------------
BitPackedIntAoS/BitPackedIntSoA
-------------------------------

The BitPackedIntSoA mapping is a fully computed mapping that bitpacks integral values to reduce size and precision.
The bits are stored as struct of arrays.
The BitPackedIntSoA and BitPackedIntAoS mappings are fully computed mappings that bitpack integral values to reduce size and precision.
The bits are stored as array of structs and struct of arrays, respectively.
The number of bits used per integral is configurable.
All field types in the record dimension must be integral.

Expand Down
2 changes: 1 addition & 1 deletion include/llama/llama.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
#include "mapping/AoS.hpp"
#include "mapping/AoSoA.hpp"
#include "mapping/BitPackedFloatSoA.hpp"
#include "mapping/BitPackedIntSoA.hpp"
#include "mapping/BitPackedInt.hpp"
#include "mapping/Bytesplit.hpp"
#include "mapping/Byteswap.hpp"
#include "mapping/ChangeType.hpp"
Expand Down
2 changes: 1 addition & 1 deletion include/llama/mapping/BitPackedFloatSoA.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#pragma once

#include "../ProxyRefOpMixin.hpp"
#include "BitPackedIntSoA.hpp"
#include "BitPackedInt.hpp"
#include "Common.hpp"

#include <algorithm>
Expand Down
Loading

0 comments on commit 17fd7d3

Please sign in to comment.