Skip to content

[clad] Initial support of hessian calculation in TFormula using clad#8371

Merged
vgvassilev merged 1 commit intoroot-project:masterfrom
sudo-panda:clad-hessian-tformula
Aug 20, 2021
Merged

[clad] Initial support of hessian calculation in TFormula using clad#8371
vgvassilev merged 1 commit intoroot-project:masterfrom
sudo-panda:clad-hessian-tformula

Conversation

@sudo-panda
Copy link
Copy Markdown
Contributor

TFormula already supports gradient calculation using clad. This commit extends that support for hessian calculation. Thus the hessian generation is done by clad and TFormula wraps it in a trampoline function.

@phsft-bot
Copy link
Copy Markdown

Can one of the admins verify this patch?

@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch from 776aad0 to 9d12fb4 Compare June 8, 2021 13:35
@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

cc: @ioanaif

@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

@lmoneta lmoneta self-assigned this Jun 9, 2021
@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

@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 pcepsft10.dyndns.cern.ch:/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-08-12T11:16:38.618Z] stderr: error: could not read '.git/rebase-apply/head-name': No such file or directory

@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch 3 times, most recently from 76aacc4 to 2a5245b Compare August 15, 2021 21:24
@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

@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.

Errors:

  • [2021-08-16T04:43:10.625Z] stderr: error: Failed to merge in the changes.
  • [2021-08-16T04:43:14.371Z] CMake Error at /home/sftnight/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1045 (message):

@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.

Errors:

  • [2021-08-16T04:43:22.799Z] stderr: error: Failed to merge in the changes.
  • [2021-08-16T04:43:29.656Z] CMake Error at /mnt/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1045 (message):

@phsft-bot
Copy link
Copy Markdown

Build failed on mac11.0/cxx17.
Running on macphsft23.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-08-16T04:43:31.462Z] CMake Error at /Users/sftnight/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1045 (message):

@phsft-bot
Copy link
Copy Markdown

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

Errors:

  • [2021-08-16T04:43:43.383Z] CMake Error at /data/sftnight/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1045 (message):

@phsft-bot
Copy link
Copy Markdown

Build failed on mac1014/python3.
Running on macitois21.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-08-16T04:44:54.793Z] stderr: error: Failed to merge in the changes.
  • [2021-08-16T04:45:02.371Z] CMake Error at /Volumes/HD2/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1045 (message):

@phsft-bot
Copy link
Copy Markdown

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

Errors:

  • [2021-08-16T04:51:33.592Z] CMake Error at C:/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1045 (message):

@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch 2 times, most recently from 150796a to 5a90208 Compare August 16, 2021 07:33
@sudo-panda sudo-panda marked this pull request as ready for review August 16, 2021 07:34
@sudo-panda sudo-panda requested a review from bellenot as a code owner August 16, 2021 07:34
@phsft-bot
Copy link
Copy Markdown

@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch from 5a90208 to f8bcc5c Compare August 17, 2021 09:07
@sudo-panda
Copy link
Copy Markdown
Contributor Author

@lmoneta could you please review the PR?

@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

@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 pcepsft10.dyndns.cern.ch:/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-08-17T12:58:12.949Z] stderr: error: could not read '.git/rebase-apply/head-name': No such file or directory

@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch from f8bcc5c to 74933b5 Compare August 18, 2021 07:40
@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

@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-ubuntu16/nortcxxmod.
Running on sft-ubuntu-1604-4.cern.ch:/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-08-18T08:58:50.669Z] CMake Error at /usr/local/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
  • [2021-08-18T08:58:51.184Z] CMake Error at /mnt/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1117 (message):

@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-08-18T09:55:52.972Z] stderr: error: could not read '.git/rebase-apply/head-name': No such file or directory

@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

@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 pcepsft10.dyndns.cern.ch:/build/workspace/root-pullrequests-build
See console output.

Errors:

  • [2021-08-18T11:40:59.097Z] stderr: error: could not read '.git/rebase-apply/head-name': No such file or directory

Copy link
Copy Markdown
Member

@lmoneta lmoneta left a comment

Choose a reason for hiding this comment

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

Very nice contribution! Thank you for this nice work.
It Looks good, I have just few comments.

@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch from 74933b5 to e072a32 Compare August 18, 2021 14:55
@phsft-bot
Copy link
Copy Markdown

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

Errors:

  • [2021-08-18T15:41:54.965Z] MSBUILD : error MSB4166: Child node "3" exited prematurely. Shutting down. Diagnostic information may be found in files in "C:\Users\sftnight\AppData\Local\Temp" and will be named MSBuild_*.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory.

@sudo-panda
Copy link
Copy Markdown
Contributor Author

@lmoneta could you please look at the replies to your previous comments.

Copy link
Copy Markdown
Member

@lmoneta lmoneta left a comment

Choose a reason for hiding this comment

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

LGTM now.
I have just a small comment on the documentation

TFormula already supports gradient calculation using clad. This commit extends that support for hessian calculation. Thus the hessian generation is done by clad and TFormula wraps it in a trampoline function.
@sudo-panda sudo-panda force-pushed the clad-hessian-tformula branch from e072a32 to 1fae3c8 Compare August 20, 2021 08:00
@vgvassilev
Copy link
Copy Markdown
Member

@phsft-bot build!

@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

@vgvassilev vgvassilev merged commit 35b5aae into root-project:master Aug 20, 2021
@oshadura
Copy link
Copy Markdown
Collaborator

@sudo-panda @vgvassilev FYI after these changes rootbench (https://github.com/root-project/rootbench) is not compiling anymore:

/data/sftnight/workspace/root-benchmark/BUILDTYPE/Release/COMPILER/default/LABEL/performance-cc8/SPEC/default/rootbench/root/hist/hist/TFormulaGradientBenchmarks.cxx: In function ‘void BM_TFormulaPerf(benchmark::State&, const char*, F&&, bool)’:

/data/sftnight/workspace/root-benchmark/BUILDTYPE/Release/COMPILER/default/LABEL/performance-cc8/SPEC/default/rootbench/root/hist/hist/TFormulaGradientBenchmarks.cxx:30:13: error: ‘GradientStorage’ is not a member of ‘TFormula’
   TFormula::GradientStorage result(Npar);
             ^~~~~~~~~~~~~~~

/data/sftnight/workspace/root-benchmark/BUILDTYPE/Release/COMPILER/default/LABEL/performance-cc8/SPEC/default/rootbench/root/hist/hist/TFormulaGradientBenchmarks.cxx:38:19: error: ‘result’ was not declared in this scope
     eval(h, f, x, result.data());

@sudo-panda
Copy link
Copy Markdown
Contributor Author

@oshadura I have put up a PR for that a few minutes ago: root-project/rootbench#233. Could you please review it?

@oshadura
Copy link
Copy Markdown
Collaborator

wonderful! thanks a lot!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants