Releases: nim-works/loony
Releases · nim-works/loony
Cacheline optimisations
Introduces an opt-out rotating index which steps over cachelines to reduce false sharing in high contention.
hi-fi sanitizers
0.3.0 hi-fi sanitizers
rm tsan warnings
0.2.1 rm tsan warnings
0.2.0
rm tsan warning
0.1.14 rm tsan warning
hasten
Futex now includes support for macosx/darwin ulock primitives.
0.1.12 Futex now includes support for macosx/darwin ulock primitives.
0.1.11
Bug fixes for Linux compatibility
0.1.9
Changelog
Loony
- Added destroy proc
Wards
- Added PoolWaiter flag
- Pool waiter is used when threads are using loony as a work queue in a threadpool environment. Pops that would result in a nil return instead use a futex to await on the queue. When a thread successfully pushes, they wake a waiting thread that will then pop the item off. There is lots of room to optimise this within the loony code, however this is the best that can be done on the Ward side.
- The killWaiters proc is used to awaken threads and force them to return a nil value instead of waiting.