An AO System for OO-GPU Programming.

Andrea Fornaia, Christian Napoli, Giuseppe Pappalardo, Emiliano Tramontana · WOA · 2015

Recent technologies, like general purpose computing GPU, have a major limitation consisting in the difficulties that developers face when implementing parallel code using deviceoriented languages. This paper aims to assist developers by automatically producing snippets of code handling GPU-oriented tasks. Our proposed approach is based on Aspect-OrientedProgramming and generates modules in CUDA C compliant code, which are encapsulated and connected by means of JNI. By means of a set of predefined functions we separate the application code from device-dependent concerns, including device memory allocation and management. Moreover, bandwidth utilisation and cores occupancy is automatically handled in order to minimise the overhead caused by host to device communications and the computational imbalance, which often tampers with the effective speedup of a GPU parallelised code. Keywords—Code generation, GPU programming, separation of concerns.

Read the paper · More papers on PaperTik