You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The GraalVM project seems to be an ideal platform candidate for the RDF-Connect orchestrator.
GraalVM compiles your Java applications ahead of time into standalone binaries. These binaries are smaller, start up to 100x faster, provide peak performance with no warmup, and use less memory and CPU than applications running on a Java Virtual Machine (JVM).
Note that implementing a JVM runner using GraalVM would be inherently difficult due to the following design decisions.
GraalVM reduces the attack surface of your application. It excludes unused classes, methods, and fields from the application binary. It restricts reflection and other dynamic Java language features to build time only. It does not load any unknown code at run time.
Therefore, the JVM runner itself is required to use an alternative distribution, such as OpenJDK, which brings inherent additional overhead, as well as the need to implement another communication protocol such as gRPC.
While promising, lots of users note that GraalVM has either a relatively low upside, or actually degrades performance. The category of useful applications seem to be determined by what type of computations they perform. This, as well as a dependency on OpenJDK for the actual runner, requires thorough investigation and benchmarking.
enhancementNew feature or requestideaDiscussion of novel ideas, either good or bad.
1 participant
Heading
Bold
Italic
Quote
Code
Link
Numbered list
Unordered list
Task list
Attach files
Mention
Reference
Menu
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
The GraalVM project seems to be an ideal platform candidate for the RDF-Connect orchestrator.
Note that implementing a JVM runner using GraalVM would be inherently difficult due to the following design decisions.
Therefore, the JVM runner itself is required to use an alternative distribution, such as OpenJDK, which brings inherent additional overhead, as well as the need to implement another communication protocol such as gRPC.
While promising, lots of users note that GraalVM has either a relatively low upside, or actually degrades performance. The category of useful applications seem to be determined by what type of computations they perform. This, as well as a dependency on OpenJDK for the actual runner, requires thorough investigation and benchmarking.
Beta Was this translation helpful? Give feedback.
All reactions