Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for JDK 23 and migrate to Graal compiler 24.1.0 #574

Draft
wants to merge 84 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
38388c2
Update GraalVM for JDK22 support
mikepapadim May 14, 2024
c67a266
First working version
mikepapadim Jun 6, 2024
e1a677a
Fix pom file for jdk22
mikepapadim Jun 6, 2024
cb1be06
wip
mikepapadim Jun 14, 2024
117d0a0
wip
mikepapadim Jun 25, 2024
e957e4f
Add TornadoMemorySegment and update methods in FloatArray
mikepapadim Jun 26, 2024
4f0afeb
Enhance Tornado API with expanded memory segment operations
mikepapadim Jun 26, 2024
f98f686
Merge branch 'develop' of github.com:beehive-lab/TornadoVM into feat/…
mikepapadim Jun 26, 2024
dc142ce
Update import statements and rearrange methods
mikepapadim Jun 26, 2024
fa04b2b
Fix array initialization and remove debug output
mikepapadim Jun 26, 2024
d31dd65
Swap 'setAtIndex' and 'getAtIndex' functionalities in OCLGraphBuilder…
mikepapadim Jul 2, 2024
5d1019d
Update OpenCL graph building and vector handling
mikepapadim Jul 3, 2024
d7881fb
Refactor Tensor type classes for code consistency
mikepapadim Jul 3, 2024
98f79bb
Fix short array index in initialization
mikepapadim Jul 3, 2024
285a6f6
Add initial value for atomic integers in Tornado
mikepapadim Jul 4, 2024
e2af570
Refactor and optimize OCLGraphBuilder and TornadoAtomicsParameters
mikepapadim Jul 4, 2024
ea98443
Refactor atomic parameter initialization in TornadoAtomicsParametersP…
mikepapadim Jul 4, 2024
7f92f13
Refactor and clean up imports in PTX compiler code
mikepapadim Jul 4, 2024
d572a4d
Refactor code for improved readability and remove redundancy
mikepapadim Jul 4, 2024
9c2665f
Refactor code and update exports in ptx drivers
mikepapadim Jul 4, 2024
f7596ed
Refactor TornadoFixedArrayCopyPhase class
mikepapadim Jul 4, 2024
8ef58b2
Reorder code and fix HalfFloatPlaceholder receiver in OCLHalfFloatPlu…
mikepapadim Jul 5, 2024
1d87e70
Update method used in testFloat task
mikepapadim Jul 5, 2024
d0314f9
Remove unused code in ExceptionSuppression
mikepapadim Jul 5, 2024
2583246
Refactor code for plugins to be compliant with Graal 24.0.1
mikepapadim Jul 18, 2024
ce6dad2
Refactor PTXGraphBuilderPlugins in manually add SingExtendNode
mikepapadim Jul 18, 2024
b298c76
Update receiver handling in various plugins
mikepapadim Jul 18, 2024
aa602ff
Update method parameters in OCLHalfFloatPlugins
mikepapadim Jul 18, 2024
a9af1cc
Merge branch 'develop' into feat/jdk22_2nd_iteration
mikepapadim Jul 18, 2024
4d92f4a
Refactor PTXStamp class and update PTXVectorPlugins
mikepapadim Jul 19, 2024
0833d06
Update module dependencies in SPIR-V and PTX drivers
mikepapadim Jul 19, 2024
6ca4334
Update package names in SPIRV exports list
mikepapadim Jul 19, 2024
31ddc38
Update import statements to use jdk.graal namespace instead of org.gr…
mikepapadim Jul 19, 2024
431c455
Update SPIRV vector and graph builder plugins
mikepapadim Jul 19, 2024
429d8ad
Refactor SPIRVCompilationResultBuilder class by adjusting package ref…
mikepapadim Jul 19, 2024
859597b
Update TornadoHalfFloatReplacement class to handle newly introduced P…
mikepapadim Jul 23, 2024
d9f5b49
Refactor InvocationPlugin registration in OCLHalfFloatPlugins
mikepapadim Jul 23, 2024
2ea0926
[WIP] Refactor half float replacement and guard elimination methods f…
mikepapadim Jul 24, 2024
d97f909
Unify TornadoHalfFloatReplacement phase functionality amonmg all back…
mikepapadim Jul 24, 2024
2ccfb9b
Merge branch 'feat/jdk22_2nd_iteration' of github.com:mikepapadim/Tor…
mikepapadim Jul 24, 2024
302ff19
Implement cleanup of Pi nodes in TornadoHalfFloatReplacement
mikepapadim Jul 24, 2024
faad244
Refactor `isCompatible` method in PTXStamp.java
mikepapadim Jul 24, 2024
2846671
Merge branch 'feat/jdk22_2nd_iteration' of github.com:mikepapadim/Tor…
mikepapadim Jul 24, 2024
f425242
Add RemoveValueProxyPhase in SPIRVLowTier.java
mikepapadim Jul 25, 2024
22f1c69
Improve PiNode replacement handling in SPIRV transformations
mikepapadim Jul 25, 2024
090f9d1
Add RemoveValueProxyPhase to SPIRVMidTier pipeline
mikepapadim Jul 25, 2024
0c28c94
Update Graal JAR version to 24.0.2
mikepapadim Jul 27, 2024
84ddec8
Merge branch 'develop' into feat/jdk22_2nd_iteration
mikepapadim Jul 27, 2024
b7d672a
Merge remote-tracking branch 'origin' into feat/jdk22_2nd_iteration
mikepapadim Jul 27, 2024
be1fdfa
Remove extra `--ea` flags from test commands
mikepapadim Jul 27, 2024
67b7604
Merge branch 'feat/jdk22_2nd_iteration' of github.com:mikepapadim/Tor…
mikepapadim Jul 27, 2024
2ffe8ac
Update `isCompatible` to handle `ObjectStamp` in `OCLStamp`
mikepapadim Jul 29, 2024
cdd1784
Simplify SPIRVStamp compatibility check
mikepapadim Jul 29, 2024
f500922
[feat] Update graalvm version in pom file
stratika Jul 29, 2024
6c58f20
Refactor method to use fromJavaKind over fromResolvedJavaType
mikepapadim Jul 30, 2024
e5efad2
Merge branch 'feat/jdk22_2nd_iteration' of github.com:mikepapadim/Tor…
mikepapadim Jul 30, 2024
c0f6e63
Update installer_config.py for JDK 22
stratika Jul 31, 2024
e63d1bd
Update tornadovm-installer
stratika Jul 31, 2024
a6c083b
Update installer_config.py
stratika Jul 31, 2024
dec5a87
Update installer_config.py
stratika Jul 31, 2024
d8c8ed2
Remove non-standard string formatting
mikepapadim Jul 31, 2024
937c6b7
Update GraalVM to 24.1.0 and refactor dependencies
mikepapadim Oct 1, 2024
823876e
Update GraphBuilderPhase to TornadoInternalGraphBuilder
mikepapadim Oct 1, 2024
84c7440
Add org.graalvm.word to module dependencies
mikepapadim Oct 1, 2024
c14e4cc
Update header size config and cleanup unused warnings
mikepapadim Oct 1, 2024
c30b2cc
Adjust header size and add TornadoInternalGraphBuilder
mikepapadim Oct 1, 2024
f06197f
Update build scripts to use JDK 23
mikepapadim Oct 1, 2024
8160bb1
Adjust memory offsets for GPU kernels
mikepapadim Oct 1, 2024
2634bea
Update pom.xml for maven compiler
mikepapadim Oct 3, 2024
48d896d
Update pom for tornado-api
mikepapadim Oct 3, 2024
eb2e8e7
Merge branch 'develop' into jdk23
mikepapadim Oct 4, 2024
9a0e808
Fix compile script
mikepapadim Oct 7, 2024
6f7738f
Adjust memory offsets in GPU kernel code
mikepapadim Oct 8, 2024
5321618
Update arrayHeaderSize initialization to use PANAMA_OBJECT_HEADER_SIZE
mikepapadim Oct 8, 2024
91ddd72
Refactor array address handling and update header size
mikepapadim Oct 8, 2024
7027db4
Refactor variable orderings in GPU kernels
mikepapadim Oct 8, 2024
2a2279b
Combine Java GC options and simplify version checks
mikepapadim Oct 8, 2024
d64a460
Update Graal debug options to use `jdk.graal` prefix
mikepapadim Oct 8, 2024
3643f5d
Remove OpenCL and PTX BarrierSetLIRGenerator files
mikepapadim Oct 8, 2024
5f224ae
Remove debug print statements from OCL classes
mikepapadim Oct 8, 2024
0074cde
Refactor SPIRV code and update various backend implementations.
mikepapadim Oct 8, 2024
2e04589
Update JDK version from 22 to 23 in compile script
mikepapadim Oct 8, 2024
88ccfa3
Remove merge conflict markers
mikepapadim Oct 8, 2024
a6fc726
Merge remote-tracking branch 'oss/develop' into jdk23
mikepapadim Oct 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
26 changes: 13 additions & 13 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@ all: build
# make BACKEND=<comma_separated_backend_list>
BACKEND ?= opencl

build jdk21:
bin/compile --jdk jdk21 --backend $(BACKEND)
build jdk23:
bin/compile --jdk jdk23 --backend $(BACKEND)

rebuild-deps-jdk21:
bin/compile --jdk jdk21 --rebuild --backend $(BACKEND)
rebuild-deps-jdk23:
bin/compile --jdk jdk23 --rebuild --backend $(BACKEND)

graal-jdk-21:
bin/compile --jdk graal-jdk-21 --backend $(BACKEND)
graal-jdk-23:
bin/compile --jdk graal-jdk-23 --backend $(BACKEND)

polyglot:
bin/compile --jdk graal-jdk-21 --backend $(BACKEND) --polyglot
bin/compile --jdk graal-jdk-23 --backend $(BACKEND) --polyglot

ptx:
bin/compile --jdk jdk21 --backend ptx,opencl
bin/compile --jdk jdk23 --backend ptx,opencl

spirv:
bin/compile --jdk jdk21 --backend spirv,ptx,opencl
bin/compile --jdk jdk23 --backend spirv,ptx,opencl

# Variable passed for the preparation of the Xilinx FPGA emulated target device. The default device is `xilinx_u50_gen3x16_xdma_201920_3`.
# make xilinx_emulation FPGA_PLATFORM=<platform_name> NUM_OF_FPGA_DEVICES=<number_of_devices>
Expand All @@ -42,15 +42,15 @@ example:
tests:
rm -f tornado_unittests.log
tornado --devices
tornado-test --ea --verbose
tornado-test --ea -V -J"-Dtornado.device.memory=1MB" uk.ac.manchester.tornado.unittests.fails.HeapFail#test03
tornado-test --verbose
tornado-test -V -J"-Dtornado.device.memory=1MB" uk.ac.manchester.tornado.unittests.fails.HeapFail#test03
test-native.sh

fast-tests:
rm -f tornado_unittests.log
tornado --devices
tornado-test --ea --verbose --quickPass
tornado-test --ea -V -J"-Dtornado.device.memory=1MB" uk.ac.manchester.tornado.unittests.fails.HeapFail#test03
tornado-test --verbose --quickPass
tornado-test -V -J"-Dtornado.device.memory=1MB" uk.ac.manchester.tornado.unittests.fails.HeapFail#test03
test-native.sh

tests-spirv-levelzero:
Expand Down
6 changes: 3 additions & 3 deletions bin/compile
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ def pull_graal_jars_if_needed(graal_jars_status):

def should_handle_graal_jars(jdk):
java_version_output = check_java_version()
return jdk == "jdk21" and "GraalVM" not in java_version_output
return jdk == "jdk23" and "GraalVM" not in java_version_output


def maven_cleanup():
Expand Down Expand Up @@ -360,7 +360,7 @@ def post_installation_actions(backend_profiles, mvn_build_result, jdk, graal_jar
with open(backend_file_path, "w") as backend_file:
backend_file.write(f"tornado.backends={backend_profiles}")

# Place the Graal jars in the TornadoVM distribution only if the JDK 21 rule is used
# Place the Graal jars in the TornadoVM distribution only if the JDK 23 rule is used
if graal_jars_status:
graal_jars_src_dir = os.path.join(os.getcwd(), "graalJars")
graal_jars_dst_dir = os.path.join(f"{os.environ['TORNADO_SDK']}", "share", "java", "graalJars")
Expand All @@ -381,7 +381,7 @@ def parse_args():
"""
parser = argparse.ArgumentParser(description="Tool to compile TornadoVM")
parser.add_argument(
"--jdk", help="JDK version (e.g., jdk21, graal-jdk-21)"
"--jdk", help="JDK version (e.g., jdk23, graal-jdk-23)"
)
parser.add_argument("--backend", help="e.g., opencl,ptx,spirv")
parser.add_argument(
Expand Down
111 changes: 56 additions & 55 deletions bin/installer_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,15 @@
__APPLE__ = "darwin"
__WINDOWS__ = "windows"

__JDK21__ = "jdk21"
__GRAALVM21__ = "graal-jdk-21"
__MANDREL21__ = "mandrel-jdk-21"
__CORRETTO21__ = "corretto-jdk-21"
__MICROSOFT21__ = "microsoft-jdk-21"
__ZULU21__ = "zulu-jdk-21"
__TEMURIN21__ = "temurin-jdk-21"
__SAPMACHINE21__ = "sapmachine-jdk-21"
__JDK22__ = "jdk22"
__GRAALVM22__ = "graal-jdk-22"
__MANDREL22__ = "mandrel-jdk-22"
__CORRETTO22__ = "corretto-jdk-22"
__MICROSOFT22__ = "microsoft-jdk-22"
__ZULU22__ = "zulu-jdk-22"
__TEMURIN22__ = "temurin-jdk-22"
__SAPMACHINE22__ = "sapmachine-jdk-22"


## cmake
CMAKE = {
Expand Down Expand Up @@ -69,115 +70,115 @@

## JDK
JDK = {
__JDK21__: {
__JDK22__: {
__LINUX__: {
__X86_64__: "https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz",
__ARM__: "https://download.oracle.com/java/21/latest/jdk-21_linux-aarch64_bin.tar.gz",
__X86_64__: "https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz",
__ARM__: "https://download.oracle.com/java/22/latest/jdk-22_linux-aarch64_bin.tar.gz",
},
__APPLE__: {
__X86_64__: "https://download.oracle.com/java/21/latest/jdk-21_macos-x64_bin.tar.gz",
__ARM__: "https://download.oracle.com/java/21/latest/jdk-21_macos-aarch64_bin.tar.gz",
__X86_64__: "https://download.oracle.com/java/22/latest/jdk-22_macos-x64_bin.tar.gz",
__ARM__: "https://download.oracle.com/java/22/latest/jdk-22_macos-aarch64_bin.tar.gz",
},
__WINDOWS__: {
__X86_64__: "https://download.oracle.com/java/21/archive/jdk-21.0.1_windows-x64_bin.zip",
__X86_64__: "https://download.oracle.com/java/22/archive/jdk-22.0.2_windows-x64_bin.zip",
__ARM__: None,
},
},
__GRAALVM21__: {
__GRAALVM22__: {
__LINUX__: {
__X86_64__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-21.0.1/graalvm-community-jdk-21.0.1_linux-x64_bin.tar.gz",
__ARM__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-21.0.1/graalvm-community-jdk-21.0.1_linux-aarch64_bin.tar.gz",
__X86_64__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-22.0.2/graalvm-community-jdk-22.0.2_linux-x64_bin.tar.gz",
__ARM__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-22.0.2/graalvm-community-jdk-22.0.2_linux-aarch64_bin.tar.gz",
},
__APPLE__: {
__X86_64__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-21.0.1/graalvm-community-jdk-21.0.1_macos-x64_bin.tar.gz",
__ARM__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-21.0.1/graalvm-community-jdk-21.0.1_macos-aarch64_bin.tar.gz",
__X86_64__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-22.0.2/graalvm-community-jdk-22.0.2_macos-x64_bin.tar.gz",
__ARM__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-22.0.2/graalvm-community-jdk-22.0.2_macos-aarch64_bin.tar.gz",
},
__WINDOWS__: {
__X86_64__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-21.0.1/graalvm-community-jdk-21.0.1_windows-x64_bin.zip",
__X86_64__: "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-22.0.2/graalvm-community-jdk-22.0.2_windows-x64_bin.zip",
__ARM__: None,
},
},
__CORRETTO21__: {
__CORRETTO22__: {
__LINUX__: {
__X86_64__: "https://corretto.aws/downloads/latest/amazon-corretto-21-x64-linux-jdk.tar.gz",
__ARM__: "https://corretto.aws/downloads/latest/amazon-corretto-21-aarch64-linux-jdk.tar.gz",
__X86_64__: "https://corretto.aws/downloads/latest/amazon-corretto-22-x64-linux-jdk.tar.gz",
__ARM__: "https://corretto.aws/downloads/latest/amazon-corretto-22-aarch64-linux-jdk.tar.gz",
},
__APPLE__: {
__X86_64__: "https://corretto.aws/downloads/latest/amazon-corretto-21-x64-macos-jdk.tar.gz",
__ARM__: "https://corretto.aws/downloads/latest/amazon-corretto-21-aarch64-macos-jdk.tar.gz",
__X86_64__: "https://corretto.aws/downloads/latest/amazon-corretto-22-x64-macos-jdk.tar.gz",
__ARM__: "https://corretto.aws/downloads/latest/amazon-corretto-22-aarch64-macos-jdk.tar.gz",
},
__WINDOWS__: {
__X86_64__: None,
__X86_64__: "https://corretto.aws/downloads/latest/amazon-corretto-22-x64-windows-jdk.zip",
__ARM__: None,
},
},
__MANDREL21__: {
__MANDREL22__: {
__LINUX__: {
__X86_64__: "https://github.com/graalvm/mandrel/releases/download/mandrel-23.1.0.0-Final/mandrel-java21-linux-amd64-23.1.0.0-Final.tar.gz",
__ARM__: "https://github.com/graalvm/mandrel/releases/download/mandrel-23.1.0.0-Final/mandrel-java21-linux-aarch64-23.1.0.0-Final.tar.gz",
__X86_64__: "https://github.com/graalvm/mandrel/releases/download/mandrel-24.0.2.0-Final/mandrel-java22-linux-amd64-24.0.2.0-Final.tar.gz",
__ARM__: "https://github.com/graalvm/mandrel/releases/download/mandrel-24.0.2.0-Final/mandrel-java22-linux-aarch64-24.0.2.0-Final.tar.gz",
},
__APPLE__: {
__X86_64__: None,
__ARM__: None,
__ARM__: "https://github.com/graalvm/mandrel/releases/download/mandrel-24.0.2.0-Final/mandrel-java22-macos-aarch64-24.0.2.0-Final.tar.gz",
},
__WINDOWS__: {
__X86_64__: None,
__X86_64__: "https://github.com/graalvm/mandrel/releases/download/mandrel-24.0.2.0-Final/mandrel-java22-windows-amd64-24.0.2.0-Final.zip",
__ARM__: None,
},
},
__MICROSOFT21__: {
__MICROSOFT22__: {
__LINUX__: {
__X86_64__: "https://aka.ms/download-jdk/microsoft-jdk-21.0.3-linux-x64.tar.gz",
__ARM__: "https://aka.ms/download-jdk/microsoft-jdk-21.0.3-linux-aarch64.tar.gz",
__X86_64__: None,
__ARM__: None,
},
__APPLE__: {
__X86_64__: "https://aka.ms/download-jdk/microsoft-jdk-21.0.3-macos-x64.tar.gz",
__ARM__: "https://aka.ms/download-jdk/microsoft-jdk-21.0.3-macos-aarch64.tar.gz",
__X86_64__: None,
__ARM__: None,
},
__WINDOWS__: {
__X86_64__: "https://aka.ms/download-jdk/microsoft-jdk-21.0.3-windows-x64.zip",
__ARM__: "https://aka.ms/download-jdk/microsoft-jdk-21.0.3-windows-aarch64.zip",
__X86_64__: None,
__ARM__: None,
},
},
__ZULU21__: {
__ZULU22__: {
__LINUX__: {
__X86_64__: "https://cdn.azul.com/zulu/bin/zulu21.28.85-ca-jdk21.0.0-linux_x64.tar.gz",
__ARM__: "https://cdn.azul.com/zulu/bin/zulu21.28.85-ca-jdk21.0.0-linux_aarch64.tar.gz",
__X86_64__: "https://cdn.azul.com/zulu/bin/zulu22.32.15-ca-jdk22.0.2-linux_x64.tar.gz",
__ARM__: "https://cdn.azul.com/zulu/bin/zulu22.32.15-ca-jdk22.0.2-linux_aarch64.tar.gz",
},
__APPLE__: {
__X86_64__: "https://cdn.azul.com/zulu/bin/zulu21.28.85-ca-jdk21.0.0-macosx_x64.tar.gz",
__ARM__: "https://cdn.azul.com/zulu/bin/zulu21.28.85-ca-jdk21.0.0-macosx_aarch64.tar.gz",
__X86_64__: "https://cdn.azul.com/zulu/bin/zulu22.32.15-ca-jdk22.0.2-macosx_x64.tar.gz",
__ARM__: "https://cdn.azul.com/zulu/bin/zulu22.32.15-ca-jdk22.0.2-macosx_aarch64.tar.gz",
},
__WINDOWS__: {
__X86_64__: None,
__ARM__: None,
},
},
__TEMURIN21__: {
__TEMURIN22__: {
__LINUX__: {
__X86_64__: "https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.1%2B12/OpenJDK21U-jdk_x64_linux_hotspot_21.0.1_12.tar.gz",
__ARM__: "https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.1%2B12/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.1_12.tar.gz",
__X86_64__: "https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_linux_hotspot_22.0.1_8.tar.gz",
__ARM__: "https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.1_8.tar.gz",
},
__APPLE__: {
__X86_64__: "https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.1%2B12/OpenJDK21U-jdk_x64_mac_hotspot_21.0.1_12.tar.gz",
__ARM__: "https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.1%2B12/OpenJDK21U-jdk_aarch64_mac_hotspot_21.0.1_12.tar.gz",
__X86_64__: "https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_mac_hotspot_22.0.1_8.tar.gz",
__ARM__: "https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_aarch64_mac_hotspot_22.0.1_8.tar.gz",
},
__WINDOWS__: {
__X86_64__: "https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_windows_hotspot_21.0.3_9.zip",
__X86_64__: "https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_windows_hotspot_22.0.1_8.zip",
__ARM__: None,
},
},
__SAPMACHINE21__: {
__SAPMACHINE22__: {
__LINUX__: {
__X86_64__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-21.0.3/sapmachine-jdk-21.0.3_linux-x64_bin.tar.gz",
__ARM__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-21.0.3/sapmachine-jdk-21.0.3_linux-aarch64_bin.tar.gz",
__X86_64__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-22.0.2/sapmachine-jdk-22.0.2_linux-x64_bin.tar.gz",
__ARM__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-22.0.2/sapmachine-jdk-22.0.2_linux-aarch64_bin.tar.gz",
},
__APPLE__: {
__X86_64__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-21.0.3/sapmachine-jdk-21.0.3_macos-x64_bin.tar.gz",
__ARM__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-21.0.3/sapmachine-jdk-21.0.3_macos-aarch64_bin.tar.gz",
__X86_64__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-22.0.2/sapmachine-jdk-22.0.2_macos-x64_bin.tar.gz",
__ARM__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-22.0.2/sapmachine-jdk-22.0.2_macos-aarch64_bin.tar.gz",
},
__WINDOWS__: {
__X86_64__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-21.0.3/sapmachine-jdk-21.0.3_windows-x64_bin.zip",
__X86_64__: "https://github.com/SAP/SapMachine/releases/download/sapmachine-22.0.2/sapmachine-jdk-22.0.2_windows-x64_bin.zip",
__ARM__: None,
},
},
Expand Down
2 changes: 1 addition & 1 deletion bin/pull_graal_jars.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@

# Constants
TARGET_DIR = "graalJars"
VERSION = "23.1.0"
VERSION = "24.1.0"
BASE_URL = "https://repo1.maven.org/maven2/org/graalvm"
GRAAL_JARS = [
f"compiler/compiler/{VERSION}/compiler-{VERSION}.jar",
Expand Down
36 changes: 18 additions & 18 deletions bin/tornadovm-installer
Original file line number Diff line number Diff line change
Expand Up @@ -39,14 +39,14 @@ __DIRECTORY_DEPENDENCIES__ = os.path.join("etc", "dependencies")
__VERSION__ = "v1.0.7-dev"

__SUPPORTED_JDKS__ = [
config.__JDK21__,
config.__GRAALVM21__,
config.__CORRETTO21__,
config.__MICROSOFT21__,
config.__MANDREL21__,
config.__ZULU21__,
config.__TEMURIN21__,
config.__SAPMACHINE21__,
config.__JDK22__,
config.__GRAALVM22__,
config.__CORRETTO22__,
config.__MICROSOFT22__,
config.__MANDREL22__,
config.__ZULU22__,
config.__TEMURIN22__,
config.__SAPMACHINE22__,
]

__SUPPORTED_BACKENDS__ = ["opencl", "spirv", "ptx"]
Expand Down Expand Up @@ -343,10 +343,10 @@ class TornadoInstaller:

backend = self.composeBackendOption(args)

makeJDK = "jdk21"
makeJDK = "jdk22"
polyglotOption = ""
if (args.javaHome != None and "graal" in args.javaHome) or (args.jdk != None and "graal" in args.jdk):
makeJDK = "graal-jdk-21"
makeJDK = "graal-jdk-22"
polyglotOption = self.composePolyglotOption(args)

if args.javaHome != None:
Expand Down Expand Up @@ -375,14 +375,14 @@ def listSupportedJDKs():
"""
TornadoVM Installer - Select a JDK implementation to install with TornadoVM:

jdk21 : Install TornadoVM with OpenJDK 21 (Oracle OpenJDK)
graal-jdk-21 : Install TornadoVM with GraalVM and JDK 21 (GraalVM 23.1.0)
mandrel-jdk-21 : Install TornadoVM with Mandrel and JDK 21 (GraalVM 23.1.0)
corretto-jdk-21 : Install TornadoVM with Corretto JDK 21
microsoft-jdk-21 : Install TornadoVM with Microsoft JDK 21
zulu-jdk-21 : Install TornadoVM with Azul Zulu JDK 21
temurin-jdk-21 : Install TornadoVM with Eclipse Temurin JDK 21
sapmachine-jdk-21 : Install TornadoVM with SapMachine OpenJDK 21
jdk22 : Install TornadoVM with OpenJDK 22 (Oracle OpenJDK)
graal-jdk-22 : Install TornadoVM with GraalVM and JDK 22 (GraalVM 24.0.2)
mandrel-jdk-22 : Install TornadoVM with Mandrel and JDK 22 (GraalVM 24.0.2)
corretto-jdk-22 : Install TornadoVM with Corretto JDK 22
microsoft-jdk-22 : Install TornadoVM with Microsoft JDK 22
zulu-jdk-22 : Install TornadoVM with Azul Zulu JDK 22
temurin-jdk-22 : Install TornadoVM with Eclipse Temurin JDK 22
sapmachine-jdk-22 : Install TornadoVM with SapMachine OpenJDK 22

Usage:
$ ./bin/tornadovm-installer --jdk <JDK_VERSION> --backend <BACKEND>
Expand Down
Loading