Vector APIをWindowsで試そうと思ったのだけど、やっぱりビルドでひっかかった。
ということで、対処法
ml64がみつからないというエラーが出るので、アセンブラとしてml64.exeを設定する。
export AS=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/ml64.exe
Vector APIはvectorIntrinsicsというブランチで開発されているので、ブランチの変更も必要です。
また、C/C++コンパイラも指定しておく必要があります。
なので、全体としてはこんな感じになります。
$ git clone https://github.com/openjdk/panama $ git checkout vectorIntrinsics $ export CC=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe $ export CXX=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe $ export AS=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/ml64.exe $ bash configure --with-boot-jdk=/mnt/c/Users/naoki/java/jdk/jdk-13.0.1 --disable-hotspot-gtest $ make images
試しにこんなサンプルを動かしてみます。
gist.github.com
こんな感じ
C:\Users\naoki\java\jdk\source\vector>bin\java --add-modules jdk.incubator.vector Main.java WARNING: Using incubator modules: jdk.incubator.vector 警告:実験的なモジュールを使用しています: jdk.incubator.vector 警告1個 55617100 60240500
JITが優秀すぎてAVX256ではおいつけてない感じ・・・