Tuesday, October 31, 2017

Digest for comp.lang.c++@googlegroups.com - 23 updates in 8 topics

aminer68@gmail.com: Oct 31 12:30PM -0700

Hello,
 
Chris M. Thomasson have repond to me and posted this:
 
https://groups.google.com/d/topic/lock-free/acjQ3-89abE/discussion
 
I think you are not getting the point, that you are using XADD with lock,
this doesn't scale at all, you have to understand what i am doing ,
my scalable fifo queues that i have just invented don't use XADD with Lock,
they use scalable counting networks that are truly scalable and they
use a technic that distribute on many fifo queues to be truly scalable,
my fifo queues are truly scalable on NUMA system.
 
Read the following (the counting network is truly scalable, please look at the graph inside the paper):
 
http://people.csail.mit.edu/shanir/publications/HLS.pdf
 
The Scalable and lock-free first-in-first-out queue implementation of
Mark Moir, Ori Shalev, Nir Shavit is patented:
 
Here is there patent:
 
http://www.google.sr/patents/US7836228
 
And here is there paper:
 
http://people.csail.mit.edu/shanir/publications/SPAA2005.pdf
 
 
But my scalable FIFO queues that i have just invented are freewares , and i think they are better:
 
This is Scalable FIFO queues version 1.0, this is the windows version, the Linux version and C++ version for Windows and Linux are coming..
 
Those are two scalable FIFO queues, one is bounded and the other unbounded, they use a distributed technic over many FIFO queues and they use scalable counting networks so that to be scalable, you can test them on NUMA systems to notice that they are truly scalable.
 
And counting networks are truly scalable and are a special type of balancer networks which count.
 
Look at my port to Delphi and FreePascal of scalable counting networks here:
 
https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
You can download my Scalable FIFO queues from:
 
https://sites.google.com/site/aminer68/scalable-fifo-queues
 
 
 
Thank you,
Amine Moulay Ramdane.
"Chris M. Thomasson" <invalid_chris_thomasson@invalid.invalid>: Oct 31 02:11PM -0700


> I think you are not getting the point, that you are using XADD with lock,
> this doesn't scale at all, you have to understand what i am doing ,
> my scalable fifo queues that i have just invented don't use XADD with Lock,
 
[...]
 
As I said, already used many different networks of SPSC queues such that
no XADD is needed at all. Actually, mfence is not needed at all!
"Chris M. Thomasson" <invalid_chris_thomasson@invalid.invalid>: Oct 31 02:12PM -0700


> https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
> You can download my Scalable FIFO queues from:
 
> https://sites.google.com/site/aminer68/scalable-fifo-queues
 
Networking queues is not new.
Intelli2 <intelli2@mama.com>: Oct 31 09:47PM -0400

On 10/31/2017 5:11 PM, Chris M. Thomasson wrote:
 
> [...]
 
> As I said, already used many different networks of SPSC queues such that
> no XADD is needed at all. Actually, mfence is not needed at all!
 
 
I think you are a smart person, and you have understood my work.
 
 
 
Thank you,
Amine Moulay Ramdane.
aminer68@gmail.com: Oct 30 07:11PM -0700

Hello..
 
The Scalable and lock-free first-in-first-out queue implementation of
Mark Moir, Ori Shalev, Nir Shavit is patented:
 
Here is there patent:
 
http://www.google.sr/patents/US7836228
 
And here is there paper:
 
http://people.csail.mit.edu/shanir/publications/SPAA2005.pdf
 
 
But my scalable FIFO queues that i have just invented are freewares , and i think they are better:
 
This is Scalable FIFO queues version 1.0, this is the windows version, the Linux version and C++ version for Windows and Linux are coming..
 
Those are two scalable FIFO queues, one is bounded and the other unbounded, they use a distributed technic over many FIFO queues and they use scalable counting networks so that to be scalable, you can test them on NUMA systems to notice that they are truly scalable.
 
And counting networks are truly scalable and are a special type of balancer networks which count.
 
Look at my port to Delphi and FreePascal of scalable counting networks here:
 
https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
You can download my Scalable FIFO queues from:
 
https://sites.google.com/site/aminer68/scalable-fifo-queues
 
 
 
Thank you,
Amine Moulay Ramdane.
"Chris M. Thomasson" <invalid_chris_thomasson@invalid.invalid>: Oct 30 08:30PM -0700


