readerwriterqueue
HPX
Our great sponsors
readerwriterqueue | HPX | |
---|---|---|
4 | 15 | |
3,441 | 2,417 | |
- | 2.6% | |
0.0 | 9.8 | |
10 days ago | 6 days ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | Boost Software License 1.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
readerwriterqueue
-
MPMC suggestions where messages are sent to all consumers ?
I have looked at the commonly recommended - https://github.com/cameron314/readerwriterqueue - https://github.com/rigtorp/MPMCQueue
-
How to figure out the cause of my pi 4 crashing?
The PREEMPT error looks like its a C module but I cannot tell from he little snippet of the log - you may do better to move the *arr and Synchthing into Docker containers to keep the OS cleaner.
-
Qt 6.3 Released
For audio DSP in a Qt app I have good success with using a lock-free queue (e.g. https://github.com/cameron314/readerwriterqueue) to communicate from / to the UI threads. Code more-or-less looks like
connect(model, &ModelObject::somethingChanged, [=] {
-
ConorWilliams/ConcurrentDeque
We recently removed readerwriterqueue from our project due to issues and replaced with simple locking queue (and got better performance in the result). Your code looks interesting, but we can't use it due to C++17 usage.
HPX
- Does anyone know any good open source project to optimize?
- Looking for projects to contribute to
-
What are some C++ projects with high quality code that I can read through?
https://github.com/STEllAR-GROUP/hpx Modern C++ concepts incorporated in a threading library. Lots of useful techniques used in there and we are trying to keep our code base very tidy. Feel free to chime in our libera channel #ste||ar if you have any questions.
-
Any C++ open source projects for beginners?
https://github.com/STEllAR-GROUP/hpx Welcoming community + we have been part of GSoC for 4-5 years now so feel free to apply there when it opens ;)
-
Getting started with first HPC project
You definitely do not want to learn Boost, trust me. The cudatoolkit is fine, HPX is great, so are Dask, and Ray. I do not recommend MPI unless those computers you have use InfiniBand.
-
Questions about writing my own CFD code
I found this interesting library that might fit your goal.
-
John "God" Carmack: C++ with a C flavor is still the best (also: Python performance "keeps hitting me in the face")
I personally like the ideas in Parallelism v2 TS, which is available in for libstdc++ 11 onwards. The reference implementation is a library named Vc (afaik Vc is the most popular SIMD library for C++), and this has also been implemented in recent versions of HPX.
-
Is there any good reason not to build an open-source C++ project on Intels oneTBB?
I am aware of DAGs of task based threading library like Taskflow and HPX however the benefit they have is not obvious to me, as the following sequential section depends on the parallel part being completed fully. If you want to suggest elaboration on the benefits of this approach would be welcome.
-
How to publish a paper about my own C++ software
Github: https://github.com/STEllAR-GROUP/hpx
-
Would anyone be interested in an HPC coroutine library for MPI?
We're working on something similar, but based on sender/receiver in HPX (a lightweight threading runtime) and DLA-Future (distributed linear algebra currently based on (HPX) futures; based on sender/receiver in the future). With senders-as-awaitables this would also get you coroutine support for asynchronous MPI calls for free. We don't have that yet, but it's planned. In the meantime libunifex should be able to fill in the gaps.
What are some alternatives?
moodycamel - A fast multi-producer, multi-consumer lock-free concurrent queue for C++11
Taskflow - A General-purpose Parallel and Heterogeneous Task Programming System
CUB - THIS REPOSITORY HAS MOVED TO github.com/nvidia/cub, WHICH IS AUTOMATICALLY MIRRORED HERE.
Thrust - [ARCHIVED] The C++ parallel algorithms library. See https://github.com/NVIDIA/cccl
MPMCQueue.h - A bounded multi-producer multi-consumer concurrent queue written in C++11
RaftLib - The RaftLib C++ library, streaming/dataflow concurrency via C++ iostream-like operators
BlockingCollection - C++11 thread safe, multi-producer, multi-consumer blocking queue, stack & priority queue class
libcds - A C++ library of Concurrent Data Structures
Boost.Compute - A C++ GPU Computing Library for OpenCL
C++ Actor Framework - An Open Source Implementation of the Actor Model in C++
ArrayFire - ArrayFire: a general purpose GPU library.