Skip to content

A fast, lock-free, cross-platform C++11 thread pool library that is aiming to be lightweight and simple.

License

Notifications You must be signed in to change notification settings

tghosgor/threadpool11

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

threadpool11 threadpool11

A fast, almost lock-free, cross-platform, full CPU utilizing thread pool implementation using C++11 features.

You can find the dead simple API documentation on header comments.

This project was initially developed in just a few hours of free time as I could not find a simple lightweight thread pooling library for my needs.

Available on AUR.

threadpool11 performance compared to OpenMP

Here is a result of OpenMP demo found in the tree.

Your machine's hardware concurrency is 8

threadpool11 execution took 22704 milliseconds.

threadpool11 (no future) execution took 21198 milliseconds.

openmp execution took 21663 milliseconds.

openmp execution (dynamic schedule) took 21335 milliseconds.

gcc -v gcc version 8.2.1 20181127 (GCC)

Testing code can be found in project tree.

I will be glad to hear about the suggestions/ideas you have about the project, via the issue reporting section.

All non '-dev' branches are safe to use but prefer the latest version.

Building & Installing

As a Static Library

% mkdir -p build
% cd build
% cmake ..
% make
% make test
% make install

As a Shared Library

% mkdir -p build
% cd build
% cmake -DBUILD_SHARED_LIBS:BOOL=ON ..
% make
% make test
% make install

About

A fast, lock-free, cross-platform C++11 thread pool library that is aiming to be lightweight and simple.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published