[PATCH] GPU Exploitation Infrastructure
Alan Bateman
Alan.Bateman at oracle.com
Tue Jan 30 15:35:21 UTC 2018
On 30/01/2018 13:55, Ben Walsh wrote:
> This patch provides the infrastructure to enable the exploitation of a GPU
> by the compiler to accelerate certain suitable Java constructs.
>
> When enabled, a suitable compiler can attempt to accelerate the following
> Java constructs by launching the corresponding lambda expression on the
> GPU:
>
> IntStream.range(<range>).parallel().forEach(<lambda>)
> IntStream.rangeClosed(<range>).parallel().forEach(<lambda>)
>
> where:
>
> <range> defines upper and lower bounds
> <lambda> is a correctly defined lambda expression
>
> As it stands, with the HotSpot compiler, this patch performs a "no op" in
> the newly added in-built native library method.
> This can be extended so that the HotSpot compiler attempts the
> acceleration detailed above instead.
>
> I would like to pair with a sponsor to contribute this patch ...
The function prototypes in jvm.h are JVM_* functions rather than JNI
native method names. You may want to look at adding a JNI function to
libjava with a wrapper or else use RegisterNatives to map the native
method name to a JVM_* function.
BTW: Is this something for one the project repos (Valhalla or Panama)
rather the main line (jdk/jdk)?
-Alan
More information about the core-libs-dev
mailing list