Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dimension reordering operator #554

Open
EmilyBourne opened this issue Jul 18, 2024 · 1 comment
Open

Dimension reordering operator #554

EmilyBourne opened this issue Jul 18, 2024 · 1 comment
Labels
core enhancement New feature or request

Comments

@EmilyBourne
Copy link
Collaborator

It would be nice to have an operator/constructor in DDC which can reorder dimensions. This is a kind of transpose operator.
E.g. build ddc::Chunk<double, ddc::DiscreteDimension<DimX, DimY>> from ddc::Chunk<double, ddc::DiscreteDimension<DimY, DimX>>

Ideally such an operator would use blocking to be efficient.

If the operator is added the functions create_transpose_mirror_view_and_copy and create_transpose_mirror_view should also be implemented

@blegouix
Copy link
Collaborator

blegouix commented Jul 18, 2024

Maybe there are some ideas to take from https://github.com/CExA-project/ddc/pull/511/files#diff-a120a1119000f5d36cb8a669f09e5b36ac36fdea28981ae6ae5f034f60e3801dR900

But Kokkos::deep_copy relies only on CudaMemcpy1d, so maybe not the most efficient.

@tpadioleau tpadioleau added the enhancement New feature or request label Jul 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants