Transparent and Optimized Distributed Processing on GPUs

Andre Luiz Rocha Tupinamba, Alexandre Sztajnberg · IEEE Transactions on Parallel and Distributed Systems · 2016

DistributedCL is a middleware which enables transparent parallel processing on distributed GPUs. With the support of the DistributedCL middleware an application designed to use the OpenCL API can run in a distributed manner and transparently use remote GPUs without having to change or rebuild the code. The proposed architecture for the DistributedCL middleware is modular, with well-defined layers. A prototype was built according to the architecture, which considered various optimization points, including sending data in batches, network asynchronous communication and asynchronous request to the OpenCL API. The prototype was evaluated using available benchmarks and a specific benchmark, the CLBench, was developed to facilitate the evaluations according to the amount of processed data. The prototype presented good performance, higher when compared to similar proposals, which also consider transparent use of remote GPUs. The data size to be transmitted over the network was the major limiting factor.

Read the paper · More papers on PaperTik