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

Reply via email to