Hi,
We recently implemented a parallel -C-WAM
on a GPU backend and could demonstrate an
estimated 11.4 Giga Lips. In this post we
report a further experiment, this time
presenting a parallel -C-WAM on a CPU backend,
that can lift specialized Prolog, currently
to 1.7 Giga Lips performance.
Having an excess number of threads is a
bad idea. What if we do context switching
on our own? With this approach we could
bring down the execution time of 128 Hack
VMs by 33%. We estimate for the test which
had 11.4 GLips on the GPU, that we reach
1.7 GLips on the CPU.
Bye
See also:
Parallel -C-WAM: 1.7 Giga Lips on a CPU
https://medium.com/2989/8a984e75af44
Mild Shock schrieb:
Hi,
At the end of 2025 we acquired a couple of AI
Laptops , that were still cheap, since RAM prices
had not yet rocketed. The intend was to tap into
the Copilot+ certified hardware, and shave off
some of the TOPS to do Prolog inferencing. Amazingly
our -C-WAM can churn 11.4 GIGA LIPS.
GPUs have evolved form lock-step to independent
thread scheduling. This made it possible to port
the Hack VM variant, that forms the basis for
our -C-WAM, to WebGPU computer shaders. Using
NUM_SHADERS = 4096 we could produce 11.4 Giga Lips
on a Ryzen AI 7 350 w/ Radeon 860M.
Bye
See also:
Dogelog Player: 11.4 Giga Lips with a Budget Laptop
https://medium.com/2989/899b0d5c027b
Mild Shock schrieb:
Dear All,
We are happy to announce a new edition of
the Dogelog Player:
- Unicode 17.0:
We lifted the Dogelog Player for Java build
to JDK 26 and regenerated our Unicode database
for category and number value for the JavaScript
and Python build. The supported version is now
17.0 and we managed somehow to reduce the footprint
from 16848 words to 15000 words.
- Emulating -C-WAM:
The new library(edge/brainfog) permits the
execution of certain Prolog goals in a -C-WAM
backend. The concept of a -C-WAM embraces a
fusion of a processs (-C) calculus and a Warren
Abstract Machine (WAM). Optimized for speed the
WAM is very primitive and currently only supports
the rCy$SEQrCO/2 control construct, plus rudimentary
32-bit integer arithmetic and between/3.
- Executing -C-WAM:
Both emulate/1 and execute/1 compile into an
identical instruction stream. In the virtual
machine the instructions are 32-bit inspired by
combinations of the 16-bit A and C instructions
from the original Hack. The resulting -C-WAM
currently doesnrCOt support a stack, a trail
or choice points but can nevertheless
do backtracking.
Have Fun!
Jan Burse, July 07, 2026, https://www.herbrand.ai/
Hi,--- Synchronet 3.22a-Linux NewsLink 1.2
We recently implemented a parallel -C-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 -C-WAM: JavaScript Workers as CPU Backend https://medium.com/2989/5ef903e5e785
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 74 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 54:48:10 |
| Calls: | 1,101 |
| Calls today: | 1 |
| Files: | 1,339 |
| Messages: | 276,415 |