Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #118043
| From | "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> |
|---|---|
| Newsgroups | comp.lang.c++ |
| Subject | Re: Interesting proposal... |
| Date | 2023-12-07 17:28 -0800 |
| Organization | A noiseless patient Spider |
| Message-ID | <uktrfh$1ffeg$1@dont-email.me> (permalink) |
| References | <ukr5o0$vo3f$1@dont-email.me> <uktibc$1eci9$1@dont-email.me> |
On 12/7/2023 2:52 PM, jseigh wrote: > On 12/6/23 20:05, Chris M. Thomasson wrote: >> Context: >> >> https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0233r5.pdf >> >> SMR in std C++? Humm... > > It will be based on the one in Meta's folly library. Based on a quick > scan of the code I think it will use a global membar if that is > available. Looks like it will do some tracing collection for acyclic > data structures. I think so, ala sys_membarrier()...? Afaict, perhaps akin to a call to FlushProcessWriteBuffers: https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-flushprocesswritebuffers Active vs passive quiescent state detection schemes. Active being "issuing" an explicit request for quiescence. Passive akin to detecting quiescent states... Also, btw, Joe, it has been a while since we have conversed on Usenet! We have had some hyper interesting conversations in the past, indeed. :^) So nice to hear from you. :^) > I (finally) got around to writing the proxy version of it here > https://github.com/jseigh I need to check it out, big time! Unfortunately, I am a bit busy right now. However, you just made me think of that most interesting SMR+RCU hybrid of yours. :^) I know I am going to have a good time when I read your code, Joe. :^) > smrproxy - hazard pointer based proxy collector > arcproxy - atomic reference counted proxy collector > proxytest - timing tests > atomic-ptr-plus - obsolete, not updated and missing some files during > the sourceforge to google to github moves. > > Some timing comparisons in my blog here > https://threadnought.wordpress.com/2023/06/09/smrproxy-timing-comparisons/ Excellent. Fwiw, remember my single word proxy collector over here? https://groups.google.com/g/lock-free/c/X3fuuXknQF0 It looks like some of your comments got deleted from that post? Ahhh, it was a while back. Here is a link to raw text: pastebin.com/raw/f71480694 (fwiw, my proxy code using Relacy Race Detector) > arcproxy looks good compared to rwlock but compared to smrproxy it looks > really bad. The rcu timings are simulated. Yup! IIRC, it's damn hard to compete with your SMR-RCU hybrid, or RCU for that matter... I remember first learning about your DWCAS based atomic pointer way back on comp.programming.threads. It is nice to hear from you again. :^) Fwiw, check out this rwlock of mine: https://vorbrodt.blog/2019/02/14/read-write-mutex Also, I remember you did a really __neat__ rw-spinlock way back on comp.programming.threads. IIRC, The algorithm was rather elegant, indeed. Could handle overflow into fields... > I've been considering creating an interface for all the different > schemes. Not sure if it would be a c++ abstact class or a rust trait, > neither are my main languages. But then I would need a shared data > structure that would utilize it. I did figure out how to do a lock-free > hashmap (w/ per bucket linked lists) that can do lock-free resizing but > I found Cliff Click has one that's probably faster (because no linked > lists). But all that's on back burner for now. Indeed. I will find some more time, maybe late tonight buddy. Fwiw, a while back, I had an API that was fairly “generic” in a sense... I used it for testing purposes so I could switch up implementations rather easily. It was an attempt at a std proxy collector interface for my testing purposes. Wow, how times flies! I will get back to you here. Need to get some work done wrt plotting some of my fractals... https://paulbourke.net/fractals/multijulia (Paul was kind enough to write about some of my work.) [...]
Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-06 17:05 -0800
Re: Interesting proposal... Lynn McGuire <lynnmcguire5@gmail.com> - 2023-12-07 00:04 -0600
Re: Interesting proposal... Bonita Montero <Bonita.Montero@gmail.com> - 2023-12-07 07:57 +0100
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-08 12:17 -0800
Re: Interesting proposal... Bonita Montero <Bonita.Montero@gmail.com> - 2023-12-09 19:11 +0100
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-09 12:54 -0800
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-14 21:59 -0800
Re: Interesting proposal... jseigh <jseigh_es00@xemaps.com> - 2023-12-07 17:52 -0500
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-07 17:28 -0800
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-08 20:48 -0800
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-08 20:51 -0800
Re: Interesting proposal... "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-12-09 22:54 -0800
csiph-web