Skip to content

Range types according to headnode types in distributed RDF#8534

Merged
vepadulano merged 3 commits intoroot-project:masterfrom
vepadulano:distrdf-separate-ranges
Jul 5, 2021
Merged

Range types according to headnode types in distributed RDF#8534
vepadulano merged 3 commits intoroot-project:masterfrom
vepadulano:distrdf-separate-ranges

Conversation

@vepadulano
Copy link
Copy Markdown
Member

This PR addresses step 2 of #8391

Create a different Range type per each head node type. This makes the passing of information more modular, allowing sending only a couple of integers in the case of empty RDF , or adding info about friend trees in the case of a tree based RDF

@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

Copy link
Copy Markdown
Contributor

@eguiraud eguiraud left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but see the two comments below

@root-project root-project deleted a comment from tamanlegend Jun 25, 2021
@root-project root-project deleted a comment from tamanlegend Jun 25, 2021
@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@lgtm-com
Copy link
Copy Markdown

lgtm-com bot commented Jul 2, 2021

This pull request introduces 1 alert when merging edc1d78 into 7c4f932 - view on LGTM.com

new alerts:

  • 1 for Incomplete ordering

@vepadulano
Copy link
Copy Markdown
Member Author

The warning from LGTM bot is about the ChainCluster class not defining all ordering functions. Will implement that in next commit

@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

2 similar comments
@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link
Copy Markdown

Build failed on ROOT-debian10-i386/cxx14.
Running on pcepsft11.dyndns.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See console output.

Failing tests:

The `RangesBuilder` class has been removed in favor of having free functions that serve the same purpose.
`get_clustered_ranges` creates ranges for distributed execution based on clusters of some TTree/TChain base dataset. It is called by `TreeHeadNode`
`get_balanced_ranges` creates roughly equal-sized chunks of entries. It is called by `EmptySourceHeadNode`

The `build_range` methods of the head node classes now call directly the free functions in the `Ranges.py` module.
In `TreeHeadNode`, split the work in two steps: first gather the clusters and do some checks against the current value of `npartitions`, then actually compute the ranges.
Various named tuples where used in this file to store information about the dataset. Remove all of them in favor of full Python classes, for documentation purposes.
@vepadulano vepadulano force-pushed the distrdf-separate-ranges branch from 7728310 to 303929c Compare July 5, 2021 09:41
@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@vepadulano
Copy link
Copy Markdown
Member Author

I rebased to clean the history a bit, if tests pass I will merge

@phsft-bot
Copy link
Copy Markdown

Build failed on ROOT-ubuntu16/nortcxxmod.
Running on sft-ubuntu-1604-1.cern.ch:/build/workspace/root-pullrequests-build
See console output.

Failing tests:

@vepadulano vepadulano merged commit 7950e58 into root-project:master Jul 5, 2021
@phsft-bot
Copy link
Copy Markdown

Build failed on ROOT-debian10-i386/cxx14.
Running on pcepsft10.dyndns.cern.ch:/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-07-05T17:09:25.758Z] CMake Error at /home/sftnight/build/workspace/root-pullrequests-build/build/TBB-prefix/src/TBB-stamp/TBB-build-Release.cmake:49 (message):

@vepadulano vepadulano deleted the distrdf-separate-ranges branch October 30, 2021 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants