Skip to content

Conversation

mikepapadim
Copy link
Member

This PR is WIP for TornadoVM running with JDK24 and GraalVM 24.0.0.

How to test:

GraalVM version used for initial migration:

wget https://download.oracle.com/graalvm/24/latest/graalvm-jdk-24_linux-x64_bin.tar.gz
make graal-jdk-24 BACKEND=opencl
make tests

make graal-jdk-24 BACKEND=ptx
make tests

make graal-jdk-24 BACKEND=spirv
make tests

Verification:

cmd ➜ tornado -version
WARNING: Using incubator modules: jdk.incubator.vector
java version "24" 2025-03-18
Java(TM) SE Runtime Environment Oracle GraalVM 24+36.1 (build 24+36-jvmci-b01)
Java HotSpot(TM) 64-Bit Server VM Oracle GraalVM 24+36.1 (build 24+36-jvmci-b01, mixed mode)

cmd ➜ tornado --devices
WARNING: Using incubator modules: jdk.incubator.vector
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::loadLibrary has been called by uk.ac.manchester.tornado.drivers.opencl.OpenCL in module tornado.drivers.opencl (file:/home/mikepapadim/manchester/TornadoVM/bin/sdk/share/java/tornado/tornado-drivers-opencl-1.0.9-dev.jar)
WARNING: Use --enable-native-access=tornado.drivers.opencl to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled

WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::loadLibrary has been called by uk.ac.manchester.tornado.drivers.ptx.PTX in module tornado.drivers.ptx (file:/home/mikepapadim/manchester/TornadoVM/bin/sdk/share/java/tornado/tornado-drivers-ptx-1.0.9-dev.jar)
WARNING: Use --enable-native-access=tornado.drivers.ptx to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled


Number of Tornado drivers: 2
Driver: OpenCL
  Total number of OpenCL devices  : 1
  Tornado device=0:0  (DEFAULT)
	OPENCL --  [NVIDIA CUDA] -- NVIDIA GeForce RTX 3070
		Global Memory Size: 7.7 GB
		Local Memory Size: 48.0 KB
		Workgroup Dimensions: 3
		Total Number of Block Threads: [1024]
		Max WorkGroup Configuration: [1024, 1024, 64]
		Device OpenCL C version: OpenCL C 1.2

Driver: PTX
  Total number of PTX devices  : 1
  Tornado device=1:0
	PTX -- PTX -- NVIDIA GeForce RTX 3070
		Global Memory Size: 7.7 GB
		Local Memory Size: 48.0 KB
		Workgroup Dimensions: 3
		Total Number of Block Threads: [2147483647, 65535, 65535]
		Max WorkGroup Configuration: [1024, 1024, 64]
		Device OpenCL C version: N/A

@mikepapadim mikepapadim added graal-update Update the Graal JIT compiler jdk labels Mar 18, 2025
@mikepapadim mikepapadim self-assigned this Mar 18, 2025
@mikepapadim mikepapadim changed the title Support for JDK 24 and migrate to Graal compiler Support for JDK 24 and migrate to Graal compiler 24.2.0 Mar 18, 2025
@mikepapadim
Copy link
Member Author

Todo:

[] 5 pending tests related to bitset and graphcompiler plugin lowering
[] merge with latest develop
[] build with openjdk24 and Graal jars. Builds ok but gets runtime errors due to module imports.

@jjfumero
Copy link
Contributor

Thanks @mikepapadim for the updates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
graal-update Update the Graal JIT compiler jdk
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants