root icon indicating copy to clipboard operation
root copied to clipboard

fix: speed up `RDataFrame::Display`

Open ianna opened this issue 1 year ago • 34 comments

This Pull request:

Do not use cling::printValue for printing the column elements of the arithmetic types.

Changes or fixes:

This require a proper specialisation, however it already gives x10 performance improvement on my laptop.

Checklist:

  • [ ] tested changes locally
  • [ ] updated the docs (if necessary)

This PR fixes #

fixes #14511

@vepadulano - FYI

ianna avatar Feb 13 '24 16:02 ianna

Can one of the admins verify this patch?

phsft-bot avatar Feb 13 '24 16:02 phsft-bot

@phsft-bot build

hahnjo avatar Feb 13 '24 17:02 hahnjo

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default How to customize builds

phsft-bot avatar Feb 13 '24 17:02 phsft-bot

Build failed on ROOT-ubuntu2004/python3. Running on root-ubuntu-2004-1.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 13 '24 20:02 phsft-bot

Build failed on ROOT-ubuntu2204/nortcxxmod. Running on root-ubuntu-2204-3.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 13 '24 20:02 phsft-bot

Build failed on ROOT-performance-centos8-multicore/soversion. Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 02:02 phsft-bot

Test Results

    12 files      12 suites   2d 18h 44m 13s :stopwatch:  2 566 tests  2 563 :white_check_mark: 0 :zzz: 3 :x: 28 846 runs  28 842 :white_check_mark: 0 :zzz: 4 :x:

For more details on these failures, see this check.

Results for commit 84dfa25f.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar Feb 14 '24 08:02 github-actions[bot]

@phsft-bot build

hahnjo avatar Feb 14 '24 11:02 hahnjo

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default How to customize builds

phsft-bot avatar Feb 14 '24 11:02 phsft-bot

@phsft-bot build

hahnjo avatar Feb 14 '24 11:02 hahnjo

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default How to customize builds

phsft-bot avatar Feb 14 '24 11:02 phsft-bot

@vepadulano - the RDF Display tests will fail to compare the strings with floats due to different precision between std::to_string and cling::printValue. I'll leave it to you to decide what you want to do: either update the tests or change the precision when floats are converted to a string.

ianna avatar Feb 14 '24 11:02 ianna

Build failed on ROOT-ubuntu2004/python3. Running on root-ubuntu-2004-1.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 12:02 phsft-bot

Build failed on ROOT-ubuntu2204/nortcxxmod. Running on root-ubuntu-2204-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 12:02 phsft-bot

Build failed on windows10/default. Running on null:C:\build\workspace\root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 13:02 phsft-bot

Build failed on ROOT-performance-centos8-multicore/soversion. Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 14:02 phsft-bot

@vepadulano - I think, now all the tests should pass.

ianna avatar Feb 14 '24 15:02 ianna

@hahnjo - could you, please trigger the tests? Thanks!

ianna avatar Feb 14 '24 15:02 ianna

@phsft-bot build

hahnjo avatar Feb 14 '24 15:02 hahnjo

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default How to customize builds

phsft-bot avatar Feb 14 '24 15:02 phsft-bot

Build failed on ROOT-ubuntu2004/python3. See console output.

phsft-bot avatar Feb 14 '24 15:02 phsft-bot

Build failed on ROOT-ubuntu2204/nortcxxmod. Running on root-ubuntu-2204-3.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 17:02 phsft-bot

Build failed on windows10/default. Running on null:C:\build\workspace\root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 19:02 phsft-bot

Build failed on ROOT-performance-centos8-multicore/soversion. Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 14 '24 22:02 phsft-bot

Build failed on mac12arm/cxx20. Running on 194.12.161.128:/Users/sftnight/build/workspace/root-pullrequests-build See console output.

Failing tests:

phsft-bot avatar Feb 15 '24 08:02 phsft-bot

@phsft-bot build

vepadulano avatar Feb 21 '24 17:02 vepadulano

Starting build on ROOT-performance-centos8-multicore/soversion, ROOT-ubuntu2204/nortcxxmod, ROOT-ubuntu2004/python3, mac12arm/cxx20, windows10/default How to customize builds

phsft-bot avatar Feb 21 '24 17:02 phsft-bot