Lock free data structures
-
I was thinking today that it should be relatively easy to implement lock free data structures using Thread Local Storage but surprisingly Google didn't reveal anything that really stood out or even a library of basic data structures that have been built using this. Is there something I am missing?
I always think that the idea of a compiler that compiles another compiler or itself is rather incestuous in a binary way. - Colin Davies My .Net Blog
-
I was thinking today that it should be relatively easy to implement lock free data structures using Thread Local Storage but surprisingly Google didn't reveal anything that really stood out or even a library of basic data structures that have been built using this. Is there something I am missing?
I always think that the idea of a compiler that compiles another compiler or itself is rather incestuous in a binary way. - Colin Davies My .Net Blog
Hi, thread local storage offers storage that is private to the thread. When threads cooperate, they have to share data; thread local data does not help here, it prevents sharing. To share data safely most often one needs a synchronization mechanism; a lock is one example thereof. :)
Luc Pattyn [My Articles] [Forum Guidelines]
-
Hi, thread local storage offers storage that is private to the thread. When threads cooperate, they have to share data; thread local data does not help here, it prevents sharing. To share data safely most often one needs a synchronization mechanism; a lock is one example thereof. :)
Luc Pattyn [My Articles] [Forum Guidelines]
-
I was thinking today that it should be relatively easy to implement lock free data structures using Thread Local Storage but surprisingly Google didn't reveal anything that really stood out or even a library of basic data structures that have been built using this. Is there something I am missing?
I always think that the idea of a compiler that compiles another compiler or itself is rather incestuous in a binary way. - Colin Davies My .Net Blog
Sijin wrote:
Lock free data structures
There are many lock free algorithms, unfortunately most are patented. But as pointed out local storage comes off the thread's private memory storage and is by definition "local" only to that thread and cannot be shared. I keep debating on writing something for this, and have been encouraged to do so.... started once, but it is not as easy concept as it sounds. It gets complicated real quick.
_________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)
-
Sijin wrote:
Lock free data structures
There are many lock free algorithms, unfortunately most are patented. But as pointed out local storage comes off the thread's private memory storage and is by definition "local" only to that thread and cannot be shared. I keep debating on writing something for this, and have been encouraged to do so.... started once, but it is not as easy concept as it sounds. It gets complicated real quick.
_________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)
Mind you -- that most are patented it a great thing -- you can read exactly how it is done. www.uspto.gov or patents.google.com. I'm not advocating IP theft, but the constitutional point of the patent system is to exchange temporary monopoly for full public disclosure. The best parts of a patent for non-lawyers is the background and following 'spec' (specification). Good luck, spin-vec
-
Mind you -- that most are patented it a great thing -- you can read exactly how it is done. www.uspto.gov or patents.google.com. I'm not advocating IP theft, but the constitutional point of the patent system is to exchange temporary monopoly for full public disclosure. The best parts of a patent for non-lawyers is the background and following 'spec' (specification). Good luck, spin-vec
spin vector wrote:
you can read exactly how it is done.
I am quite familiar with how it is done. I was pointing out that most algorithms are patented, as both a warning, and information since as you pointed out they all can be searched online. What someone chooses to do with that information, learn, use, or find another way is up to them.
_________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)