> https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
> You can download my Scalable FIFO queues from:
 
> https://sites.google.com/site/aminer68/scalable-fifo-queues
 
Already been there, done that. Created networks of
single-producer/consumers queues, along with networks of
multi-producer/consumers queues, all in between. Even wrote about some
of them in the past over on comp.programming.threads. Now, this actually
can be quite scalable indeed, especially for certain types of workloads.
Have not really looked at your code yet, sorry. Will do, at first glance
I see a lot of:
 
{$IFDEF TicketSpinlock}
lock1,lock2:TTicketSpinlock;
{$ENDIF TicketSpinlock}
{$IFDEF AMLock}
lock1,lock2:TALOCK;
{$ENDIF AMLock}
{$IFDEF Spinlock}
 
How can that be lock-free? Fwiw, check this out:
 
https://groups.google.com/d/topic/lock-free/acjQ3-89abE/discussion
(read all...)
 
 
Also, why do you have an mfence in:
 
procedure TTicketSpinLock.Leave;
 
begin
mfence;
inc(FCount3^.FCount3);
//sleep(0);
end;
 
Why would you do that? Why sleep(0)? We only really need release
semantics here.
 
Also, why are you using Intel TBB binaries? You should add that to your
README?
"Chris M. Thomasson" <invalid_chris_thomasson@invalid.invalid>: Oct 30 09:58PM -0700

On 10/30/2017 8:30 PM, Chris M. Thomasson wrote:
> end;
 
> Why would you do that? Why sleep(0)? We only really need release
> semantics here.
 
At you put the membar in the right place wrt release. However, a mfence
should not be needed to release a spinlock in x86 because, non-temporal
stores aside for a moment, normal atomic stores already have implied
release semantics in x86. An atomic store using a release barrier in x86
does not need any explicit membar or LOCK'ed RMW instruction.
 
Now, on something like SPARC in RMO mode, well, you better put in a
#LoadStore | #StoreStore for release, and have a matching #LoadStore |
#LoadLoad for the damn acquire part of the spinlock.
 
Intelli2 <intelli2@mama.com>: Oct 31 08:42AM -0400

On 10/31/2017 12:58 AM, Chris M. Thomasson wrote:
> #LoadLoad for the damn acquire part of the spinlock.
 
>> Also, why are you using Intel TBB binaries? You should add that to
>> your README
 
 
Hello,
 
 
My scalable FIFO queues use "Scalable" counting networks etc.
 
https://github.com/stephentu/counting-networks
 
 
 
Thank you,
Amine Moulay Ramdane.
Intelli2 <intelli2@mama.com>: Oct 31 08:45AM -0400

Hello,
 
 
Read the following (the counting network is truly scalable, please look
at the graph inside the paper):
 
http://people.csail.mit.edu/shanir/publications/HLS.pdf
 
My scalable FIFO queues use "Scalable" counting networks etc.
 
https://github.com/stephentu/counting-networks
 
 
 
Thank you,
Amine Moulay Ramdane.
"Chris M. Thomasson" <invalid_chris_thomasson@invalid.invalid>: Oct 31 02:07PM -0700

On 10/31/2017 5:45 AM, Intelli2 wrote:
 
> http://people.csail.mit.edu/shanir/publications/HLS.pdf
 
> My scalable FIFO queues  use "Scalable" counting networks etc.
 
> https://github.com/stephentu/counting-networks
 
That can most definitely be a decent way to set them up. Fwiw, some
experimental fractal networks can work as well. Forests, ect...
 
On a side note wrt building a network from the ground up, actually, I
can experimentally simulate some quasi-pseudo "fairly natural networks"
via vector fields and DLA, here is a crude dynamic online simulation:
 
http://funwithfractals.atspace.cc/ct_fdla_anime_dynamic_test
 
You can add new attractors in real time by clicking within the square.
Let it run for around 5 minutes, click on some points in the square,
then let it run for another 10 minutes...
 
A very helpful, and smart friend of mine over on comp.lang.javascript
ported it to ES6:
 
https://groups.google.com/d/topic/comp.lang.javascript/vza2sChC2MY/discussion
(some more context...)
 
And put it up on CodePen:
 
https://codepen.io/mlhaufe/project/editor/XNGeEv
 
Fwiw, I also have some very crude C++ code for the basic process here:
 
