kokkos / kokkos-remote-spaces

Kokkos Remote Spaces implements distributed Kokkos Views and related APIs for distributed parallel programming.
Other
42 stars 17 forks source link

updating old tutorial examples to compile #74

Closed DSMishler closed 1 year ago

DSMishler commented 1 year ago

Adding Kokkos::PartitionedLayoutLeft to the matvec and vectorshift examples, and the MPI rank determination to matvec. This allows the code to compile and run once again!

On weaver with my current setup, I find I get the following message at runtime (though it seems to be benign):

home/jciesko/software/nvshmem_src_2.9.0-2/src/comm/transports/ibrc/ibrc.cpp:nvshmemt_init:1746: neither nv_peer_mem, or nvidia_peermem detected. Skipping transport. 
dalg24-jenkins commented 1 year ago

Can one of the admins verify this patch?

janciesko commented 1 year ago

OK to test

DSMishler commented 1 year ago

New commit fixes a bug with vectorshift.cpp in both single and double node.

Previously, vectorshift would copy over from vector b into a_h before checking, but this is no good! Vector b contains the NUM_SHIFTS-1th version of the vector since it is swapped with a at the end of every loop. Instead, it is best to swap with a. Alternatively, you could add -OFFSET to the assert index check. -1 was a bit of a bandaid, hiding this issue because it happens to work when OFFSET is its current default value of 1.

DSMishler commented 1 year ago

Maybe some time someone could explain to me what Jenkins is doing, too.

Rombur commented 1 year ago

@DSMishler it runs the suite. To see the results: click on Details, then on Open Blue Ocean on the left.

Your PR fails because of the format (see here)

DSMishler commented 1 year ago

Ah, I see now. Coding style checks. Thanks for that!

Rombur commented 1 year ago

For the coding style, we use clang-format 8.0 with these rules. It is an old version of clang-format but that's what Kokkos uses.