jonasanso / sdir

Scan directories using GraalVM

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sdir

scan directory example app to learn about graalVM

run it using SBT

sbt "run sync $PWD"
...
Took 312 ms. to process 4020 items. 12 files/ms

run it using a Jar

sbt assembly
time java -jar target/scala-2.13/sdir.jar sync $PWD
...
Took 409 ms. to process 4024 items. 9 files/ms
java -jar target/scala-2.13/sdir.jar sync $PWD  1.38s user 0.19s system 207% cpu 0.754 total

run it using graal in a VM

Make sure you are running docker

sbt graalvm-native-image:packageBin
time docker run -it -v $(pwd)/target:/target oracle/graalvm-ce:20.0.0-java11 /target/graalvm-native-image/sdir sync /target
...
Took 4252 ms. to process 3690 items. 0 files/ms
docker run -it -v $(pwd)/target:/target oracle/graalvm-ce:20.0.0-java11  sync  0.05s user 0.02s system 1% cpu 5.015 total
...

run it using graal installed locally

Make sure you have native-image is in your PATH, follow instructions https://blog.softwaremill.com/graalvm-installation-and-setup-on-macos-294dd1d23ca2

Comment line graalVMNativeImageGraalVersion := Some("20.0.0-java11") in build.sbt

sbt graalvm-native-image:packageBin
time target/graalvm-native-image/sdir sync $PWD
...
Took 132 ms. to process 4024 items. 30 files/ms 
target/graalvm-native-image/sdir sync $PWD  0.08s user 0.06s system 96% cpu 0.143 total

About

Scan directories using GraalVM


Languages

Language:Scala 100.0%