Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.prolog > #15740
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Newsgroups | comp.lang.prolog |
| Subject | Parallel π-WAM: An Interleaved Synchronous Emulator (Re: Parallel π-WAM: JavaScript Workers as CPU Backend) |
| Date | 2026-07-25 03:51 +0200 |
| Message-ID | <11414rn$ccl1$1@solani.org> (permalink) |
| References | <112jcsp$5860$1@solani.org> <112lug9$75rr$1@solani.org> <1138bah$58mb$1@solani.org> <113ljl9$4pqt$1@solani.org> |
Hi, The π-WAM an alternative Prolog VM, for the Dogelog Player, got one after the other, a GPU backend prototype, and then productive CPU backends. So in retrospect we felt the need to not only emulate in 100% Prolog the initial single threaded π-WAM, but also its multi threaded successors. One central idea is to partition the state into slices, that belong to each logical thread. Since we adress slices by an offset, we can also use these offsets for a parallel simulation. Because of varying warp and tilt parameters the output usually differs from the CPU backends. Bye See also: Parallel π-WAM: An Interleaved Synchronous Emulator https://medium.com/2989/0196089e143a Mild Shock schrieb: > Hi, > > We recently implemented a parallel π-WAM on > a CPU backend and could demonstrate an > estimated 1.7 Giga Lips. This CPU backend > was written in Java, uses Java platform > threads and is meanwhile part of library(edge/ > brainfog). In the following we report first > porting steps to JavaScript. > > With the adoption of JavaScript workers we > embrace preemptive multithreading, even > for a Web Prolog, and depart from Dogelog > Players cooperative multitasking. The design > also adopts SharedArrayBuffer to replicate > the Java heap, that is shared among > Java platform threads. > > Bye > > See also: > > Parallel π-WAM: JavaScript Workers as CPU Backend > https://medium.com/2989/5ef903e5e785
Back to comp.lang.prolog | Previous | Next — Previous in thread | Find similar | Unroll thread
ANN: Dogelog Player 2.2.3 (Introducing π-WAM) Mild Shock <janburse@fastmail.fm> - 2026-07-07 19:26 +0200
Dogelog Player: 11.4 Giga Lips with a Budget Laptop (Re: ANN: Dogelog Player 2.2.3 (Introducing π-WAM)) Mild Shock <janburse@fastmail.fm> - 2026-07-08 18:39 +0200
Parallel π-WAM: 1.7 Giga Lips on a CPU (Was: Dogelog Player: 11.4 Giga Lips with a Budget Laptop) Mild Shock <janburse@fastmail.fm> - 2026-07-15 18:08 +0200
Parallel π-WAM: JavaScript Workers as CPU Backend (Was: Parallel π-WAM: 1.7 Giga Lips on a CPU) Mild Shock <janburse@fastmail.fm> - 2026-07-20 18:50 +0200
Parallel π-WAM: An Interleaved Synchronous Emulator (Re: Parallel π-WAM: JavaScript Workers as CPU Backend) Mild Shock <janburse@fastmail.fm> - 2026-07-25 03:51 +0200
csiph-web