2013 27th International Conference on Advanced Information Networking and Applications Workshops (2013)
Barcelona, Spain Spain
Mar. 25, 2013 to Mar. 28, 2013
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/WAINA.2013.62
For scientists, it is advantageous to use a high level of abstraction for programming their simulations, so that they can focus on the problem at hand instead of struggling with low-level details. However, current HPC clusters with multiple GPUs per node only offer explicit communication to and from the GPUs, require manual work to keep the data consistent, and often need explicit kernel programming. Moreover, knownGPU programming frameworks are limited to a single GPUor a single machine and also rarely support objects. Our system removes the above restrictions. With a slight but necessary change in Java's semantics, we achieve automatic distribution and efficient use of objects and arrays of objects on multiple GPUs in a cluster. On benchmarks that distribute arrays of objects over five machines with 10 GPUs, we achieve speedups of up to 4.9 compared to one node.
OpenMP, Java, Parallelism, GPU, Cluster computing
C. Wolf, G. Dotzler, R. Veldema and M. Philippsen, "Object Support for OpenMP-style Programming of GPU Clusters in Java," 2013 27th International Conference on Advanced Information Networking and Applications Workshops(WAINA), Barcelona, Spain Spain, 2013, pp. 1405-1410.