NEW FEATURES
ProgessCounter
(thanks @tylermorganwall)BUG FIX
BUG FIX
detectCores.cpp
.REQUIREMENTS
Systemrequirements: C++11
BUG FIX
NEW FEATURE
LdFlags()
to portably generate linker flags for libatomic
/pthread
. See README for details.NEW FEATURE
RcppThread::Rcerr
(#60, thanks to
@appelmar).BUG FIX
BUG FIX
NEW FEATURES
Add R function detectCores()
(#48).
Add classes ProgressCounter
and ProgressBar
for tracking progress in long-
running loops (#49).
Increased speed due to work-stealing and lock-free pops (#51, #52, #53).
Free-standing parallelFor()
and parallelForEach()
functions now dispatch
to a global thread pool that persists for the entire session. This
significantly speeds up programs that repeatedly call these functions. (#54)
New free-standing push()
, pushReturn()
/async()
, and wait()
, mirroring
functionality from ThreadPool
. (#56)
Option to resize a thread pool (#56).
Limit number of threads in unit tests.
Fixed typos in package vignette.
BUG FIXES
Fix portability issues related to native_handle_type
.
Fix signed/unsigned comparison in parallelFor()
.
Fix signed/unsigned warnings in unit tests.
DEPENDENCIES
NEW FEATURES
New vignette available, see browseVignettes("RcppThread")
.
New functions parallelFor()
and ForEach()
allowing parallel for
loops
with load balancing. Can also be called as method of a ThreadPool
.
Options to override std::thread
and std::cout
with RcppThread equivalents
using preprocessor variables RCPPTHREAD_OVERRIDE_THREAD
and
RCPPTHREAD_OVERRIDE_COUT
.
Several minor performance optimizations.
NEW FEATURE
ThreadPool::map()
that allows to map a function a list of items.NEW FEATURE
ThreadPool
can now be instantiated with zero threads in the pool. It
will then do all work pushed to it in the main thread.NEW FEATURE
ThreadPool
has a new method wait()
that waits for all jobs to be done
without joining the threads. This way the thread pool can be re-used for
different types of tasks that need to be run sequentially.BUG FIX
DEPENDS
R (>= 3.3.0)
.BUG FIX
BUG FIX
Rcout
instance in header file (#9; couldn't link
shared library on r-hub, see discussion in #8) Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.