Choose timezone
Your profile timezone:
Preparation of RC operation closeout meeting
gpu-reco-workflow
: no progress yet; will start after the tracklet finding is ported.SMatrixGPU
on the host, under particular configuration: no progress yet.We can now create and manage instances of S with F == std::span. The code below shows of it works. For the implementation of the classes S and wrapper::wrapper, refer to the link to the compiler explorer on Indico.
std::size_t N = 18;
std::vector<int> x(N);
std::vector<int> y(N);
std::vector<Point2D> point(N);
std::vector<std::string> identifier(N);
wrapper::wrapper<std::span, S, wrapper::layout::soa> my_array = {{x, y, point, identifier}};
The code below shows how to use the factory function factory::make_wrapper to create an AOS vs SOA wrapper instance using an existing buffer. For the implementation of the factory function, refer to the link to the compiler explorer on Indico.
constexpr std::size_t bytes = 1024;
char buffer[bytes];
// change "soa" to "aos" in the line below
auto my_array = factory::make_wrapper<S, wrapper::layout::soa>(buffer, bytes);