Skip to content
Snippets Groups Projects
  1. Apr 03, 2020
  2. Apr 01, 2020
  3. Mar 24, 2020
    • Axel Naumann's avatar
      [treeplayer] Construct TThreadedObject after enabling IMT: · 99af46c1
      Axel Naumann authored
      Before, the TThreadedObject had to guess 64 slots were enough for the use case of TTreeProcessorMT - and with 256 cores that was not the case.
      Be explicit about the use of IMT for TThreadedObject by providing the new argument.
      IMT is enabled before the construction of the TThreadedObject (and thus TThreadedObject now knows how many slots to expect), because the pool is constructed before.
      If the order ever gets changes, the TThreadedObject will complain as it is now told to expect IMT usage.
      
      A future TTreeProcessorMT ctor overload might provide a specific thread count, and can pass it down to TThreadedObject.
      99af46c1
  4. May 09, 2019
  5. Jan 21, 2019
    • Danilo Piparo's avatar
      [TTreeProcessorMT][ROOT-9791] Create a max number of tasks per file processed · 4e2ad81f
      Danilo Piparo authored
      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.
      4e2ad81f
  6. Nov 28, 2018
  7. Nov 15, 2018
  8. Nov 13, 2018
  9. Oct 15, 2018
  10. Jun 08, 2018
  11. Jun 06, 2018
  12. Jun 05, 2018
  13. Jun 04, 2018
  14. Mar 01, 2018
  15. Nov 10, 2017
    • Enric Tejedor Saavedra's avatar
      Support tree/chain friends in TTreeProcessorMT. · 6173990f
      Enric Tejedor Saavedra authored
      This implementation intends to pave the way for the support of
      tree/chain friends in TDataFrame MT. For that purpose, now
      TTreeProcessorMT stores the information about the friends of the
      processed tree/chain.
      
      In order to provide support for friends, this implementation
      proposes a new way of dealing with chains in TTreeProcessorMT.
      The old way consisted in operating file by file, obtaining a TTree
      from each file and then constructing a TTreeReader for the
      particular range a task was going to process in that TTree.
      
      The aforementioned implementation prevented the support for
      friend chains, since there was no chain to add the friends to,
      only trees. In this new implementation, TTreeProcessorMT always
      constructs a chain per TTreeView, from which TTreeReaders are
      created to operate on ranges of the chain. If necessary, friends
      could be added to that chain.
      6173990f
  16. Aug 08, 2017
Loading