Wednesday, October 16, 2019

Digest for comp.programming.threads@googlegroups.com - 20 updates in 2 topics

Bonita Montero <Bonita.Montero@gmail.com>: Oct 16 01:48PM +0200

Amine, a quest for you:
Database-servers and operating-system-kernels mostly use LRU as
the scheme to evict old buffers from their cache. One issue with
LRU is, that an LRU-structure can't be updated by multiple threads
simultaneously. So you have to have a global lock.
I managed to write a LRU-caching-class that can update the links
in the LRU-list to put the most recent fetched block to the head
of the list without any lock in almost any acccess. Only when
flushing an entry or inserting a new I have to lock the structure
completely; but in contrast to cache-hits this has usually a mag-
nitude lower frequency because of the slowness of disk-/ssd-access,
so this doesn't relly hurt.
The algorithm is partitiylly locked, partitially lock-free. Even
the case when putting cache hits to the head has to be processed
in locked mode in very rare cases. And as I said inserting and
flushing is conventional locked access.
So the quest is for you: Can you guess what I did?
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:14PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
Elephant Man <conanospamic@gmail.com>: Oct 15 08:13PM

Article d'annulation posté via Nemo.
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.programming.threads+unsubscribe@googlegroups.com.

No comments: