Releases: ganadist/graalvm-ce-builds
23.1.0
Description
These binaries contain workarounds for
Build performance
kotlin_build_performance
Tested with https://github.com/ganadist/kotlin_build_performance/tree/af2dc841
rm -rf kotlin/bulid
pkill java
./gradlew :kotlin:assemble --no-build-cache --no-configuration-cache --no-daemon
OpenJDK 17 | OpenJDK 21 | GraalVM 22.2 JDK17 | GraalVM 23.0 JDK17 (here) | GraalVM 23.1 JDK21 (here) | |
---|---|---|---|---|---|
:kotlin:assemble |
101s | 100s | 88s | 90s | 90s |
Androidx
OpenJDK 17 | GraalVM 23.0 JDK17 (here) | |
---|---|---|
assembleDebug |
10m 8s | 9m 43s |
testDebugUnitTest |
6m 49s | 6m 24s |
OSX
Recent GraalVM has some performance issue on Apple Silicon.
Please see oracle/graal#6600
build
build from https://gist.github.com/ganadist/3e38cfe88fe1346c46ca1ee964e45dd9
GraalVM 23.0.1 JDK17
Graal : oracle/graal@0d67c73
labs-openjdk-17 : https://github.com/graalvm/labs-openjdk-17/releases/tag/jvmci-23.0-b15
GraalVM 23.1 JDK21
Graal : oracle/graal@e0856c9
labs-openjdk-21 : https://github.com/graalvm/labs-openjdk-21/releases/tag/jvmci-23.1-b15
- Note : kotlin compiler 1.9.10 or below is not compatible with Java 21, yet.
GraalVM CE 22.1-dev JDK17 for Apple Silicon
This binary was created from oracle/graal@19dbed066
How to build
#!/bin/bash
# vim: ts=2 sw=2 sts=2 et ai
set -e
BREW_OPENJDK17=/opt/homebrew/Cellar/openjdk/17.0.2/libexec/openjdk.jdk/Contents/Home/
DIRNAME=$(dirname $0)
DIRNAME=$(cd $DIRNAME;pwd)
export MX_HOME=${DIRNAME}/mx
export MX_PYTHON=python3
export PATH=$MX_HOME:$PATH
fetch() {
for DIR in mx graal labs-openjdk-17
do
(cd "$DIRNAME"/"$DIR" && git fetch origin && git checkout origin/master && git clean -ffdx)
done
}
build_jdk() {
local SRC_DIR=$1
local JDK_VERSION=$2
local BOOT_JDK=$3
pushd ${DIRNAME}/${SRC_DIR}
JVMCI_VERSION=$(git log --decorate | grep -E 'tag: jvmci-\d+\.\d+-b\d+' | sed 's/.*(\(tag: .*\))/\1/g' | tr ',' '\n' | grep 'tag:' | sed 's/.*tag: \(jvmci-[^,)]*\).*/\1/g' | sort -nr | head -1)
bash configure \
--with-conf-name=macos-aarch64 \
--openjdk-target=aarch64-apple-darwin \
--with-version-opt="$JVMCI_VERSION" \
--with-version-pre= \
'--with-vendor-name=GraalVM Community' \
--with-vendor-url=https://www.graalvm.org/ \
--with-vendor-bug-url=https://github.com/oracle/graal/issues \
--with-vendor-vm-bug-url=https://github.com/oracle/graal/issues \
--with-boot-jdk="${BOOT_JDK}" \
--with-default-make-target="product-bundles" \
--with-zlib=system
make CONF_NAME=macos-aarch64
export JAVA_HOME=$PWD/build/macos-aarch64/images/jdk-bundle/jdk-${JDK_VERSION}.jdk/Contents/Home
popd
}
build_graal() {
pushd ${DIRNAME}/graal
mx \
--primary-suite-path $PWD/compiler \
--J @"-Xmx2g" \
--java-home=$JAVA_HOME \
gate \
--strict-mode \
--tags bootstraplite,build
popd
}
fetch
build_jdk labs-openjdk-17 \
17.0.3 \
/opt/homebrew/Cellar/openjdk/17.0.2/libexec/openjdk.jdk/Contents/Home/
build_graal
OSX 12.2 Installation
$ curl -LJO https://github.com/ganadist/graalvm-ce-builds/releases/download/vm-22.0.0.2/graalvm-java17-22.1.0-dev-osx-aarch64.tar.gz
$ sudo tar xf graalvm-java17-22.1.0-dev-osx-aarch64.tar.gz \
-C /Library/Java/JavaVirtualMachines
$ sudo xattr -r -d com.apple.quarantine \
/Library/Java/JavaVirtualMachines/graalvm-java17-22.1.0-dev
$ /Library/Java/JavaVirtualMachines/graalvm-java17-22.1.0-dev/Contents/Home/bin/java -version
openjdk version "17.0.3" 2022-04-19
OpenJDK Runtime Environment GraalVM 22.1.0-dev (build 17.0.3+0-jvmci-22.1-b01)
OpenJDK 64-Bit Server VM GraalVM 22.1.0-dev (build 17.0.3+0-jvmci-22.1-b01, mixed mode, sharing)
Jetbrains Runtime with GraalVM for Android Studio 4.0
DO NOT USE THIS Release for Android Studio 4.2
Description
- Jetbrains Runtime is Java Runtime for IntelliJ platform.
- This includes many improvements for modern desktop such as
- Subpixel Anti-Aliasing
- HiDPI Supports
- Font Ligatures
- Also this includes incremental build support for Room compiler
- Most improvements are on
Java APIs implementation
.
- This includes many improvements for modern desktop such as
- GraalVM can run java program faster than OpenJDK about 10%-20%
- Java program means not only Android Studio, but also including Gradle, Kotlin compiler, Java compiler, and etc...
- This improvement depends on
Java VM
, not Java API implementation.
- This is a combination of Jetbrains Runtime and GraalVM, and brings improvements of both sides.
OSX 10.15(Catalina) installation
$ curl -LJO https://github.com/ganadist/graalvm-ce-builds/releases/download/vm-20.1.0/graalvm-ce-java8-darwin-amd64-20.1.0-jetbrains.tar.gz
$ sudo tar xf graalvm-ce-java8-darwin-amd64-20.1.0-jetbrains.tar.gz \
-C /Library/Java/JavaVirtualMachines
$ sudo xattr -r -d com.apple.quarantine \
/Library/Java/JavaVirtualMachines/graalvm-ce-java8-20.1.0-jetbrains
$ echo -n /Library/Java/JavaVirtualMachines/graalvm-ce-java8-20.1.0-jetbrains \
> ~/Library/Preferences/AndroidStudio4.0/studio.jdk
And (re)start your Android Studio.
Restore JDK for Android Studio
If you want to restore your Android Studio JDK, Just run following command
$ rm -f ~/Library/Preferences/AndroidStudio4.0/studio.jdk
And (re)start your Android Studio.
Linux installation (For CentOS 7.6)
$ curl -LJO https://github.com/ganadist/graalvm-ce-builds/releases/download/vm-20.1.0/graalvm-ce-java8-linux-centos76-amd64-20.1.0-jetbrains.tar.gz
$ sudo mkdir -p /usr/lib/jvm
$ sudo tar xf graalvm-ce-java8-linux-centos76-amd64-20.1.0-jetbrains.tar.gz -C /usr/lib/jvm
$ echo -n /usr/lib/jvm/java-8-graalvm-jetbrains > ~/.AndroidStudio4.0/config/studio.jdk
And (re)start your Android Studio.
After Android Studio is started up
You can see About Android Studio
splash window whether GraalVM is applied on Android Studio.
Setup JVM for Gradle wrapper on Android Studio
And If you want to apply this on Gradle Build System, please select
File
-> Other Settings
-> Default Project Structures...
-> JDK location
And select directory location which you installed this JDK
If you have interest about this,
Please go AOSP issue tracker, and give star to appeal to Google. ;D
These binaries are built by
$ git clone https://github.com/graalvm/graal-jvmci-8
$ git clone https://github.com/graalvm/mandrel -b 20.1
$ git clone https://github.com/graalvm/mx
$ export JDK8_UPDATE_VERSION="242"
$ export JDK8_UPDATE_VERSION_SUFFIX=""
$ export JAVA_HOME=~/tools/android-studio-4.0/jre
$ export MX_HOME=$PWD/mx
$ export MX_PYTHON=python3
$ export PATH=$MX_HOME:$PATH
$ cd graal-jvmci-8
$ export JVMCI_VERSION="jvmci-20.1-b02"
$ git checkout $JVMCI_VERSION
# Most improvements of IntelliJ platform can be unlocked by JVM vendor name
$ sed -i 's/GraalVM Community/JetBrains s.r.o/g' src/share/vm/runtime/vm_version.cpp
$ mx --java-home $JAVA_HOME build
$ export JAVA_HOME=$PWD/openjdk1.8.0_242-release/linux-amd64/product
$ cd ../mandrel
$ mx --primary-suite-path $PWD/compiler --J @"-Xmx2g" --java-home=$JAVA_HOME gate --strict-mode --tags bootstraplite,build
$ sdk/mxbuild/linux-amd64/GRAALVM_3398AB5293_JAVA8/graalvm-3398ab5293-java8-20.1.0/bin/java -version
openjdk version "1.8.0_242-release"
OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
OpenJDK 64-Bit Server VM GraalVM 20.1.0 (build 25.242-b3-jvmci-20.1-b02, mixed mode)
23.1.2
Description
These binaries contain workarounds for
OSX
Recent GraalVM has some performance issue on Apple Silicon.
Please see oracle/graal#6600
build
build from https://gist.github.com/ganadist/3e38cfe88fe1346c46ca1ee964e45dd9
GraalVM 23.1.2 JDK21
Graal : oracle/graal@ae4900070
labs-openjdk-21 : https://github.com/graalvm/labs-openjdk-21/releases/tag/jvmci-23.1-b30
23.0.2
Description
These binaries contain workarounds for
Build performance
Please see https://github.com/ganadist/graalvm-ce-builds/releases/tag/graal-23.1.0
OSX
Recent GraalVM has some performance issue on Apple Silicon.
Please see oracle/graal#6600
build
build from https://gist.github.com/ganadist/3e38cfe88fe1346c46ca1ee964e45dd9
GraalVM 23.0.2 JDK17
Graal : https://github.com/oracle/graal/tree/jdk-17.0.9
labs-openjdk-17 : https://github.com/graalvm/labs-openjdk-17/releases/tag/jvmci-23.0-b22
GraalVM 23.1.1 JDK21
Graal : https://github.com/oracle/graal/tree/jdk-21.0.1
labs-openjdk-21 : https://github.com/graalvm/labs-openjdk-21/releases/tag/jvmci-23.1-b22
- Note : Use kotlin compiler 1.9.20 or higher version.
- Note: AIDL compiler raise warning with Java 21