معرفی شرکت ها


atomic-queue-1.4-1.fc37.src.rpm


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

C++ lockless queue
ویژگی مقدار
سیستم عامل Linux
توزیع Fedora 37
مخزن Fedora Everything i686
نام بسته atomic-queue
نام فایل بسته atomic-queue-1.4-1.fc37.src.rpm
نسخه بسته 1.4
انتشار بسته 1.fc37
معماری بسته i686
نگهدارنده -
تاریخ ساخت Sun 02 Apr 2023 05
هاست سازنده buildvm-x86-29.iad2.fedoraproject.org
نوع بسته .rpm
آدرس صفحه اصلی https://github.com/max0x7ba/atomic_queue
مجوز MIT
حجم دانلود 1.8M
حجم نصب 1.813M
C++14 multiple-producer-multiple-consumer lockless queues based on circular buffer with std::atomic. It has been developed, tested and benchmarked on Linux, but should support any C++14 platforms which implement std::atomic. The main design principle these queues follow is minimalism: the bare minimum of atomic operations, fixed size buffer, value semantics. These qualities are also limitations: • The maximum queue size must be set at compile time or construction time. The circular buffer side-steps the memory reclamation problem inherent in linked-list based queues for the price of fixed buffer size. See Effective memory reclamation for lock-free data structures in C++ for more details. Fixed buffer size may not be that much of a limitation, since once the queue gets larger than the maximum expected size that indicates a problem that elements aren’t processed fast enough, and if the queue keeps growing it may eventually consume all available memory which may affect the entire system, rather than the problematic process only. The only apparent inconvenience is that one has to do an upfront back-of-the-envelope calculation on what would be the largest expected/acceptable queue size. • There are no OS-blocking push/pop functions. This queue is designed for ultra-low-latency scenarios and using an OS blocking primitive would be sacrificing push-to-pop latency. For lowest possible latency one cannot afford blocking in the OS kernel because the wake-up latency of a blocked thread is about 1-3 microseconds, whereas this queue’s round-trip time can be as low as 150 nanoseconds. Ultra-low-latency applications need just that and nothing more. The minimalism pays off, see the throughput and latency benchmarks. Available containers are: • AtomicQueue - a fixed size ring-buffer for atomic elements. • OptimistAtomicQueue - a faster fixed size ring-buffer for atomic elements which busy-waits when empty or full. • AtomicQueue2 - a fixed size ring-buffer for non-atomic elements. • OptimistAtomicQueue2 - a faster fixed size ring-buffer for non-atomic elements which busy-waits when empty or full. These containers have corresponding AtomicQueueB, OptimistAtomicQueueB, AtomicQueueB2, OptimistAtomicQueueB2 versions where the buffer size is specified as an argument to the constructor. Totally ordered mode is supported. In this mode consumers receive messages in the same FIFO order the messages were posted. This mode is supported for push and pop functions, but for not the try_ versions. On Intel x86 the totally ordered mode has 0 cost, as of 2019. Single-producer-single-consumer mode is supported. In this mode, no read-modify-write instructions are necessary, only the atomic loads and stores. That improves queue throughput significantly. Move-only queue element types are fully supported. For example, a queue of std::unique_ptr<T> elements would be AtomicQueue2B<std::unique_ptr<T>> or AtomicQueue2<std::unique_ptr<T>, CAPACITY>.


جایگزین ها

بسته نسخه معماری مخزن
atomic-queue-1.0-6.fc37.src.rpm 1.0 i686 Fedora Everything
atomic-queue-devel-1.0-6.fc37.noarch.rpm 1.0 noarch Fedora Everything
atomic-queue-devel-1.4-1.fc37.noarch.rpm 1.4 noarch Fedora Everything


نیازمندی

مقدار نام
- boost-devel
- gcc-c++
- meson


ارائه دهنده

مقدار نام
= 1.4-1.fc37 atomic-queue-devel


نحوه نصب


نصب پکیج rpm atomic-queue:

    dnf install atomic-queue-1.4-1.fc37.src.rpm


فایل ها

مسیرها
atomic-queue.spec


گزارش تغییرات

تاریخ آخرین تغییر جزئیات
2023-04-02

Update to 1.4 (close RHBZ#2183486)

2023-02-25

Update to 1.1 (close RHBZ#2173288)

2023-02-25

Indicate dirs. in files list with trailing slashes

2022-07-31

Confirm that License is SPDX MIT (no License field change)

2022-07-20

Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

2022-01-19

Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

2021-12-16

Let the devel subpackage be noarch

2021-12-09

Fix release number—no longer a pre-release

2021-12-09

Update to 1.0 (close RHBZ#2030645)

2021-10-22

Update to 7013a8b (support up to 256 byte cache lines)

2021-10-20

Update to ee3d91c: fix RHBZ#1994598, fix RHBZ#1994599
Enable verbose test output
Run the example as an additional test

2021-10-19

Update to commit dfd2cbe

2021-09-24

We really don’t need to adjust the C++ standard for the tests

2021-08-16

Fix an long line in the -devel package description

2021-08-16

Initial package