Distributed-Memory Load Balancing with Cyclic Token-based Work-Stealing Applied to Reverse Time Migration
Reverse time migration (RTM) is a prominent technique in seismic imaging. Its resulting subsurface images are used in the industry to investigate with higher confidence the existence and the conditions of oil and gas reservoirs. Because of its high computational cost, RTM must make use of parallel computers. Balancing the workload distribution of an RTM is a growing challenge in distributed computing systems. The heterogeneity of the current parallel systems, the competition for shared resources and the differently-sized tasks of the RTM are some of the possible sources of load imbalance. Although many load balancing techniques exist, scaling up for large problems and large systems remains a challenge because synchronization overhead also scales. This paper introduces a load balancing method for distributed-memory systems that employs a cyclic token-based work-stealing to avoid synchronous communication overhead. The proposed method is implemented as a C library using the one-sided communication feature of the message passing interface (MPI) standard. Results obtained by applying the proposed technique to balance the workload of a 3D RTM running in a homogeneous computational system present a factor of 2 speedup when compared to the conventional static distribution.
READ FULL TEXT