Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > sci.logic > #348170

capacity = 2^n for some n / systolic system (Re: imageAtomicAdd trivial, Dmitry Vyukov requires capacity)

From Mild Shock <janburse@fastmail.fm>
Newsgroups sci.logic, comp.lang.prolog, sci.physics
Subject capacity = 2^n for some n / systolic system (Re: imageAtomicAdd trivial, Dmitry Vyukov requires capacity)
Date 2026-07-21 01:41 +0200
Message-ID <113mbn8$4kvj$4@solani.org> (permalink)
References (2 earlier) <113kfgk$3b4e$2@solani.org> <113m3q9$5496$2@solani.org> <113m6l8$561a$2@solani.org> <113mbjh$4kvj$2@solani.org> <113mbkr$4kvj$3@solani.org>

Cross-posted to 3 groups.

Show all headers | View raw


Hi,

I am still singing this song:

"I'm a spinner, I'm a sinner
I spin on CAS loops for my dinner
Some call it busy-wait, I call it fate
When the queue is empty, I just rotate"

In Dmitry Vyukov multiple producer and
multiple consuer, the assumption is
that the capacity is a multiple power

of 2. This way some inveriants hold
computing seq - pos, even of the i32
arithmetc overflows, the difference

will still be in the interval -capacity
... capacity , as the AI chat bot explained
me. The initialization of a Dmitry Vyukov

then doesn't store capacity itself, but
a mask derived from capacity:

     private static void init(Queue q, int size) {
         q.bufferMask = size - 1;
         q.sequences = new AtomicIntegerArray(size);
         for (int i = 0; i < size; i++)
             q.sequences.set(i, i);
         q.data = new Object[size];
         q.enqueuePos = new AtomicInteger(0);
         q.dequeuePos = new AtomicInteger(0);
     }

I cannot use imageAtomicAdd, which wouldn't
have a finite capacity. But as you see
I have already a prototype of a Queue

with a finite capacity. And the results
for a systolic system are quite good:

public class DmitryVyukov
8 ms
public class DougLea
10 ms

Have Fun!

Bye

Mild Shock schrieb:
> Hi,
> 
> imageAtomicAdd is trivial, but it does
> not help with bounded buffers. I already
> did imageAtomicAdd, in an experiment,
> 
> where pi-WAM implemented an in and out
> buffer as follows in Java, which can
> be trivially ported to WebGPU / WGSL,
> 
> by using atomic(i32) and AtomicAdd:
> 
>     private static final class PiChan {
>          private int[] buf;
>          private AtomicInteger pos;
>      }
> 
>      private static final class PiWam {
>          private PiChan in;
>      Etc...
>      }
> 
>     case 5: /* in */
>          int at = pi.in.pos.getAndAdd(obj);
>          for (int i = 0; i < obj; i++)
>               pi.state[offset + i] = pi.in.buf[at + i];
>          return 0;
> 
> But this is not the same like Dmitry
> Vyukov buffer. Which has a maximum
> capacity, and fails to go beyond this
> 
> capacity filling a buffer by a producer,
> before a consumer made the buffer not
> full again. My requirement for pi-WAM
> 
> are bounded buffers with a finite capacity.
> 
> Bye
> 
> Mild Shock schrieb:
>> Hi,
>>
>> But I am nowhere using WebGL / GLSL.
>> The experiment here GPU versus CPU,
>> was done with WebGPU / WGSL:
>>
>> 11.4 Giga Lips with a Budget Laptop
>> https://github.com/Jean-Luc-Picard-2021/gigabudget
>>
>> Parallel π-WAM: 1.7 Giga Lips on a CPU
>> https://medium.com/2989/8a984e75af44
>>
>> I do not intend to redo the experiment
>> "gigabudget" with WebGL / GSLS. It would
>> appear to me like flogging a dead horse,
>>
>> a technology that has reached EOL, namely
>> OpenGL which is in the phase of end of lifetime.
>>
>> Bye
>>
>> Mild Shock schrieb:
>>> Hi,
>>>
>>> I am developing against WebGPU / WGSL.
>>> An overview of WebGPU / WGSL is found here:
>>>
>>> https://github.com/webgpu/webgpufundamentals
>>>
>>> There is no imageAtomicAdd in WGSL.
>>> imageAtomicAdd is from WebGL / GLSL.
>>>
>>> These are two different things:
>>>
>>> WebGPU / WGSL : Wrapper for Vulcan, Direct 12, or Metal
>>> WebGL / GLSL : Wrapper for OpenGL
>>>
>>> Chris M. Thomasson schrieb:
>>>  > imageAtomicAdd is a damn good one for accumulation buffers.
>>>
>>> Mild Shock schrieb:
>>>> Hi,
>>>>
>>>> I didn't find Futex in WebGPU / WGSL.
>>>> The website WebGPU fundamentals is on
>>>> GitHub. I did a search here:
>>>>
>>>> https://github.com/webgpu/webgpufundamentals
>>>>
>>>> In Java I can use Doug Leas queue.
>>>> In WebGPU / WGSL I will mostlikely
>>>> adopt Dmitry Vyukov , for a first stab.
>>>>
>>>> Who is Doug lea?
>>>>
>>>> He wrote Concurrent Programming in
>>>> Java: Design Principles and Patterns
>>>> https://en.wikipedia.org/wiki/Doug_Lea
>>>>
>>>> He is behind most of the concurrency promitives
>>>> in Java. Including the array backed queue that
>>>> I tested. Remember the results I had:
>>>>
>>>> public class DmitryVyukov
>>>> 8 ms
>>>> public class DougLea
>>>> 10 ms
>>>>
>>>> Bye
>>
> 

