Dear All,
We are happy to announce a new
edition of the Dogelog player:
- Multi Measurement:
The library(runner) was enhanced to be
able to perform multiple measurements when
used as a benchmark harness. This feature
can for example be used to measure execution
time and garbage collection time, provided
the Prolog system offers such a statistics/2 key.
- JDK 21 Bytecode:
Like we were phasing out formerly Jekejeke
Prolog we are currently also phasing out
JDK 8 Bytecode. There is a grace period
but the transition to JDK 21 Bytecode is
already seen in the new artefacts index9.zip
and dogelog9.zip for the Dogelog Player
on the Java platform.
- Generational GC:
The garbage collector of Dogelog Player
was enhanced to have a more refined triggering
and to also use a faster generational variant
when appropriate. This was implemented for
all target platforms and we see performance
gains Java 42%, JavaScript 51% and Python 61%.
Have Fun!
Jan Burse, 30.11.2023, http://www.xlog.ch/
Dogelog Player is a 100% Prolog written Prolog
interpreter. We started seeding the implementation
of a common HTTP Server library for all targets
JavaScript, Python and Java. Lets take a snapshot of
the current API and report some performance experience.
We could complete a minimal library(spin) and
demonstrate the correct UTF-8 HTTP streaming of a
text stream. We then measured the local delivery of
a hobbit.txt file of 50'000 bytes, we also run
against SWI-Prolog. We were positively surprised by
the performance of JavaScript, Java and SWI-Prolog.
Only the Python performance was a little disappointing.
See also:
Streaming HTTP for Dogelog Player https://twitter.com/dogelogch/status/1748477496364818517
Streaming HTTP for Dogelog Player
https://www.facebook.com/groups/dogelog
Our initial testing with CPython was consistently
very disappointing, so that we switched to PyPy,
the alternative JIT-ing implementation of Python.
With running Doglog Player via PyPy it becomes
comparable in performance to the JavaScript target,
both targets now only lack by ca 50% behind the
Java target and SWI-Prolog.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 457 |
Nodes: | 16 (2 / 14) |
Uptime: | 131:07:39 |
Calls: | 9,337 |
Calls today: | 8 |
Files: | 13,534 |
Messages: | 6,082,280 |
Posted today: | 1 |