NISTfit: A Natively Multithreaded C++11 Framework for Model Development
The current trend in computer architecture is for increasingly parallel computation while the clock frequency stagnates. The increase in computing speed is achieved by dividing a process into several threads which are executed in parallel on multiple processors, processors with multiple cores, cores that are able to handle multiple threads (hyper-threading), graphical processing units (GPU), or co-processors. In order to take advantage of these new architectures, algorithms that have historically been implemented for serial evaluation need to be refactored for parallelization. In this work, a native multithreading framework in C++11 for scientific and engineering model development is presented.