Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.prolog > #13903 > unrolled thread
| Started by | Mild Shock <janburse@fastmail.fm> |
|---|---|
| First post | 2023-11-30 17:55 +0100 |
| Last post | 2024-01-20 11:04 +0100 |
| Articles | 5 — 1 participant |
Back to article view | Back to comp.lang.prolog
ANN: Dogelog Player 1.1.4 (Generational GC) Mild Shock <janburse@fastmail.fm> - 2023-11-30 17:55 +0100
Re: ANN: Dogelog Player 1.1.4 (Generational GC) Mild Shock <janburse@fastmail.fm> - 2023-12-18 22:55 +0100
Re: ANN: Dogelog Player 1.1.4 (Generational GC) Mild Shock <janburse@fastmail.fm> - 2024-01-08 12:12 +0100
Re: ANN: Dogelog Player 1.1.4 (Generational GC) Mild Shock <janburse@fastmail.fm> - 2024-01-20 00:58 +0100
Re: ANN: Dogelog Player 1.1.4 (Generational GC) Mild Shock <janburse@fastmail.fm> - 2024-01-20 11:04 +0100
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2023-11-30 17:55 +0100 |
| Subject | ANN: Dogelog Player 1.1.4 (Generational GC) |
| Message-ID | <ukaeqr$260j2$1@solani.org> |
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/
[toc] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2023-12-18 22:55 +0100 |
| Message-ID | <ulqf4g$3jk9$1@solani.org> |
| In reply to | #13903 |
Dogelog Player is a Prolog system for the JavaScript, Python and Java target platform. Inside the browser the library(markup) offers XSS injection safe markup generation. We extended the library(markup) towards a heap friendly XML streaming on all target platforms. Conceptually we were inspired by Java’s class FilterWriter. Text payload is automatically XML escaped and tags are written in that the underlying writer is directly called. As a test case we wrote a colorizer in 100% Prolog, so that we can phase out our old Java code. See also: XML Streaming for Dogelog Player https://twitter.com/dogelogch/status/1736864678616207768 XML Streaming for Dogelog Player https://www.facebook.com/groups/dogelog Mild Shock schrieb: > 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/
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2024-01-08 12:12 +0100 |
| Message-ID | <unglac$795a$1@solani.org> |
| In reply to | #13930 |
Dogelog Player is our recent Prolog system pet project. Concerning its Java version it has roots going back into the 1990’s. We provide a little reflection on some of the milestones in the past and the current state of the dynamic database compared to other Prolog systems. Starting with the synchronized Java Hashtable, we went to lockless Hashtable, to scrambled Hashtable and now to hybrid Hashtable. Benchmarking assertz/1 and retractall/1 on Fibonacci memoization shows that upcoming Dogelog Player for Java plays midfield. See also: 30 Years of Prolog Dynamic Database https://twitter.com/dogelogch/status/1744305938004140342 30 Years of Prolog Dynamic Database https://www.facebook.com/groups/dogelog Mild Shock schrieb: > > Dogelog Player is a Prolog system for the > JavaScript, Python and Java target platform. > Inside the browser the library(markup) offers > XSS injection safe markup generation. We extended > the library(markup) towards a heap friendly XML > streaming on all target platforms. > > Conceptually we were inspired by Java’s class > FilterWriter. Text payload is automatically XML > escaped and tags are written in that the underlying > writer is directly called. As a test case we wrote > a colorizer in 100% Prolog, so that we can phase > out our old Java code. > > See also: > > XML Streaming for Dogelog Player > https://twitter.com/dogelogch/status/1736864678616207768 > > XML Streaming for Dogelog Player > https://www.facebook.com/groups/dogelog > > Mild Shock schrieb: >> 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/ >
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2024-01-20 00:58 +0100 |
| Message-ID | <uof2ah$m4av$1@solani.org> |
| In reply to | #13946 |
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
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2024-01-20 11:04 +0100 |
| Message-ID | <uog5rn$ml7a$2@solani.org> |
| In reply to | #13948 |
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. See also: Streaming HTTP for Dogelog Player [corrected] https://twitter.com/dogelogch/status/1748646455999332354 Streaming HTTP for Dogelog Player [corrected] https://www.facebook.com/groups/dogelog Mild Shock schrieb: > > 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
[toc] | [prev] | [standalone]
Back to top | Article view | comp.lang.prolog
csiph-web