https://github.com/ChrisMThomasson/CT_fieldDLA/blob/master/cairo_test_penrose/ct_field.hpp
 
uses Cairo graphics lib:
 
https://cairographics.org/
 
and the very nice:
 
https://glm.g-truc.net/0.9.2/api/a00001.html
 
 
Anyway, The field DLA can build a fairly efficient network wrt the
starting conditions, and does pretty good with any new mutations...
 
Now, for fun, we can insert the most compatible queue:
 
Single-Producer Single-Consumer (SPSC)
Multi-Producer Single-Consumer (MPSC)
Single-Producer Multi-Consumer (SPMC)
Multi-Producer Multi-Consumer (MPMC)
 
For every node in the dynamically "growing and evolving" DLA cluster.
 
 
> Thank you,
> Amine Moulay Ramdane.
 
Okay, so Intelli2 is you right? For some reason I thought the first
response was from:
 
https://github.com/stephentu posting as Intelli2.
 
;^/
Intelli2 <intelli2@mama.com>: Oct 31 09:47PM -0400

On 10/31/2017 5:07 PM, Chris M. Thomasson wrote:
> response was from:
 
> https://github.com/stephentu posting as Intelli2.
 
> ;^/
 
 
I think you are a smart person, and you have understood my work.
 
 
 
Thank you,
Amine Moulay Ramdane.
aminer68@gmail.com: Oct 31 12:33PM -0700

Hello,
 
Chris M. Thomasson has repondrf to me and posted this:
 
https://groups.google.com/d/topic/lock-free/acjQ3-89abE/discussion
 
I think you are not getting the point, that you are using XADD with lock,
this doesn't scale at all, you have to understand what i am doing ,
my scalable fifo queues that i have just invented don't use XADD with Lock,
they use scalable counting networks that are truly scalable and they
use a technic that distribute on many fifo queues to be truly scalable,
my fifo queues are truly scalable on NUMA system.
 
Read the following (the counting network is truly scalable, please look at the graph inside the paper):
 
http://people.csail.mit.edu/shanir/publications/HLS.pdf
 
The Scalable and lock-free first-in-first-out queue implementation of
Mark Moir, Ori Shalev, Nir Shavit is patented:
 
Here is there patent:
 
http://www.google.sr/patents/US7836228
 
And here is there paper:
 
http://people.csail.mit.edu/shanir/publications/SPAA2005.pdf
 
 
But my scalable FIFO queues that i have just invented are freewares , and i think they are better:
 
This is Scalable FIFO queues version 1.0, this is the windows version, the Linux version and C++ version for Windows and Linux are coming..
 
Those are two scalable FIFO queues, one is bounded and the other unbounded, they use a distributed technic over many FIFO queues and they use scalable counting networks so that to be scalable, you can test them on NUMA systems to notice that they are truly scalable.
 
And counting networks are truly scalable and are a special type of balancer networks which count.
 
Look at my port to Delphi and FreePascal of scalable counting networks here:
 
https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
You can download my Scalable FIFO queues from:
 
https://sites.google.com/site/aminer68/scalable-fifo-queues
 
 
 
Thank you,
Amine Moulay Ramdane.
aminer68@gmail.com: Oct 31 12:34PM -0700

Hello,
 
Chris M. Thomasson has reponded to me and posted this:
 
https://groups.google.com/d/topic/lock-free/acjQ3-89abE/discussion
 
I think you are not getting the point, that you are using XADD with lock,
this doesn't scale at all, you have to understand what i am doing ,
my scalable fifo queues that i have just invented don't use XADD with Lock,
they use scalable counting networks that are truly scalable and they
use a technic that distribute on many fifo queues to be truly scalable,
my fifo queues are truly scalable on NUMA system.
 
Read the following (the counting network is truly scalable, please look at the graph inside the paper):
 
http://people.csail.mit.edu/shanir/publications/HLS.pdf
 
The Scalable and lock-free first-in-first-out queue implementation of
Mark Moir, Ori Shalev, Nir Shavit is patented:
 
Here is there patent:
 
http://www.google.sr/patents/US7836228
 
And here is there paper:
 
http://people.csail.mit.edu/shanir/publications/SPAA2005.pdf
 
 
But my scalable FIFO queues that i have just invented are freewares , and i think they are better:
 
This is Scalable FIFO queues version 1.0, this is the windows version, the Linux version and C++ version for Windows and Linux are coming..
 
