VIRGIL: Very sImple thRead pool desiGned with the easy Integration goaL in mind
June 18, 2024 ยท View on GitHub

Description
This is a header-only C++ library that implements a simple thread pool using the modern C++ language. VIRGIL's design aims for an easy integration with other C++ code.
Motivation
I have designed VIRGIL because of our needs to integrate a thread pool within the code generated by our compilers, which are described by our papers. The complexity of a compiler leads to the need of simplifying drastically the integration with external manually-written code. This motivated us to design VIRGIL. We hope it will be useful for other people as well.
Testing VIRGIL
There are two set of tests: the ones for testing the whole thread pool, and the ones that only tests queues that are within VIRGIL.
For the former, go to tests/pool and run make.
For the latter, go to tests/queue and run make.
Credits
VIRGIL has been inspired by several projects. The main ones are A Platform-Independent Thread Pool Using C++14 and A Fast Lock-Free Queue for C++.
License
MIT License
Logo

Virgil is the name of our cat my wife and I have taken home from the Gifford cat shelter just before moving to Chicago from Boston.