is it possible to run "for loops" of java code on GPU using OpenACC?? my data mining algorithm coded in java and i want to parallelism my sequential code on GPU. how can i parallelize my java code on GPU?
4
votes
Good question... but what API do you intend to use to delegate to the GPU? CUDA?
- fge
to run it in on GPU using CUDA again i need to rewrite my whole java code into CUDA right?
- user3826791
is there any way to parallelized my sequential java code on GPU without need of changing the whole code?
- user3826791
rootbeer is one approach I can think of currently to convert java code directly to something executable on a GPU. However IBM is developing GPU capabilities for java8 and if you simply want to interface Java to GPU code there are a number of options covered here This last link gives a good overview of options including other options for java-code-on-GPU
- Robert Crovella
1 Answers
1
votes
As of today, tools are beginning to show support for automatically optimizing code (Youtube: Stochastic Optimization for x86 Binaries, Automatic Parallelization with IntelĀ® Compilers) but they can't do that in the general case.
OpenACC is available for Fortran and C++, there is no Java support.
That means today, you still have to do this manually yourself. Look at frameworks like Akka or Hadoop to make your life easier.
For resources how to access shader languages, see Java GPU programming