Those are two scalable FIFO queues, one is bounded and the other unbounded, they use a distributed technic over many FIFO queues and they use scalable counting networks so that to be scalable, you can test them on NUMA systems to notice that they are truly scalable.
 
And counting networks are truly scalable and are a special type of balancer networks which count.
 
Look at my port to Delphi and FreePascal of scalable counting networks here:
 
https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
You can download my Scalable FIFO queues from:
 
https://sites.google.com/site/aminer68/scalable-fifo-queues
 
 
 
Thank you,
Amine Moulay Ramdane.
Florian Weimer <fw@deneb.enyo.de>: Oct 31 02:21PM +0100

* Richard:
 
> SUSE had a similar problem. I understand why they are laggy, but it
> means you have to go out of your way on these linux distros to build
> and redist applications using modern C++.
 
Note that the major distributions now offer supported compilers which
cover newer C++ versions (Toolchain Module for SUSE and Developer
Toolset for Red Hat). So tool availability should be less of a
concern these days.
legalize+jeeves@mail.xmission.com (Richard): Oct 31 06:17PM

[Please do not mail me a copy of your followup]
 
Florian Weimer <fw@deneb.enyo.de> spake the secret code
>cover newer C++ versions (Toolchain Module for SUSE and Developer
>Toolset for Red Hat). So tool availability should be less of a
>concern these days.
 
Good news! Thanks for that.
--
"The Direct3D Graphics Pipeline" free book <http://tinyurl.com/d3d-pipeline>
The Terminals Wiki <http://terminals-wiki.org>
The Computer Graphics Museum <http://computergraphicsmuseum.org>
Legalize Adulthood! (my blog) <http://legalizeadulthood.wordpress.com>
Jerry Stuckle <jstucklex@attglobal.net>: Oct 31 02:11PM -0400

On 10/30/2017 8:33 AM, Scott Lurndal wrote:
> either of his immediate predecessors on an annual basis. Perhaps your
> perception of reality filter is too firmly in place to see
> the reality of the moron-in-chief?
 
Yup, and most of those were rolling back Obama's illegal executive
orders. It's going to take a while to unwind 8 years of Obama's damage.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Jerry Stuckle <jstucklex@attglobal.net>: Oct 31 02:15PM -0400

On 10/23/2017 6:19 PM, bitrex wrote:
> life and can't understand why someone wouldn't vote a bloviating,
> washed-up reality TV star president simply for entertainment
> value/enjoying it being upsetting to people they don't like
 
The American Right is the party of people who work and take
responsibility for their actions, instead of trying to blame the other
guy for everything. That's why we elected an Executive to run the
Executive Branch of the government. He's draining the swamp - and
Democrats can't stand to see their freebies going away.
 
Trump isn't a TV star. He is a real executive who has employed tens of
thousands (or more) people around the world and added billions to the
world's economy. Unlike the previous President who's only jobs were to
be on the board of a Non-Profit and a politician.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
Juha Nieminen <nospam@thanks.invalid>: Oct 31 05:56AM

> This message is for those who will be saved.
 
So you are spamming this newsgroup by preaching to the choir.
 
Your hypocrisy knows no bounds.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Oct 31 04:10AM -0700

On Tuesday, October 31, 2017 at 1:56:32 AM UTC-4, Juha Nieminen wrote:
> Your hypocrisy knows no bounds.
 
It's why I need a savior. You do too, Juha. We al do, and that's why Jesus
entered this world: to save all who will be saved.
 
Be one of them, Juha. You are precious and priceless and God wants you
to be a part of His Kingdom. He looks at you with awe and wonder, and He
sent His Son to make a way for you.
 
--
Rick C. Hodgin
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Oct 31 09:11AM -0700

On Monday, October 30, 2017 at 5:30:05 AM UTC-4, Rick C. Hodgin wrote:
> He is, with a consuming fire that will purge your soul, and
> bring about real change that will endure.
 
> God awaits you, oh sleeper.
 
I was asked this today by someone in email:
 
-----[ Begin ]-----
> Xyz wrote:
> If God can do everything why does He need any of us to do something?
 
My reply:
 
He doesn't. We are invited to be a part of His Kingdom. It is a gift,
but it is also part of His plan.
 
