Algebraic-Programming / ALP

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

Closed anyzelman closed 3 months ago

anyzelman commented 5 months ago

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.