Speaker
Dr
Valeri FINE
(BROOKHAVEN NATIONAL LABORATORY)
Description
With the era of multi-core CPUs, software parallelism is becoming both affordable as well as a practical need. Especially interesting is to re-evaluate the adaptability of the high energy and nuclear physics sophisticated, but time-consuming, event reconstruction frameworks to the reality of the multi-threaded environment.
The STAR offline OO ROOT-based framework implements a well known "standard model" composed of chained modules, where input for each module is the output of the other modules. At its basic principle, modules do not communicate with each other directly and act as consumers and providers of data structures. They use the framework via the special “query” / “publish” API to query the presence of the input data and publish the output results the modules produce.
We will show that by complementing the base framework with the ability to start several modules in parallel and synchronize the global data access between the "consumer" modules and "producer", one can transparently enhance the existent packages to leverage the multi-core hardware capability. Such approach allows re-using the existing offline software designed for the single thread batch applications in the multi-threaded environment if needed. However, we realize that the "query"/"publish" paradigm is not sufficient to run the multi-threaded application effectively. It should be complemented with an API to “register” the module output to notify the framework members about an output dataset “to be produced soon”. With such addition, the receiving module thread can be automatically suspended if the data it has requested is not ready yet.
We will explain how the STAR Offline Framework was modified to test the present approach by building the sophisticated interactive real time applications.
Authors
Dr
Jerome LAURET
(BROOKHAVEN NATIONAL LABORATORY)
Dr
Valeri FINE
(BROOKHAVEN NATIONAL LABORATORY)
Mr
Victor PEREVOZTCHIKOV
(BROOKHAVEN NATIONAL LABORATORY)