Hi,
Obviously to generate AI Surprises,
you have to stand on the shoulder of
giants. Otherwise you will not discover
surprises, right? Only mediocre deja vues.
For this purpose, and maybe otherwise
related, in a discussion concerning the future
of the library, Marvin Minsky and Edward A.
Feigenbaum endorsed the idea for books
to rCytalk to each otherrCO:
LET DOCUMENTS TALK TO EACH OTHER
Z. CHEN - 1993
doi.org/10.1108/eb026910
Now we have:
THE MACHINES ARE STUDYING
THE HUMANS ARE SCROLLING
https://9gag.com/gag/a9yQ16o
Bye
P.S.: But who was Marvin Minsky, and would it
be important to use symbolic AI?
The Perceptron Controversy
Yuxi Liu - 2024
https://yuxi.ml/essays/perceptron-controversy
Mild Shock schrieb:
Hi,
How it started:
Filming a vitamin B12 photoreceptor in action
https://www.psi.ch/de/news/science-features/filming-a-vitamin-b12-photoreceptor-in-action
How its going:
Elon Musk's potential FEL route could challenge EUV lithography
https://www.kucoin.com/news/flash/elon-musk-s-potential-fel-route-could-challenge-euv-lithography
Who will win the Nano Atom mover race,
will the USA OutChip its competitor China
and its supplier Asia in the next years?
Bye
Mild Shock schrieb:
Hi,
Recently there was a paper somebody mentioning
a flit doing a ACK or NACK, to express
backpressure inside a Network on a Chip.
But what is a flit? It seems multiple
flits can be used to create the message
passing in one directiob before the
ACK or NACK in the other direction?
"The growing need for performance from
computing systems drove the industry into
the multi-core and many-core arena. In this
setup, the execution of a kernel (a program)
is split across multiple processors and the
computation happens in parallel
Flits represent logical units of information,
while phits represent the physical domain,
that is, phits represent the number of bits
that can be transferred in parallel in a
single cycle. Consider the Cray T3D. It has
an interconnection network which uses
flit level message flow control wherein each
flit is composed of eight 16-bit phits. That
means its flit size is 128bits and phit size
is 16bits. Also consider the IBM SP2 switch.
It also uses the flit level message flow
control, but its flit size is equal to its
phit size, which is set to 8 bits."
https://en.wikipedia.org/wiki/Flit_(computer_networking)#Example
Well my idea how this is realized in silicon
is rather foggy, I mean even the Hack project
from Nand 2 Tetris, does not show some gate level
schemes for flits and phits.
Could be an interesting extension. But somehow
the image of flits and phits inspired my channel
objects here below. But I am afraid they are fire
and forget, no ACK and NACK:
-C-WAM Contest: 1 Million Packets with Prolog
https://medium.com/2989/ec3e91551773
Its amazing that a max_size(1) buffer
can beat an unbounded buffer!
LoL
Bye
Mild Shock schrieb:
Hi,
How it started, NVIDIA being cool:
NCCL provides routines such as all-gather,
all-reduce, broadcast, reduce, reduce-scatter,
and point-to-point send and receive. These
routines are optimized to achieve high
bandwidth and low latency over PCIe,
NVIDIA NVLinkrao, and other high-speed
interconnects within a node and over
NVIDIA networking across nodes.
https://developer.nvidia.com/nccl
How its going, vLLM trying to be cool:
[RFC]: Native Weight Syncing APIs
However, there are no standardized methods for
performing online weight syncing. Open source projects
like SkyRL, VeRL, and TRL need to include their
own implementations of the weight syncing
infrastructure, leading to added complexity
for developers seeking to adopt vLLM as their
inference server for post-training workloads.
https://github.com/vllm-project/vllm/issues/31848
How much Workers are enough? I guess it depends
on I/O parallelism, CPU Memory parallelism, CPU
Processing parallelism, and now also
GPU Memory parallelism and GPU Processing
parallelism, and last but least you might have
a couple DMAs sitting here and there,
or even invoking a sort of RDMA. Quite amazing!
Bye
Mild Shock schrieb:
Hi,
Well there are two viewpoint, the "client"
of the GPU, which is the CPU, and the "server"
of the GPU, which is the command processor
queue of the GPU device. So basically as
a CPU client I can write the memory area,
that is later mapped to my GPU code storage.
And this way have a compiler, even written
in Prolog, that compiles pi-WAM to my Hack VM,
that can then be then deployed to GPU.
You could also try the same with a Tiny
LISP VM. And a grown up LISP to act as
the compiler. Would be a similar exercise.
Have Fun!
Bye
Mild Shock schrieb:
Hi,
I've also added comp.theory so Mild Shock can comment.
that has different
*-a sizeof ( void * ), and
*-a sizeof ( void (*)( void ) ),
Could indicate a data RAM and code ROM model.
Which has then the advantage of:
Modern operating systems like Windows 11
enforce strict Data Execution Prevention (DEP)
(or NX/XD bit security features) to prevent
malicious programs from injecting and executing
code inside data-only memory regions.
https://root-nation.com/en/soft-en/lifehacks/en-dep-windows-all-about/ >>>>>>
I adopted data RAM and code ROM model for
pi-WAM from Hack, which has the same separation:
Slide 58, Hack Computer
https://drive.google.com/file/d/1Z_fxYmmRNXTkAzmZ6YMoX9NXZIRVCKiw/view >>>>>>
But my motivation was not Johnny Depp prevention.
Rather the caching of GPUs. Because WGSL
allows storage annotations read_write and
read. I use read_write for the data RAM
of my Hack VM variant, and read for the
code ROM of my Hack VM variant. You can
see that here, its open source:
@group(0) @binding(0) var<storage, read> code: array<i32>;
@group(0) @binding(1) var<storage, read_write> state: array<i32>;
11.4 Giga Lips with a Budget Laptop
https://github.com/Jean-Luc-Picard-2021/gigabudget
Hope this Helps!
Bye
Johann 'Myrkraverk' Oskarsson schrieb:
On 03/08/2026 6:28 PM, David Brown wrote:
On 03/08/2026 11:41, Richard Harnden wrote:
On 03/08/2026 09:16, David Brown wrote:
On most targets, function pointers are the same size as void* >>>>>>>>>> pointers. But there are exceptions, with some small
microcontrollers and DSPs having different kinds of pointers >>>>>>>>>> with different sizes, depending on the memory space involved. >>>>>>>>>> I have yet to see a situation where there was any reason for >>>>>>>>>> storing a function address in a "void*" rather than a more >>>>>>>>>> appropriate typedef, such as :
-a-a-a-a-atypedef void (*FVoid)(void);
dlsym requires that pointer-to-function is compatible with a void* >>>>>>>>>
As I say, I have yet to see a situation where using void* for >>>>>>>> function pointers was more appropriate than using a function
pointer type.-a If the OS system calls or standard OS libraries >>>>>>>> makes it a requirement that function pointers are converted to >>>>>>>> or from void* for some calls, then of course you need to follow >>>>>>>> those requirements - it's the people who designed the interfaces >>>>>>>> that made questionable design choices.
Nope, you're wrong.-a You're dead wrong.-a The world isn't built on C, >>>>>>> even though here in comp.lang.c we like to pretend it is.
Several language environments allow function generation on the fly, >>>>>>> these functions need to be garbage collected.-a Common Lisp is an >>>>>>> example, therefore comp.lang.lisp is added to this discussion.
I've also added comp.theory so Mild Shock can comment.
You will have to go out of your way to make a computer architecture >>>>>>> incompatible with garbage collected and heap allocated binary code, >>>>>>> something I've been told SBCL does internally [1] to create an
archi-
tecture that has different
*-a sizeof ( void * ), and
*-a sizeof ( void (*)( void ) ),
and when you do that, I'll just claim you're making a /malicious >>>>>>> computer architecture/ and refuse to use it.
[1] I've not looked at the code, but told the garbage collector can >>>>>>> and will at least move the code around, if not collect it.
Hi,
Sometimes I think the Loderunner Enemy AI
was way ahead of its time:
Lode Runner - Broderbund - 1983 - Apple II https://www.youtube.com/watch?v=pJZJepU8law
Meanwhile SWI-Prolog Prologers even don't know
whether a Prolog text is CNF or DNF:
Sets of rules as conjunctions and/or disjunctions https://swi-prolog.discourse.group/t/sets-of-rules-as-conjunctions-and-or-disjunctions/9779
No Wonder that the EyeProlog "why" feature produces
nonsense. Even a Flea circus is less crazy.
Bye
P.S.: If only there would exist something like
universities where one can take a basic course in
FOL, and then a world wide web, where one can
lookup clark equational theory, clark completion,
curry howard correspondence, etc.. etc..
Mild Shock schrieb:
Hi,
Obviously to generate AI Surprises,
you have to stand on the shoulder of
giants. Otherwise you will not discover
surprises, right? Only mediocre deja vues.
For this purpose, and maybe otherwise
related, in a discussion concerning the future
of the library, Marvin Minsky and Edward A.
Feigenbaum endorsed the idea for books
to rCytalk to each otherrCO:
LET DOCUMENTS TALK TO EACH OTHER
Z. CHEN - 1993
doi.org/10.1108/eb026910
Now we have:
THE MACHINES ARE STUDYING
THE HUMANS ARE SCROLLING
https://9gag.com/gag/a9yQ16o
Bye
P.S.: But who was Marvin Minsky, and would it
be important to use symbolic AI?
The Perceptron Controversy
Yuxi Liu - 2024
https://yuxi.ml/essays/perceptron-controversy
Mild Shock schrieb:
Hi,
How it started:
Filming a vitamin B12 photoreceptor in action
https://www.psi.ch/de/news/science-features/filming-a-vitamin-b12-photoreceptor-in-action
How its going:
Elon Musk's potential FEL route could challenge EUV lithography
https://www.kucoin.com/news/flash/elon-musk-s-potential-fel-route-could-challenge-euv-lithography
Who will win the Nano Atom mover race,
will the USA OutChip its competitor China
and its supplier Asia in the next years?
Bye
Mild Shock schrieb:
Hi,
Recently there was a paper somebody mentioning
a flit doing a ACK or NACK, to express
backpressure inside a Network on a Chip.
But what is a flit? It seems multiple
flits can be used to create the message
passing in one directiob before the
ACK or NACK in the other direction?
"The growing need for performance from
computing systems drove the industry into
the multi-core and many-core arena. In this
setup, the execution of a kernel (a program)
is split across multiple processors and the
computation happens in parallel
Flits represent logical units of information,
while phits represent the physical domain,
that is, phits represent the number of bits
that can be transferred in parallel in a
single cycle. Consider the Cray T3D. It has
an interconnection network which uses
flit level message flow control wherein each
flit is composed of eight 16-bit phits. That
means its flit size is 128bits and phit size
is 16bits. Also consider the IBM SP2 switch.
It also uses the flit level message flow
control, but its flit size is equal to its
phit size, which is set to 8 bits."
https://en.wikipedia.org/wiki/Flit_(computer_networking)#Example
Well my idea how this is realized in silicon
is rather foggy, I mean even the Hack project
from Nand 2 Tetris, does not show some gate level
schemes for flits and phits.
Could be an interesting extension. But somehow
the image of flits and phits inspired my channel
objects here below. But I am afraid they are fire
and forget, no ACK and NACK:
-C-WAM Contest: 1 Million Packets with Prolog
https://medium.com/2989/ec3e91551773
Its amazing that a max_size(1) buffer
can beat an unbounded buffer!
LoL
Bye
Mild Shock schrieb:
Hi,
How it started, NVIDIA being cool:
NCCL provides routines such as all-gather,
all-reduce, broadcast, reduce, reduce-scatter,
and point-to-point send and receive. These
routines are optimized to achieve high
bandwidth and low latency over PCIe,
NVIDIA NVLinkrao, and other high-speed
interconnects within a node and over
NVIDIA networking across nodes.
https://developer.nvidia.com/nccl
How its going, vLLM trying to be cool:
[RFC]: Native Weight Syncing APIs
However, there are no standardized methods for
performing online weight syncing. Open source projects
like SkyRL, VeRL, and TRL need to include their
own implementations of the weight syncing
infrastructure, leading to added complexity
for developers seeking to adopt vLLM as their
inference server for post-training workloads.
https://github.com/vllm-project/vllm/issues/31848
How much Workers are enough? I guess it depends
on I/O parallelism, CPU Memory parallelism, CPU
Processing parallelism, and now also
GPU Memory parallelism and GPU Processing
parallelism, and last but least you might have
a couple DMAs sitting here and there,
or even invoking a sort of RDMA. Quite amazing!
Bye
Mild Shock schrieb:
Hi,
Well there are two viewpoint, the "client"
of the GPU, which is the CPU, and the "server"
of the GPU, which is the command processor
queue of the GPU device. So basically as
a CPU client I can write the memory area,
that is later mapped to my GPU code storage.
And this way have a compiler, even written
in Prolog, that compiles pi-WAM to my Hack VM,
that can then be then deployed to GPU.
You could also try the same with a Tiny
LISP VM. And a grown up LISP to act as
the compiler. Would be a similar exercise.
Have Fun!
Bye
Mild Shock schrieb:
Hi,
I've also added comp.theory so Mild Shock can comment.
that has different
*-a sizeof ( void * ), and
*-a sizeof ( void (*)( void ) ),
Could indicate a data RAM and code ROM model.
Which has then the advantage of:
Modern operating systems like Windows 11
enforce strict Data Execution Prevention (DEP)
(or NX/XD bit security features) to prevent
malicious programs from injecting and executing
code inside data-only memory regions.
https://root-nation.com/en/soft-en/lifehacks/en-dep-windows-all-about/ >>>>>>>
I adopted data RAM and code ROM model for
pi-WAM from Hack, which has the same separation:
Slide 58, Hack Computer
https://drive.google.com/file/d/1Z_fxYmmRNXTkAzmZ6YMoX9NXZIRVCKiw/view >>>>>>>
But my motivation was not Johnny Depp prevention.
Rather the caching of GPUs. Because WGSL
allows storage annotations read_write and
read. I use read_write for the data RAM
of my Hack VM variant, and read for the
code ROM of my Hack VM variant. You can
see that here, its open source:
@group(0) @binding(0) var<storage, read> code: array<i32>;
@group(0) @binding(1) var<storage, read_write> state: array<i32>; >>>>>>>
11.4 Giga Lips with a Budget Laptop
https://github.com/Jean-Luc-Picard-2021/gigabudget
Hope this Helps!
Bye
Johann 'Myrkraverk' Oskarsson schrieb:
On 03/08/2026 6:28 PM, David Brown wrote:
On 03/08/2026 11:41, Richard Harnden wrote:
On 03/08/2026 09:16, David Brown wrote:
On most targets, function pointers are the same size as void* >>>>>>>>>>> pointers. But there are exceptions, with some small
microcontrollers and DSPs having different kinds of pointers >>>>>>>>>>> with different sizes, depending on the memory space involved. >>>>>>>>>>> I have yet to see a situation where there was any reason for >>>>>>>>>>> storing a function address in a "void*" rather than a more >>>>>>>>>>> appropriate typedef, such as :
-a-a-a-a-atypedef void (*FVoid)(void);
dlsym requires that pointer-to-function is compatible with a >>>>>>>>>> void*
As I say, I have yet to see a situation where using void* for >>>>>>>>> function pointers was more appropriate than using a function >>>>>>>>> pointer type.-a If the OS system calls or standard OS libraries >>>>>>>>> makes it a requirement that function pointers are converted to >>>>>>>>> or from void* for some calls, then of course you need to follow >>>>>>>>> those requirements - it's the people who designed the
interfaces that made questionable design choices.
Nope, you're wrong.-a You're dead wrong.-a The world isn't built >>>>>>>> on C,
even though here in comp.lang.c we like to pretend it is.
Several language environments allow function generation on the fly, >>>>>>>> these functions need to be garbage collected.-a Common Lisp is an >>>>>>>> example, therefore comp.lang.lisp is added to this discussion. >>>>>>>>
I've also added comp.theory so Mild Shock can comment.
You will have to go out of your way to make a computer architecture >>>>>>>> incompatible with garbage collected and heap allocated binary code, >>>>>>>> something I've been told SBCL does internally [1] to create an >>>>>>>> archi-
tecture that has different
*-a sizeof ( void * ), and
*-a sizeof ( void (*)( void ) ),
and when you do that, I'll just claim you're making a /malicious >>>>>>>> computer architecture/ and refuse to use it.
[1] I've not looked at the code, but told the garbage collector can >>>>>>>> and will at least move the code around, if not collect it.
Hi,
Sometimes I think the Loderunner Enemy AI
was way ahead of its time:
Lode Runner - Broderbund - 1983 - Apple II https://www.youtube.com/watch?v=pJZJepU8law
Meanwhile SWI-Prolog Prologers even don't know
whether a Prolog text is CNF or DNF:
Sets of rules as conjunctions and/or disjunctions https://swi-prolog.discourse.group/t/sets-of-rules-as-conjunctions-and- or-disjunctions/9779
No Wonder that the EyeProlog "why" feature produces
nonsense. Even a Flea circus is less crazy.
Bye
P.S.: If only there would exist something like
universities where one can take a basic course in
FOL, and then a world wide web, where one can
lookup clark equational theory, clark completion,
curry howard correspondence, etc.. etc..
Hi,
The biggest joke, is to have logic somewhere
in procedure and somewhere in declarative, and
try to see different takes on logic.
They really don't know what this mantra means:
Algorithm = Logic + Control
And cannot relate it to the ideas of declarative
reading and procedural reading. The problem is
a too lax introduction of this notions,
prematurely before the notion "logic" is
even understood. But nobody understands the
meaning of the term "logic", i.e. a set of
supposedly tautological sentences, as under-
stood by mathematical logic. There is a subtle
error again to conflate it with a "calculus",
so this website has a very misleanding title,
although they try hard to not commit the fallacy,
and have subtitles "Proof System" and "Logic Level":
Welcome to LogicProof
https://6ximik9.github.io/naturalDeduction/
Then there is this moron:
There is only one rCLminimal logicrCY. The term denotes JohanssonrCOs Minimalkalk|+l [1937] rCo intuitionistic logic without ex falso quodlibet rCo
and nothing else. No rival system competes for the name. https://vidal-rosset.net/rule-correspondence-F.html
Of course there are rival "Proof Systems" aka
calculi, even when the "Logic Level" is minimal
logic. It is as if Joseph Vidal-Rosset doesn't
understand basic German. You have to look behind
"Minimalkalk|+l" to find "Minimallogic". Right?
To identify calculus with logic, is maybe a 1930's
fallacy, but then we had model theory besides
proof theory, and people should be more educated
now. Model theory can be also expanded to
non-classical logics and even minimal logic, to
give a purely semantic reading. Ok some modern
morons think they need to invoke the word "algebraic".
On 18/08/2026 10:26 PM, Mild Shock wrote:
[...] No Wonder that the EyeProlog "why" feature produces
nonsense. Even a Flea circus is less crazy.
Does wearing an eye patch help when writing Prolog? I ask because I
have never coded any Prolog before.
Corollary, since an eye patch would hide my central heterochromia, would that not hinder my ability to reason?
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
On Tue, 18 Aug 2026 21:13:10 +0100, Aidan Kehoe wrote:
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
I did briefly flirt with it, a decade earlier. I found it rCLvery high levelrCY, in that its brute-force pattern-matching-plus-backtracking execution paradigm was well-suited to solving certain kinds of logic
problems (itrCOs in the name of the language after all). Though I guess yourCOd get a blowup in execution time and memory in more complex
real-world situations.
You know the old rCLWho Owns The Zebra?rCY logic puzzle (or some variant thereof)? You basically code the given clues directly into Prolog, run
the result as a program, and out pops the answer.
On Tue, 18 Aug 2026 21:13:10 +0100, Aidan Kehoe wrote:
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
I did briefly flirt with it, a decade earlier. I found it rCLvery high >levelrCY, in that its brute-force pattern-matching-plus-backtracking >execution paradigm was well-suited to solving certain kinds of logic
problems (itrCOs in the name of the language after all). Though I guess >yourCOd get a blowup in execution time and memory in more complex
real-world situations.
You know the old rCLWho Owns The Zebra?rCY logic puzzle (or some variant >thereof)? You basically code the given clues directly into Prolog, run
the result as a program, and out pops the answer.
On Tue, 18 Aug 2026 22:49:18 -0000 (UTC), Lawrence D-|Oliveiro <ldo@nz.invalid> wrote:
On Tue, 18 Aug 2026 21:13:10 +0100, Aidan Kehoe wrote:
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
I did briefly flirt with it, a decade earlier. I found it rCLvery high
levelrCY, in that its brute-force pattern-matching-plus-backtracking
execution paradigm was well-suited to solving certain kinds of logic
problems (itrCOs in the name of the language after all). Though I guess
yourCOd get a blowup in execution time and memory in more complex
real-world situations.
You know the old rCLWho Owns The Zebra?rCY logic puzzle (or some variant
thereof)? You basically code the given clues directly into Prolog, run
the result as a program, and out pops the answer.
If the task involves a rule-based decision system, then Prolog can be
a reasonable tool for the job. But in my experience most Prologs
don't interface well - to the world, or to libraries written in other languages.
Prolog uses backward chaining Horn logic - essentially you start with
a [generic] "answer" in the form of a rule and look to see if the rule
can be supported by facts in your database.
Sometimes you want to work the other way, ie. go forward from facts to
rules that are supported by them. Prolog can't do that.
There are plenty of problems that can benefit from a Prolog-style rule system, but if you need one I think it is better to use an embeddable implementation, and write your main program in a language that is more suitable to interfacing with the world.
There are embeddable Prologs and [Horn logic] workalike libraries
available for a number of languages.
On 21/08/2026 2:08 PM, George Neuner wrote:
There are embeddable Prologs and [Horn logic] workalike libraries
available for a number of languages.
Indeed. I recall reading a book that showed how to implement Prolog
style logic reasoning in Lisp. Not sure if that was S.I.C.P.
Or am I remembering the famous lectures, from the 80s?
In any case, implementing Prolog-style rules and then just using them
in a larger programming language seemed trivial at the time. I have
no practical experience with this, however.
Hi,
Sometimes I think the Loderunner Enemy AI
was way ahead of its time:
Lode Runner - Broderbund - 1983 - Apple II https://www.youtube.com/watch?v=pJZJepU8law
Meanwhile SWI-Prolog Prologers even don't know
whether a Prolog text is CNF or DNF:
Sets of rules as conjunctions and/or disjunctions https://swi-prolog.discourse.group/t/sets-of-rules-as-conjunctions-and-or-disjunctions/9779
No Wonder that the EyeProlog "why" feature produces
nonsense. Even a Flea circus is less crazy.
Bye
P.S.: If only there would exist something like
universities where one can take a basic course in
FOL, and then a world wide web, where one can
lookup clark equational theory, clark completion,
curry howard correspondence, etc.. etc..
Mild Shock schrieb:
Hi,
Obviously to generate AI Surprises,
you have to stand on the shoulder of
giants. Otherwise you will not discover
surprises, right? Only mediocre deja vues.
For this purpose, and maybe otherwise
related, in a discussion concerning the future
of the library, Marvin Minsky and Edward A.
Feigenbaum endorsed the idea for books
to rCytalk to each otherrCO:
LET DOCUMENTS TALK TO EACH OTHER
Z. CHEN - 1993
doi.org/10.1108/eb026910
Now we have:
THE MACHINES ARE STUDYING
THE HUMANS ARE SCROLLING
https://9gag.com/gag/a9yQ16o
Bye
P.S.: But who was Marvin Minsky, and would it
be important to use symbolic AI?
The Perceptron Controversy
Yuxi Liu - 2024
https://yuxi.ml/essays/perceptron-controversy
Mild Shock schrieb:
Hi,
How it started:
Filming a vitamin B12 photoreceptor in action
https://www.psi.ch/de/news/science-features/filming-a-vitamin-b12-photoreceptor-in-action
How its going:
Elon Musk's potential FEL route could challenge EUV lithography
https://www.kucoin.com/news/flash/elon-musk-s-potential-fel-route-could-challenge-euv-lithography
Who will win the Nano Atom mover race,
will the USA OutChip its competitor China
and its supplier Asia in the next years?
Bye
Mild Shock schrieb:
Hi,
Recently there was a paper somebody mentioning
a flit doing a ACK or NACK, to express
backpressure inside a Network on a Chip.
But what is a flit? It seems multiple
flits can be used to create the message
passing in one directiob before the
ACK or NACK in the other direction?
"The growing need for performance from
computing systems drove the industry into
the multi-core and many-core arena. In this
setup, the execution of a kernel (a program)
is split across multiple processors and the
computation happens in parallel
Flits represent logical units of information,
while phits represent the physical domain,
that is, phits represent the number of bits
that can be transferred in parallel in a
single cycle. Consider the Cray T3D. It has
an interconnection network which uses
flit level message flow control wherein each
flit is composed of eight 16-bit phits. That
means its flit size is 128bits and phit size
is 16bits. Also consider the IBM SP2 switch.
It also uses the flit level message flow
control, but its flit size is equal to its
phit size, which is set to 8 bits."
https://en.wikipedia.org/wiki/Flit_(computer_networking)#Example
Well my idea how this is realized in silicon
is rather foggy, I mean even the Hack project
from Nand 2 Tetris, does not show some gate level
schemes for flits and phits.
Could be an interesting extension. But somehow
the image of flits and phits inspired my channel
objects here below. But I am afraid they are fire
and forget, no ACK and NACK:
-C-WAM Contest: 1 Million Packets with Prolog
https://medium.com/2989/ec3e91551773
Its amazing that a max_size(1) buffer
can beat an unbounded buffer!
LoL
Bye
Mild Shock schrieb:
Hi,
How it started, NVIDIA being cool:
NCCL provides routines such as all-gather,
all-reduce, broadcast, reduce, reduce-scatter,
and point-to-point send and receive. These
routines are optimized to achieve high
bandwidth and low latency over PCIe,
NVIDIA NVLinkrao, and other high-speed
interconnects within a node and over
NVIDIA networking across nodes.
https://developer.nvidia.com/nccl
How its going, vLLM trying to be cool:
[RFC]: Native Weight Syncing APIs
However, there are no standardized methods for
performing online weight syncing. Open source projects
like SkyRL, VeRL, and TRL need to include their
own implementations of the weight syncing
infrastructure, leading to added complexity
for developers seeking to adopt vLLM as their
inference server for post-training workloads.
https://github.com/vllm-project/vllm/issues/31848
How much Workers are enough? I guess it depends
on I/O parallelism, CPU Memory parallelism, CPU
Processing parallelism, and now also
GPU Memory parallelism and GPU Processing
parallelism, and last but least you might have
a couple DMAs sitting here and there,
or even invoking a sort of RDMA. Quite amazing!
Bye
Mild Shock schrieb:
Hi,
Well there are two viewpoint, the "client"
of the GPU, which is the CPU, and the "server"
of the GPU, which is the command processor
queue of the GPU device. So basically as
a CPU client I can write the memory area,
that is later mapped to my GPU code storage.
And this way have a compiler, even written
in Prolog, that compiles pi-WAM to my Hack VM,
that can then be then deployed to GPU.
You could also try the same with a Tiny
LISP VM. And a grown up LISP to act as
the compiler. Would be a similar exercise.
Have Fun!
Bye
Mild Shock schrieb:
Hi,
I've also added comp.theory so Mild Shock can comment.
that has different
*-a sizeof ( void * ), and
*-a sizeof ( void (*)( void ) ),
Could indicate a data RAM and code ROM model.
Which has then the advantage of:
Modern operating systems like Windows 11
enforce strict Data Execution Prevention (DEP)
(or NX/XD bit security features) to prevent
malicious programs from injecting and executing
code inside data-only memory regions.
https://root-nation.com/en/soft-en/lifehacks/en-dep-windows-all-about/ >>>>>>>
I adopted data RAM and code ROM model for
pi-WAM from Hack, which has the same separation:
Slide 58, Hack Computer
https://drive.google.com/file/d/1Z_fxYmmRNXTkAzmZ6YMoX9NXZIRVCKiw/view >>>>>>>
But my motivation was not Johnny Depp prevention.
Rather the caching of GPUs. Because WGSL
allows storage annotations read_write and
read. I use read_write for the data RAM
of my Hack VM variant, and read for the
code ROM of my Hack VM variant. You can
see that here, its open source:
@group(0) @binding(0) var<storage, read> code: array<i32>;
@group(0) @binding(1) var<storage, read_write> state: array<i32>; >>>>>>>
11.4 Giga Lips with a Budget Laptop
https://github.com/Jean-Luc-Picard-2021/gigabudget
Hope this Helps!
Bye
Johann 'Myrkraverk' Oskarsson schrieb:
On 03/08/2026 6:28 PM, David Brown wrote:
On 03/08/2026 11:41, Richard Harnden wrote:
On 03/08/2026 09:16, David Brown wrote:
On most targets, function pointers are the same size as void* >>>>>>>>>>> pointers. But there are exceptions, with some small
microcontrollers and DSPs having different kinds of pointers >>>>>>>>>>> with different sizes, depending on the memory space involved. >>>>>>>>>>> I have yet to see a situation where there was any reason for >>>>>>>>>>> storing a function address in a "void*" rather than a more >>>>>>>>>>> appropriate typedef, such as :
-a-a-a-a-atypedef void (*FVoid)(void);
dlsym requires that pointer-to-function is compatible with a >>>>>>>>>> void*
As I say, I have yet to see a situation where using void* for >>>>>>>>> function pointers was more appropriate than using a function >>>>>>>>> pointer type.-a If the OS system calls or standard OS libraries >>>>>>>>> makes it a requirement that function pointers are converted to >>>>>>>>> or from void* for some calls, then of course you need to follow >>>>>>>>> those requirements - it's the people who designed the
interfaces that made questionable design choices.
Nope, you're wrong.-a You're dead wrong.-a The world isn't built >>>>>>>> on C,
even though here in comp.lang.c we like to pretend it is.
Several language environments allow function generation on the fly, >>>>>>>> these functions need to be garbage collected.-a Common Lisp is an >>>>>>>> example, therefore comp.lang.lisp is added to this discussion. >>>>>>>>
I've also added comp.theory so Mild Shock can comment.
You will have to go out of your way to make a computer architecture >>>>>>>> incompatible with garbage collected and heap allocated binary code, >>>>>>>> something I've been told SBCL does internally [1] to create an >>>>>>>> archi-
tecture that has different
*-a sizeof ( void * ), and
*-a sizeof ( void (*)( void ) ),
and when you do that, I'll just claim you're making a /malicious >>>>>>>> computer architecture/ and refuse to use it.
[1] I've not looked at the code, but told the garbage collector can >>>>>>>> and will at least move the code around, if not collect it.
On 19/08/2026 6:49 AM, Lawrence DrCOOliveiro wrote:
On Tue, 18 Aug 2026 21:13:10 +0100, Aidan Kehoe wrote:
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
I did briefly flirt with it, a decade earlier. I found it rCLvery high
levelrCY, in that its brute-force pattern-matching-plus-backtracking
execution paradigm was well-suited to solving certain kinds of logic
problems (itrCOs in the name of the language after all). Though I guess
yourCOd get a blowup in execution time and memory in more complex
real-world situations.
You know the old rCLWho Owns The Zebra?rCY logic puzzle (or some variant
thereof)? You basically code the given clues directly into Prolog, run
the result as a program, and out pops the answer.
Dear Lawrence,
Have you thought to code yourself as a logical puzzle solving character
in text adventures, with or without the help of Prolog?
Do you think you can do so without ever mentioning Python? Or do you
love snakes so much you cannot live without it? Are you perhaps a
graduate of the Slitherin magical university?
I have added rec.arts.int-fiction to this discussion, and alt.fantasy,
even though we don't discuss Slitherins there.
Happy coding yourself in a text adventure game!
On 2026-08-19, Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> wrote:
On 19/08/2026 6:49 AM, Lawrence DrCOOliveiro wrote:
On Tue, 18 Aug 2026 21:13:10 +0100, Aidan Kehoe wrote:
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
I did briefly flirt with it, a decade earlier. I found it rCLvery high
levelrCY, in that its brute-force pattern-matching-plus-backtracking
execution paradigm was well-suited to solving certain kinds of logic
problems (itrCOs in the name of the language after all). Though I guess
yourCOd get a blowup in execution time and memory in more complex
real-world situations.
You know the old rCLWho Owns The Zebra?rCY logic puzzle (or some variant >>> thereof)? You basically code the given clues directly into Prolog, run
the result as a program, and out pops the answer.
Dear Lawrence,
Have you thought to code yourself as a logical puzzle solving character
in text adventures, with or without the help of Prolog?
Do you think you can do so without ever mentioning Python? Or do you
love snakes so much you cannot live without it? Are you perhaps a
graduate of the Slitherin magical university?
I have added rec.arts.int-fiction to this discussion, and alt.fantasy,
even though we don't discuss Slitherins there.
Happy coding yourself in a text adventure game!
There's a clause based language called Dialog which is
Prolog's cousing (think something like CLIPS, constraint based
solvers):
Anthk GM <anthk@disroot.org> writes:
On 2026-08-19, Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> wrote:
On 19/08/2026 6:49 AM, Lawrence DrCOOliveiro wrote:
On Tue, 18 Aug 2026 21:13:10 +0100, Aidan Kehoe wrote:
I coded Prolog in 1998-1999. It is not oriented to the underlying
machine in any useful way, and its syntax is not human-friendly. I
donrCOt recommend it.
I did briefly flirt with it, a decade earlier. I found it rCLvery high >>>> levelrCY, in that its brute-force pattern-matching-plus-backtracking
execution paradigm was well-suited to solving certain kinds of logic
problems (itrCOs in the name of the language after all). Though I guess >>>> yourCOd get a blowup in execution time and memory in more complex
real-world situations.
You know the old rCLWho Owns The Zebra?rCY logic puzzle (or some variant >>>> thereof)? You basically code the given clues directly into Prolog, run >>>> the result as a program, and out pops the answer.
Dear Lawrence,
Have you thought to code yourself as a logical puzzle solving character
in text adventures, with or without the help of Prolog?
Do you think you can do so without ever mentioning Python? Or do you
love snakes so much you cannot live without it? Are you perhaps a
graduate of the Slitherin magical university?
I have added rec.arts.int-fiction to this discussion, and alt.fantasy,
even though we don't discuss Slitherins there.
Happy coding yourself in a text adventure game!
There's a clause based language called Dialog which is
Prolog's cousing (think something like CLIPS, constraint based
solvers):
The first graphical MUD was built using the TUTOR
language.
https://en.wikipedia.org/wiki/TUTOR https://en.wikipedia.org/wiki/Dnd_(1975_video_game) https://en.wikipedia.org/wiki/Empire_(1973_video_game)
Hi,
Interesting. This PLATO ting from University
of Illinois could maybe predate Hack:
Dirk Pellett of Iowa State University
and Flint Pellett of the University of
Illinois made substantial enhancements
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 74 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 121:10:28 |
| Calls: | 1,194 |
| Files: | 1,352 |
| Messages: | 290,208 |