DIP 1024--Shared Atomics--Community Review Round 1

Ola Fosheim Grøstad ola.fosheim.grostad at gmail.com
Sun Oct 13 08:06:32 UTC 2019


On Saturday, 12 October 2019 at 23:36:55 UTC, Manu wrote:
> Here's a rough draft of one such sort of tool I use all the 
> time in shared-intensive code: 
> https://gist.github.com/TurkeyMan/c16db7a0be312e9a0a2083f5f4a6efec

Thanks! That looks quite low level, but now I understand more 
what you are looking for.

What I had in mind was writing APIs that allows ordinary 
programmers to do parallell programming safely.

Like taking the single threaded code they have written for 
processing a single array or merging two arrays with each other 
and then use a library for speeding it up.


Anyway, my core argument is to put more meta-programming power in 
hands of library authors like you so that people who have the 
shoes on can define the semantics they are after. I really don't 
think this has to be done at the compiler level, given the right 
meta programming tools, based on the proposed semantics. And I 
don't think providing those meta programming tools are more work 
than hardwiring more stuff into the compiler. Clearly that is 
just my opinion. Others might feel differently.

(Other semantics do require compiler support to work well, like 
heterogeneous memory architectures, but the proposal does not 
work with that.)



More information about the Digitalmars-d mailing list