- Here is my final words about C++ - 6 Updates
- cmsg cancel <ngu1nc$6li$1@dont-email.me> - 7 Updates
- A memory barrier is needed - 1 Update
- C++ Middleware Writer - 1 Update
- Lamda expression as "with"-block - 1 Update
- I correct, read again... - 1 Update
- I must be more clearer... - 1 Update
- About parallelism and C++ - 1 Update
- I will make my way of thinking more clear... - 2 Updates
- My C++ synchronization objects library was updated.. - 1 Update
- I think that we have to be more precise... - 2 Updates
- Finally my great updated C++ synchronization objects library is here... - 1 Update
Ramine <ramine@1.1>: May 10 10:40PM -0700 Hello, Here is my final words about C++ As you have noticed i have implemented my great C++ synchronization objcts library, but i must be frank, this is my last contribution to C++, because C and C++ are dangerous beasts, since there memory model is weaker and weaker than the Strong Memory Model of the x86 architecture , so from now on i will stop writing in C++. This was my last post on this C++ group. Thank you, Amine Moulay Ramdane. |
Juha Nieminen <nospam@thanks.invalid>: May 11 06:07AM > This was my last post on this C++ group. Haha. You are quite a joker, aren't you? --- news://freenews.netfront.net/ - complaints: news@netfront.net --- |
Ian Collins <ian-news@hotmail.com>: May 11 08:06PM +1200 On 05/11/16 06:07 PM, Juha Nieminen wrote: > Ramine <ramine@1.1> wrote: Please don't respond to Ramine spam decent news servers filter out. It never engages in a discussion, so replying merely defeats the spam filters. -- Ian Collins |
onlooker <vectrum@rediffmail.com>: May 11 04:40PM +0530 > This was my last post on this C++ group. > Thank you, > Amine Moulay Ramdane. BTW What lang are you going to use now? C#? -- ----Android NewsGroup Reader---- http://usenet.sinaapp.com/ |
onlooker <vectrum@rediffmail.com>: May 11 04:45PM +0530 > never engages in a discussion, so replying merely defeats the spam filters. > -- > Ian Collins OMG! I thought he was serious. Any way, thnx for the warning. -- ----Android NewsGroup Reader---- http://usenet.sinaapp.com/ |
Jerry Stuckle <jstucklex@attglobal.net>: May 11 08:56AM -0400 On 5/11/2016 4:06 AM, Ian Collins wrote: >> Ramine <ramine@1.1> wrote: > Please don't respond to Ramine spam decent news servers filter out. It > never engages in a discussion, so replying merely defeats the spam filters. And how has ignoring helped? Has it stopped him from posting? Just because YOU don't see his posts doesn't mean everyone else doesn't. -- ================== Remove the "x" from my email address Jerry Stuckle jstucklex@attglobal.net ================== |
bleachbot <bleachbot@httrack.com>: May 11 03:29AM +0200 |
bleachbot <bleachbot@httrack.com>: May 11 03:37AM +0200 |
bleachbot <bleachbot@httrack.com>: May 11 03:51AM +0200 |
bleachbot <bleachbot@httrack.com>: May 11 04:05AM +0200 |
bleachbot <bleachbot@httrack.com>: May 11 04:08AM +0200 |
bleachbot <bleachbot@httrack.com>: May 11 04:39AM +0200 |
bleachbot <bleachbot@httrack.com>: May 11 02:39PM +0200 |
Ramine <ramine@1.1>: May 11 08:41AM -0700 Hello... I have just looked at my algorithm of my scalable Asymmetric Distributed Reader-Writer mutex, and i think it needs a memory barrier on the reader-side, because on x86 loads of the inside reader section can be reordered with the following store: myid1:=0; FCount1^[myid1].fcount1:=FCount1^[myid1].fcount1+1; So now i think you can be more confident.. You can download my new and updated C++ synchronization objects library from: https://sites.google.com/site/aminer68/c-synchronization-objects-library and you can download my updated scalable DRWLock from: https://sites.google.com/site/aminer68/scalable-distributed-reader-writer-mutex Thank you, Amine Moulay Ramdane. |
Juha Nieminen <nospam@thanks.invalid>: May 11 06:05AM > relatively rapid rise of sea level following the last glaciation > period. Both the med basin and the red sea (iirc) had sudden > influxes of water during that timeframe. Ultimately, such myths arise because humans are instinctively animists (an instinct that probably goes *way* back in our evolutionary history). We tend to assume consciousness and intent in unknown things. If there's a sound in a bush, we tend to assume it's an animal (a potentially dangerous one) rather than a non-living being like the wind. Floods are relatively common and highly destructive. It would be quite a surprise if ancient cultures did *not* attribute them to some conscious being, with some kind of intent or purpose behind it. --- news://freenews.netfront.net/ - complaints: news@netfront.net --- |
Stuart Redmann <DerTopper@web.de>: May 11 08:01AM +0200 On 10.05.2016, Öö Tiib wrote: >> IMHO Juha Nieminen was complaining that the 'Impl' is confusing and likely >> hiding vital things he expects to see. I do not think that he does not >> know what member initializer list is. Alf P. Steinbach wrote: > Oh, then I should direct him elsewhere, even though a good intro book > should IMHO discuss the PIMPL idiom. [snip] I'm pretty sure that Juha knows about The pimpl pattern as well. Regards, Stuart |
Ramine <ramine@1.1>: May 10 10:09PM -0700 Hello, I must be more clearer... C++ and C and Java have weaker memory model than the x86 architecture strong memory model, and that's error prone and not safe, because the way of thinking of C and C++ is a more optimization way of thinking, this is why i think that's dangerous, i think if i want to follow the Spirit of Spark, i must say that since FreePascal and Delphi don't reorder loads and stores on x86 , so that's make the life easier for us on x86 , since that makes the reasoning easier for sequential consistency etc. This is why i don't like C or C++. Thank you, Amine Moulay Ramdane |
Ramine <ramine@1.1>: May 10 10:06PM -0700 Hello, I must be more clearer... C++ and C and Java have weaker memory model than the x86 architecture strong memory model, and that's error prone and not safe, because the way of thinking of C and C++ is a more optimization way of thinking, this is why i think that's dangerous, i think of i want to follow the Spirit of Spark i must say that since FreePascal and Delphi don't reorder loads and stores on x86 , so that's make the life easier for us on x86 , since that makes the reasonning easier for sequential consistency etc. This is why i don't like C or C++. Thank you, Amine Moulay Ramdane,. |
Ramine <ramine@1.1>: May 10 09:51PM -0700 Hello, I must be clear about an important think about C++.. Since C++ follow a weak memory model , i really think that C++ is not safe, because this weak memory model is error prone , and this is very dangerous, this is why i am compiling my Dynamic Link Libraries with FreePascal that doesn't reorder loads and stores and that's more safe than C++. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: May 10 09:30PM -0700 Hello, I have wrote this: >this is why the windows function FlushProcessWriteBuffers() is needed >in the writer side of my scalable Asymmetric reader-writer mutex >algorithms. And Chris Vin responded to me this: >I would be very surprised if this doesn't affect all your code in other >ways, because your posting shows that you don't understand the basics >and are therefore clueless. I think that Chris Vine doesn't understand my way of thinking, your way of thinking is an optimization way of thinking that is error prone, but me, i am adopting the ADA and the Spark way of thinking and using a Full memory barrier to reduce the risk of errors, on x86 an Mfence is 400 CPU cycles and an Sfence is 200 CPU cycles , so to be more safe we can also always use an Mfence and that's not a big difference i think. Thank you, Amine Moulay Ramdane. |
Ramine <ramine@1.1>: May 10 09:38PM -0700 Hello, I am speaking from a Delphi and FreePascal point of view, because i am compiling my Dynamic Link Libraries with FreePascal or Delphi and using them in C++. Thank you, Amine Moulay Ramdane. On 5/10/2016 9:30 PM, Ramine wrote: |
Jerry Stuckle <jstucklex@attglobal.net>: May 10 08:54PM -0400 On 5/10/2016 4:17 PM, Chris Vine wrote: > of bugs in it. Can you do it? > I bet you that know your code is crap, so you can't. Want to take it > up? Chris, his code is unmitigated crap. Not worth downloading - much less using. -- ================== Remove the "x" from my email address Jerry Stuckle jstucklex@attglobal.net ================== |
Melzzzzz <mel@zzzzz.com>: May 11 02:09AM +0200 On Wed, 11 May 2016 08:22:27 +1200 > Please don't respond to Ramine spam decent news servers filter out. > It never engages in a discussion, so replying merely defeats the spam > filters. Seems that he figured out that his account is being filtered by news servers so he changed id ;p |
Jorgen Grahn <grahn+nntp@snipabacken.se>: May 11 12:36AM On Wed, 2016-05-11, Melzzzzz wrote: >> filters. > Seems that he figured out that his account is being filtered by news > servers so he changed id ;p If he did, it did not help at news.individual.net: Article <ngtepd$8hr$6@dont-email.me> not available. And, like Ian Collins writes: please to not respond. /Jorgen -- // Jorgen Grahn <grahn@ Oo o. . . \X/ snipabacken.se> O o . |
aminer68@gmail.com: May 10 05:04PM -0700 Hello, Finally my great updated C++ synchronization objects library is here... I have corrected the bug with my scalable Asymmetric Distributed Reader-Writer mutex , and now i have modified some logic inside it, and now it uses the windows FlushProcessWriteBuffers() on the writer side of my algorithm that executes a Full memory barrier on the other processors so that the variables that are needed by the writer side of my algorithm are visible. So you have to understand that declaring a variable volatile in C++ is not a sufficient condition to make the variable visible across cores, you need to execute a Full memory barrier, and this is what is doing the windows function FlushProcessWriteBuffers() on the writer side of my algorithm. Now i need to make my new scalable Asymmetric Distributed Reader-Writer Mutex algorithm more clear, the Dmitry Vyukov scalable Asymmetric rw_mutex here: https://groups.google.com/forum/#!topic/lock-free/Hv3GUlccYTc This algorithm when it makes "writer_pending = true", it will block all the readers the time needed for the following loop to execute: for (int i = 0; i != max_reader_count; ++i) { // wait for all readers to complete while (reader_inside[i]) SwitchToThread(); } An this is expensive and not efficient, but my new algorithm that is my scalable Asymmetric Distributed Reader-Writer Mutex algorithm, doesn't block like that the reader threads, since in my new algorithm even if you enter like this loop above, the reader-side can still execute in parallel when the loop is not yet finished, and this what makes my scalable Asymmetric Distributed Reader-Writer Mutex algorithm efficient, it has more parallelism than the Dmitry Vyukov scalable Asymmetric rw_mutex. If you need to take a look at my new algorithm, just download the source code , just look at version 2 of my algorithm inside DRWLOCK.pas source code, you can download the source code from here: https://sites.google.com/site/aminer68/scalable-distributed-reader-writer-mutex So hope that you will be happy with my great C++ synchronization objects library ! You can download my new and updated C++ synchronization objects library from: https://sites.google.com/site/aminer68/c-synchronization-objects-library Thank you, Amine Moulay Ramdane. |
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page. To unsubscribe from this group and stop receiving emails from it send an email to comp.lang.c+++unsubscribe@googlegroups.com. |
No comments:
Post a Comment