I have run Daffodil using Graal VM for Java 21. It's slower than regular
Java 21. Not massively, but enough that I set it aside immediately. Don't
ask me the tests I ran tho. I can't recall. This was about a year ago.

I looked into Scala Native a short time back. I was unable to get it to
work for my little lbsfdump program mentioned below.

Selective linking with Graal VM i.e., the scala nativeImage plugin (not to
be confused with the scala-native plugin) was somewhat effective.

See: https://github.com/apache/daffodil-extra/tree/main/lsbfdump which is a
little dump utility I (and ChatGPT) created in scala 2.13 which uses
graal-vm and compiles to a fairly small executable: 12Mbytes or so.



On Tue, Jan 16, 2024 at 7:12 PM Adam Rosien <a...@rosien.net> wrote:

> I'm curious if a non-source-generated solution would work, specifically
> Scala Native and Graal? That is, there are non-JVM targets that can be
> built from the Scala source, and they can be extremely performant. The
> current hotness is the "billion row challenge" (
> https://github.com/gunnarmorling/1brc) where Graal-based solutions are
> hands-down the winners.
>
> On Thu, Jan 11, 2024 at 2:01 PM Interrante, John A (GE Aerospace, US) <
> john.interra...@ge.com> wrote:
>
> > Hi Mike,
> >
> > My view is that when the goal is to generate parsers and unparsers from
> > fixed format binary data DFDL schemas, compile them to native machine
> code,
> > and execute the machine code on CPUs, Daffodil should generate Rust.  We
> > would have preferred Rust when we started the C code generator work.
> Rust
> > is memory safe, type safe, etc. – but it was not available for our phase
> 1
> > target CPU.
> >
> > Creating a Rust backend makes sense, although we don’t think there is a
> > Rust to hardware path – at least none that we are aware of.  What did you
> > mean by the phrase “basis for generating VHDL or System Verilog?”
> >
> > John
> >
> > From: Mike Beckerle <mbecke...@apache.org>
> > Sent: Thursday, January 11, 2024 5:13 AM
> > To: John Interrante <jinterra...@apache.org>
> > Cc: dev@daffodil.apache.org
> > Subject: EXT: Rust vs. C backend
> >
> > John,
> >
> > What's your view of generating Rust vs. Generating C from DFDL?
> >
> > Those of us working in Cyberia, well, the edict has been issued that only
> > memory-safe languages/runtimes are allowed to reduce risk of
> cyber-attacks
> > via things like libc flaws.
> >
> > Seems to me that Rust is the lowest level language that would be
> acceptable
> >
> > I believe ultimately, the goal is to generate a useful software
> > implementation that does not compromise on performance, and to be a basis
> > for generating VHDL or System Verilog.
> >
> > I imagine you've given this some thought you can share.
> > Mike Beckerle
> > Apache Daffodil PMC | daffodil.apache.org<http://daffodil.apache.org/>
> > OGF DFDL Workgroup Co-Chair |
> www.ogf.org/ogf/doku.php/standards/dfdl/dfdl
> > <http://www.ogf.org/ogf/doku.php/standards/dfdl/dfdl>
> > Owl Cyber Defense | www.owlcyberdefense.com<
> > http://www.owlcyberdefense.com/>
> >
>

Reply via email to