Closed d-reynolds closed 1 year ago
@d-reynolds can we close this (for now) since it seems further testing has shown this doesn't help as much as expected (and slows down some cases I think?) or is this something you still wanted to advance as an option in case it is useful on another machine / compiler / case?
TYPE: enhancement/optimization
KEYWORDS: Speed, halo_exchange, images
SOURCE: Dylan Reynolds, SLF (dylan.reynolds@slf.ch)
DESCRIPTION OF CHANGES: Coarrays tends to have more bandwidth in its memory passing as you ask for larger amounts of data to be exchanged at a single time. Additionally, there is some latency inherent in each call to Coarrays. Thus, total calls to coarray exchanges has been reduced and the amount of data passed per exchange has been increased by buffering all exchangeable variables into one array and exchanging this.