[TTreeProcessorMT][ROOT-9791] Create a max number of tasks per file processed
and not one task per cluster. We need to "fuse" together clusters if the number of clusters is to big with respect to the number of workers, otherwise we can incur in an overhead which is so big to make the parallelisation detrimental for performance. For example, this is the case when following a merging of many small files a file contains a tree with many entries and with clusters of just a few entries. The criterium according to which we fuse clusters together is to have at most TTreeProcessorMT::GetMaxTasksPerFilePerWorker() clusters per file per slot. For example: given 2 files and 16 workers, at most 16 * 2 * TTreeProcessorMT::GetMaxTasksPerFilePerWorker() clusters will be created, at most 16 * TTreeProcessorMT::GetMaxTasksPerFilePerWorker() per file.
Loading
Please register or sign in to comment