back to article Oracle pours hot, steaming Java into heterogeneous heaven

The future of heterogeneous computing, in which CPUs and GPUs transparently share memory and seamlessly share tasks, has taken another step to fruition: Oracle has joined the HSA – heterogeneous systems architecture – Foundation, with the intent of making Java fully HSA-compliant. "Our intent at Oracle ... is to make [Java] the …

COMMENTS

This topic is closed for new posts.
Silver badge

Java makes me jittery

Java has many features, but it also has a lot of misfeatures. It is also under Oracle's control and that is not something to help me sleep at night.

I did not commit to Java due to its issues. The reason I took Java off of our machines entirely is due to security. I could not in any practical way secure it to my satisfaction.

It looks to me as if a big part of the demand for Java programmers is to clean up the buggy mess left behind by other Java programmers.

1
1
Silver badge

Mixed feelings

It is good to see movement towards better tooling to deal with the complexity of coding on complex platforms such as GP-GPU/CPU hybrids/clusters you name it. At the same time I sometimes doubt that I will always get an efficient solution if hardware details are hidden from the coder. Some code optimizers to a sterling job on a variety of tasks, but sometimes you need to tailor your approach to the underlying architecture. Of course, if a tool works well in a large percentage of cases that is still a bonus, so long as the tools do not get in the way of people needing to access the machine at a lower level of abstraction, for those instances not properly covered by the tools.

One real fear is that people will assume that the code optimizer (or smart virtual machine in the case of Java) will do the work for them, and solve all their problems. I do not so much fear that real coders of parallel systems will walk blindly into that trap, but things might be different in higher management layers of an organization. I can just hear them say "Why do we need these expensive experts, when the code optimizer can automatically parallelize your code?"

1
0
Meh

Clang version of C++ AMP seems to be the big news for HSA today

C++ AMP is a proper parallel extension to the venerable C++ language for execution on a GPGPU, that sensibly focusses on array structures that mapped as a block to the GPU without a load of copying (vector ->array -> GPU -> array -> vector).

Looking at the parallel sort examples highlights Java's aged problem that even at 8, you can't build something as simple as an array or pair/tuple {complex numbers, points, triangles, ...} because it does not have value-types (structs) for political reasons, so any parallel code will first have to copy into a (C++) library structure before execution.. critically limiting the usage.

The only real use-case of GPGPU accelerated Java seems to be fast garbage collection!

0
1
This topic is closed for new posts.

Forums