Consider: If you were wealthy, and had great skill, you could build vast
buildings, large campuses, fill them with machines and devices to build all
manner of things from chairs and shoes to superconductors and everything in-
between. But, you would not want to build everything and do everything all
by yourself alone. You would want to hire people to come and do work in
your buildings, with your machines. It would be to your credit what you did
in building everything, but it would also be lonely to do it alone. You
would want companionship, fellowship, and for people to see what you have
done.
 
God created the whole universe. He has purposes for fellowship with us on
those scales.
 
We (mankind) were the only beings of all creation made in His image and
likeness. We literally look like God, just as your child would look like
you. Your child wouldn't look like a dog or a deer or a fish, and even
though God created angels and planets and gold and dolphins and horses and
everything else, we were the only creation made in His own image and
likeness.
 
God is creating for Himself a family. He made Adam first, and he was alone.
God said, "It is not good for the man to be alone," so He put Adam to sleep
and took a rib and made a woman for Adam and brought her to him... the first
marriage. Flash-forward to Jesus' death at the cross, and the thing He did
there on the cross was take away the sin of those who put their faith in
Him, so that they could be saved. The last thing that was done to Him
before He was taken down from that cross was for Him to be poked in the side
after He died, and out came blood and water, the very thing that comes out
during a new birth. Jesus, by His own death at the cross, birthed all of
those who believe in Him to eternity. We are called "the bride of Christ"
in the Bible, which means He made for Himself a bride, which was also taken
out of His own side at the cross in His death. He purified us and made us
spotless by His own grace and mercy, so that we could be with Him rightly
in Heaven.
 
We are all sinful wicked evil people. Even if we're not that way all the
time, there are times when we do horrible things. But God is and remains
perfect. He could not have a bride for Himself that was basically a cheap
woman, one undeserving of honor because of her bad behavior. So, God has
made His own bride completely spotless by His own sanctification.
 
There is such a teaching here, Xyz. It's the greatest conveyance of love
and creation we could ever know. It is God Himself making Himself a bride,
and making her full of honor and glory and chastity, which is that which
Christ gives us at the cross.
 
--
Rick C. Hodgin
aminer68@gmail.com: Oct 30 05:11PM -0700

Hello...
 
Read more about my algorithms..
 
I have invented many algorithms, and i have just invented my scalable FIFO queues that are scalable on NUMA systems.
 
Here they are:
 
https://sites.google.com/site/aminer68/scalable-fifo-queues
 
My software projects are more stable and fast..
 
I have gotten my Diploma in Microelectronics and i have taken courses on informatics to get my Diploma in Microelectronics, it is not a college level diploma, my Diploma is a university level Diploma, and i am an experienced software developer, my software projects are more stable and fast, i have tested them thoroughly for a long time, so now you can be more confident with them.
 
You can download all my software projects from:
 
https://sites.google.com/site/aminer68/
 
 
Thank you,
Amine Moulay Ramdane.
aminer68@gmail.com: Oct 30 04:37PM -0700

Hello....
 
 
My Scalable FIFO queues are here..
 
This is Scalable FIFO queues version 1.0, this is the windows version, the Linux version and C++ version are coming..
 
Author: Amine Moulay Ramdane
 
Description:
 
Those are two scalable FIFO queues, one is bounded and the other unbounded, they use a distributed technic over many FIFO queues and they use scalable counting networks so that to be scalable, you can test them on NUMA systems to notice that they are truly scalable.
 
And counting networks are truly scalable and are a special type of balancer networks which count.
 
Look at my port to Delphi and FreePascal of scalable counting networks here:
 
https://sites.google.com/site/aminer68/scalable-counting-networks-for-delphi-and-freepascal
 
You can download my Scalable FIFO queues from:
 
https://sites.google.com/site/aminer68/scalable-fifo-queues
 
 
- Platform: Windows and Linux(x86)
 
Required FPC switches: -O3 -Sd -dFPC -dFreePascal
 
-Sd for delphi mode....
 
Required Delphi switches: -$H+ -DDelphi
 
For Delphi XE-XE7 use the -DXE switch
 
{$DEFINE CPU32} and {$DEFINE Windows32} for 32 bit systems
 
{$DEFINE CPU64} and {$DEFINE Windows64} for 64 bit systems
 
 
Thank you,
Amine Moulay Ramdane.
aminer68@gmail.com: Oct 30 04:51PM -0700

Hello,
 
You have to pass the number of queues to the constructor so that to scale.
 
 
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: