Home of ALP/GraphBLAS and ALP/Pregel, featuring shared- and distributed-memory auto-parallelisation of linear algebraic and vertex-centric programs. Soon with more to come!
Apache License 2.0
24
stars
4
forks
source link
Make internal collectives rely on global lpf_coll_t #303
With #249 , the grb::collectives have been made to rely on an internal lpf_coll_t that has become part of the standard distributed-memory context. This global LPF collectives instance makes it unnecessary to continuously re-initialise these as part of the present commsPreamble and commsPostamble that are now still part of the internal collectives.
This issue is to in essence remove those pre- and post-ambles, and instead having the internal collectives also rely on the global collective instance. This is chiefly a cleanup, although there is some performance speedup expected as well. The speedup is expected to be noticeable if internal use cases can, by relying on a global collectives instance, save a synchronisation barrier-- this gain is not always expected in case global registrations must take place anyway, and remains to be evaluated.
With #249 , the
grb::collectives
have been made to rely on an internallpf_coll_t
that has become part of the standard distributed-memory context. This global LPF collectives instance makes it unnecessary to continuously re-initialise these as part of the presentcommsPreamble
andcommsPostamble
that are now still part of the internal collectives.This issue is to in essence remove those pre- and post-ambles, and instead having the internal collectives also rely on the global collective instance. This is chiefly a cleanup, although there is some performance speedup expected as well. The speedup is expected to be noticeable if internal use cases can, by relying on a global collectives instance, save a synchronisation barrier-- this gain is not always expected in case global registrations must take place anyway, and remains to be evaluated.