Back to sci.logic | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Paul Tarau versus Mr. Taskmanager, who would win? [A PDP-11 Humunkulus from 1979] Mild Shock <janburse@fastmail.fm> - 2026-04-24 02:46 +0200
  AI dooms day escape: Güttinger Wald (Re: Paul Tarau versus Mr. Taskmanager, who would win?) Mild Shock <janburse@fastmail.fm> - 2026-04-25 14:06 +0200
    Elmos Fascist Dreams of a 365 Prolog (Was: AI dooms day escape: Güttinger Wald) Mild Shock <janburse@fastmail.fm> - 2026-05-09 12:52 +0200
      Even the Buddos are clueless [Did Tarau see Liliputians?] (Re: Elmos Fascist Dreams of a 365 Prolog) Mild Shock <janburse@fastmail.fm> - 2026-05-09 15:19 +0200
        Halfing the AI Laptop Budget: Ne-Meow sold out! (Re: Even the Buddos are clueless [Did Tarau see Liliputians?]) Mild Shock <janburse@fastmail.fm> - 2026-05-10 09:09 +0200
    Prolog Expert Ginis (PEGs) on a Keychain (Re: AI dooms day escape: Güttinger Wald) Mild Shock <janburse@fastmail.fm> - 2026-06-20 13:04 +0800
      Chatbot Classified as a Weapon (Re: Prolog Expert Ginis (PEGs) on a Keychain) Mild Shock <janburse@fastmail.fm> - 2026-06-21 05:39 +0800
      Introduction to AI Accelerator Prolog [π-WAM of Dogelog] (Re: Prolog Expert Ginis (PEGs) on a Keychain) Mild Shock <janburse@fastmail.fm> - 2026-07-17 11:16 +0200
        Not praying to the god of lambda calculus [π beats α] (Re: Introduction to AI Accelerator Prolog [π-WAM of Dogelog]) Mild Shock <janburse@fastmail.fm> - 2026-07-17 11:17 +0200
        Re: Introduction to AI Accelerator Prolog [π-WAM of Dogelog] (Re: Prolog Expert Ginis (PEGs) on a Keychain) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-17 13:03 -0700
          pi in pi-WAM refers to pi-calculus (Was: Introduction to AI Accelerator Prolog [π-WAM of Dogelog] ) Mild Shock <janburse@fastmail.fm> - 2026-07-18 01:16 +0200
            Milners fickle() in pi-WAM [For fun and profit] (Re: pi in pi-WAM refers to pi-calculus) Mild Shock <janburse@fastmail.fm> - 2026-07-18 01:50 +0200
              Re: Milners fickle() in pi-WAM [For fun and profit] (Re: pi in pi-WAM refers to pi-calculus) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-18 01:34 -0700
                Robin Milners pi calculus is typeless (Was: Milners fickle() in pi-WAM [For fun and profit]) Mild Shock <janburse@fastmail.fm> - 2026-07-18 10:57 +0200
                Can the Church Turing hypotheses be refuted? [TLo @ FOM] (Was: Robin Milners pi calculus is typeless) Mild Shock <janburse@fastmail.fm> - 2026-07-18 11:08 +0200
    AI Laptops are just strange novel xBoxes (Was: AI dooms day escape: Güttinger Wald) Mild Shock <janburse@fastmail.fm> - 2026-07-08 20:44 +0200
      Re: AI Laptops are just strange novel xBoxes (Was: AI dooms day escape: Güttinger Wald) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-08 15:22 -0700
        TDR solutions --> work slicing (Was: AI Laptops are just strange novel xBoxes) Mild Shock <janburse@fastmail.fm> - 2026-07-09 09:47 +0200
          Thinking of Chris M. Thomasson: From shadertoys to computetoys? (Re: TDR solutions --> work slicing) Mild Shock <janburse@fastmail.fm> - 2026-07-09 09:52 +0200
    FYI: Unified Memory Architecture (UMA) (Re: Implementing Gas for a Compute Shader [Avoid TDR]) Mild Shock <janburse@fastmail.fm> - 2026-07-09 19:43 +0200
      The Wider von Neumann Neck (Re: FYI: Unified Memory Architecture (UMA)) Mild Shock <janburse@fastmail.fm> - 2026-07-10 07:51 +0200
        The new MIMD Warp is the cherry on top (Re: The Wider von Neumann Neck) Mild Shock <janburse@fastmail.fm> - 2026-07-10 08:08 +0200
        Dumbwit, just run it on your RTX 5070 trash (Re: The Wider von Neumann Neck) Mild Shock <janburse@fastmail.fm> - 2026-07-10 15:49 +0200
          We are still waiting for results! [Confused Dumbwit] (Re: We are waiting Dumbwit: 1 Month, 3 Months, .. [node.js dawn]) Mild Shock <janburse@fastmail.fm> - 2026-07-10 22:45 +0200
            404 Brain not Found [GPU saturation] (Re: We are still waiting for results! [Confused Dumbwit]) Mild Shock <janburse@fastmail.fm> - 2026-07-10 23:40 +0200
              I nowhere talked about 10GB/s (Re: 404 Brain not Found [GPU saturation]) Mild Shock <janburse@fastmail.fm> - 2026-07-10 23:41 +0200
                I nowhere said something about AI (Re: I nowhere talked about 10GB/s) Mild Shock <janburse@fastmail.fm> - 2026-07-10 23:52 +0200
                What do you not understand in "budget"? (Re: I nowhere said something about AI) Mild Shock <janburse@fastmail.fm> - 2026-07-11 00:08 +0200
                SWI makes only MLips not GLips (Re: What do you not understand in "budget"?) Mild Shock <janburse@fastmail.fm> - 2026-07-11 00:09 +0200
                micro penis got hurt by "budget" (Re: SWI makes only MLips not GLips) Mild Shock <janburse@fastmail.fm> - 2026-07-12 19:20 +0200
  Micro Penis Nemesis: Shoe String Budget π-WAM (Was: Paul Tarau versus Mr. Taskmanager, who would win?) Mild Shock <janburse@fastmail.fm> - 2026-07-12 19:26 +0200
    micro penis struggels with mobile grade GPU concept [Redmi Note 14 Pro+ Results] (Re: Micro Penis Nemesis: Shoe String Budget π-WAM) Mild Shock <janburse@fastmail.fm> - 2026-07-12 21:32 +0200
      Micro Penis Existential Crisis: DeepSeek on a Mobile GPU (Re: micro penis struggels with mobile grade GPU concept [Redmi Note 14 Pro+ Results]) Mild Shock <janburse@fastmail.fm> - 2026-07-12 21:47 +0200
        Micro Penis is worse than Sleepy Joe (Re: Micro Penis Existential Crisis: DeepSeek on a Mobile GPU) Mild Shock <janburse@fastmail.fm> - 2026-07-12 23:00 +0200
          Maybe change your pampers? (Was: Micro Penis is worse than Sleepy Joe) Mild Shock <janburse@fastmail.fm> - 2026-07-12 23:01 +0200
            herpes blister rossy boy is confused (Re: Maybe change your pampers?) Mild Shock <janburse@fastmail.fm> - 2026-07-13 06:54 +0200
              nothing gets blocked except your brain [LPDDR5X-RAM] (Re: herpes blister rossy boy is confused) Mild Shock <janburse@fastmail.fm> - 2026-07-13 13:21 +0200
                flogging a dead horse PCI VRAM graphic cards (Re: nothing gets blocked except your brain [LPDDR5X-RAM]) Mild Shock <janburse@fastmail.fm> - 2026-07-13 13:52 +0200
              GPUs evolved from SIMD to MIMD [NVIDIA Volta 2017] (Re: herpes blister rossy boy is confused) Mild Shock <janburse@fastmail.fm> - 2026-07-20 17:11 +0200
                A.D.I.D.A.S. Gopnik lost his screws (Re: GPUs evolved from SIMD to MIMD [NVIDIA Volta 2017]) Mild Shock <janburse@fastmail.fm> - 2026-07-20 19:58 +0200
  I'm a spinner, I'm a sinner [Dmitry Vyukov for pi-WAM] (Re: Paul Tarau versus Mr. Taskmanager, who would win? [A PDP-11 Humunkulus from 1979] Mild Shock <janburse@fastmail.fm> - 2026-07-19 11:55 +0200
    Gemini, DeepSeek, OpenAI all know Dmitriy V'jukov (Re: I'm a spinner, I'm a sinner [Dmitry Vyukov for pi-WAM]) Mild Shock <janburse@fastmail.fm> - 2026-07-20 08:33 +0200
      The Cache Identity Crisis by Micro Penis (Re: Gemini, DeepSeek, OpenAI all know Dmitriy V'jukov) Mild Shock <janburse@fastmail.fm> - 2026-07-20 13:54 +0200
        Just RTFM the RDNA 3.5 specs! [GPU Cache Lines] (Re: The Cache Identity Crisis by Micro Penis) Mild Shock <janburse@fastmail.fm> - 2026-07-20 14:10 +0200
          The large memory tax: ECC RAM (Re: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines]) Mild Shock <janburse@fastmail.fm> - 2026-07-20 14:23 +0200
          Re: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines] (Re: The Cache Identity Crisis by Micro Penis) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-20 12:26 -0700
            Re: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines] (Re: The Cache Identity Crisis by Micro Penis) R Kym Horsell <kymhorsell@gmail.com> - 2026-07-20 22:20 +0000
              Friendly Reminder: GPU 10x more performant than CPU (Was: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines]) Mild Shock <janburse@fastmail.fm> - 2026-07-21 00:39 +0200
                Breaking the CUDA edge in AI by WebGPU (Was: Friendly Reminder: GPU 10x more performant than CPU) Mild Shock <janburse@fastmail.fm> - 2026-07-21 00:56 +0200
                Like WebAssembly before it, WebGPU has "escaped" the browser. (Was: Breaking the CUDA edge in AI by WebGPU) Mild Shock <janburse@fastmail.fm> - 2026-07-21 01:05 +0200
                If you are paranoid you can use Falco [Agentic AI] (Re: Like WebAssembly before it, WebGPU has "escaped" the browser.) Mild Shock <janburse@fastmail.fm> - 2026-07-21 22:57 +0200
                What would an EMACS guru say [Windows Recall] (Re: If you are paranoid you can use Falco [Agentic AI]) Mild Shock <janburse@fastmail.fm> - 2026-07-21 23:35 +0200
                Decide what you critique tiny winy penis (Re: What would an EMACS guru say [Windows Recall]) Mild Shock <janburse@fastmail.fm> - 2026-07-22 08:17 +0200
                How confused is tiny winy penis? (Was: Decide what you critique tiny winy penis) Mild Shock <janburse@fastmail.fm> - 2026-07-22 08:28 +0200
                Maybe change your hobby, become a dog owner? (Was: How confused is tiny winy penis?) Mild Shock <janburse@fastmail.fm> - 2026-07-22 09:37 +0200
                Even dogs know Switzerland != Germany [Syphilis Brain Micro Penis] (Re: Decide what you critique tiny winy penis ) Mild Shock <janburse@fastmail.fm> - 2026-07-22 11:19 +0200
                node.js has also Worker isolation , headless (Was: Even dogs know Switzerland != Germany [Syphilis Brain Micro Penis]) Mild Shock <janburse@fastmail.fm> - 2026-07-22 11:29 +0200
                Abyss hobby interpretation vs. professional understanding [Keep up with the Kardashians] (Re: node.js has also Worker isolation , headless) Mild Shock <janburse@fastmail.fm> - 2026-07-22 11:38 +0200
                Play stupid games, win classic Usenet prizes [CCCP Troll] (Re: Abyss hobby interpretation vs. professional understanding [Keep up with the Kardashians]) Mild Shock <janburse@fastmail.fm> - 2026-07-22 12:16 +0200
                Glue Sniffing 5-Year Old Moron [CCCP Troll] (Was: Play stupid games, win classic Usenet prizes [CCCP Troll]) Mild Shock <janburse@fastmail.fm> - 2026-07-22 14:29 +0200
                My Swift Go 16 AI has no IMEI, are you nuts? (Re: Even dogs know Switzerland != Germany [Syphilis Brain Micro Penis]) Mild Shock <janburse@fastmail.fm> - 2026-07-22 14:15 +0200
                Same nickname and email, could post faster [5 year old moron] (Re: My Swift Go 16 AI has no IMEI, are you nuts? ) Mild Shock <janburse@fastmail.fm> - 2026-07-22 14:25 +0200
                I have nothing to hide, you can find me in search.ch (Re: My Swift Go 16 AI has no IMEI, are you nuts?) Mild Shock <janburse@fastmail.fm> - 2026-07-22 14:41 +0200
                Where did I confirm German via .ch, you are more than nuts! (Re: I have nothing to hide, you can find me in search.ch) Mild Shock <janburse@fastmail.fm> - 2026-07-22 14:48 +0200
                Ask a Ukrainian Neighbour to do Detective [CCCP Troll] (Re: Where did I confirm German via .ch, you are more than nuts! ) Mild Shock <janburse@fastmail.fm> - 2026-07-22 14:51 +0200
            Re: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines] (Re: The Cache Identity Crisis by Micro Penis) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-20 21:36 -0700
              rossy boy is going paranoid (Was: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines]) Mild Shock <janburse@fastmail.fm> - 2026-07-21 09:01 +0200
                Re: rossy boy is going paranoid (Was: Just RTFM the RDNA 3.5 specs! [GPU Cache Lines]) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-21 00:56 -0700
        L1,..,Ln caches are located on the CPU AND on the GPU (Was: The Cache Identity Crisis by Micro Penis( Mild Shock <janburse@fastmail.fm> - 2026-07-20 19:35 +0200
          GPU Cache Hierarchy: Understanding L1, L2, and VRAM (Was: L1,..,Ln caches are located on the CPU AND on the GPU) Mild Shock <janburse@fastmail.fm> - 2026-07-20 19:40 +0200
            Well thats good, co-location, onto the same processor die (Re: GPU Cache Hierarchy: Understanding L1, L2, and VRAM (Was: L1,..,Ln caches are located on the CPU AND on the GPU) Mild Shock <janburse@fastmail.fm> - 2026-07-20 22:02 +0200
              Where is micro penis mental error? (Re: Well thats good, co-location, onto the same processor die (Re: GPU Cache Hierarchy: Understanding L1, L2, and VRAM (Was: L1,..,Ln caches are located on the CPU AND on the GPU) Mild Shock <janburse@fastmail.fm> - 2026-07-20 22:07 +0200
      I didn't find Futex in WebGPU / WGSL (Re: Gemini, DeepSeek, OpenAI all know Dmitriy V'jukov) Mild Shock <janburse@fastmail.fm> - 2026-07-20 23:26 +0200
        There is no imageAtomicAdd in WGSL (Re: I didn't find Futex in WebGPU / WGSL) Mild Shock <janburse@fastmail.fm> - 2026-07-21 00:15 +0200
          OpenGL is dead. Apple said bye bye / Wayland Compositor (Re: There is no imageAtomicAdd in WGSL) Mild Shock <janburse@fastmail.fm> - 2026-07-21 00:26 +0200
          Flogging a Dead Horse, OpenGL is EOL (Re: There is no imageAtomicAdd in WGSL) Mild Shock <janburse@fastmail.fm> - 2026-07-21 01:39 +0200
            imageAtomicAdd trivial, Dmitry Vyukov requires capacity (Re: Flogging a Dead Horse, OpenGL is EOL) Mild Shock <janburse@fastmail.fm> - 2026-07-21 01:40 +0200
              capacity = 2^n for some n / systolic system (Re: imageAtomicAdd trivial, Dmitry Vyukov requires capacity) Mild Shock <janburse@fastmail.fm> - 2026-07-21 01:41 +0200
                Source of the benchmark for DmitryVyukov (Was: capacity = 2^n for some n / systolic system) Mild Shock <janburse@fastmail.fm> - 2026-07-21 01:44 +0200
          Re: There is no imageAtomicAdd in WGSL (Re: I didn't find Futex in WebGPU / WGSL) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-20 16:59 -0700
            I never used OpenGL Version 4.2 and later (Was: There is no imageAtomicAdd in WGSL) Mild Shock <janburse@fastmail.fm> - 2026-07-21 08:47 +0200
              Because of MIMD you have to reassess algorithms (Re: I never used OpenGL Version 4.2 and later) Mild Shock <janburse@fastmail.fm> - 2026-07-21 09:02 +0200
                Re: Because of MIMD you have to reassess algorithms (Re: I never used OpenGL Version 4.2 and later) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-22 13:34 -0700
                Do you see the loops, in C code and in Java code? /** Looping **/ (Was: Because of MIMD you have to reassess algorithms) Mild Shock <janburse@fastmail.fm> - 2026-07-23 00:09 +0200
                Re: Do you see the loops, in C code and in Java code? /** Looping **/ (Was: Because of MIMD you have to reassess algorithms) Mild Shock <janburse@fastmail.fm> - 2026-07-23 00:53 +0200
                Re: Do you see the loops, in C code and in Java code? /** Looping **/ (Was: Because of MIMD you have to reassess algorithms) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-22 18:00 -0700
                Re: Do you see the loops, in C code and in Java code? /** Looping **/ (Was: Because of MIMD you have to reassess algorithms) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-22 18:20 -0700

csiph-web