Duplication of information in generic API
sion_generic_paropen
and sion_generic_paropen_mapped
both have a "commgroup" argument ("global communicator") as well as two arguments grank
("global rank of process / calling task") and gsize
("size of global communicator"). The information contained in the latter two should be contained somehow in the first and indeed, every specific API in SIONlib (MPI, OpenMP, Hybrid) has fields in its "commgroup" structure that contain exactly the values passed in grank
and gsize
. Is it necessary to keep all three arguments or should there generic interface be extended to allow the user to register callbacks for inspecting the "commgroup" for rank and size on the generic level?