MPI datatype for structure of arrays -
in mpi
application have distributed array of floats , 2 "parallel" arrays of integers: each float value there 2 associated integers describe corresponding value. sake of cache-efficiency want treat them 3 different arrays, i.e. structure of arrays, rather array of structures.
now, have gather these values first node. can in 1 communication instruction, defining mpi
type, corresponding structure, 1 float , 2 integers. force me use array of structures pattern instead of structure of arrays one.
so, can choose between:
- performing 3 different communications, 1 each array , keep efficient structure of arrays arrangement
- defining
mpi
type, perform single communication, , deal resulting array of structures adjusting algorithm or rearranging data
do know third option allow me have best of both worlds, i.e. having single communication , keeping cache-efficient configuration?
you take take @ packing , unpacking.
http://www.mpi-forum.org/docs/mpi-11-html/node62.html
however, think if want pass same "structure" should define own mpi derivate type.
Comments
Post a Comment