Skip to content

Conversation

@fwyzard
Copy link
Contributor

@fwyzard fwyzard commented Oct 28, 2025

Following the approval of the work by Lorenzo on "Enhancing CMS Passive Material Modeling in Track Reconstruction Using ACTS" (link), add ACTS as an external to CMSSW to simplify further developments.

Enable the plugins for SVG, Json, Root, DD4Hep, Geant4, Covfie, and Detray, and define individual tools for each Acts plugin and external library.

Backport acts-project/acts#4357 to the v44.0.x branch: implement the Gen3 geometry to detray conversion.

Backport acts-project/acts#4757 to the v44.0.x branch: Update namespace for Nlohmann Json v3.11 and later.

Backport acts-project/acts#4758 to the v44.0.x branch: update Traccc to v0.26.0 to be compatible with Acts v44.0.x, with the corresponding external updates:

  • detary v0.103.0
  • covfie v0.15.2
  • vecmem v1.21.0
  • algebra plugins v0.28.0

Target the CUDA and ROCm architectures supported by CMSSW.

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @fwyzard for branch IB/CMSSW_16_0_X/master.

@akritkbehera, @cmsbuild, @iarspider, @smuzaffar can you please review it and eventually sign? Thanks.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.
cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

cmsbuild commented Oct 28, 2025

cms-bot internal usage

@fwyzard
Copy link
Contributor Author

fwyzard commented Oct 28, 2025

Following the (pre)approval of of the DPS note on "Enhancing CMS Passive Material Modeling in
Track Reconstruction Using ACTS" ¹·²·³, this makes Acts and the Detray geometry available in CMSSW, for further developments and studies.

¹ https://indico.cern.ch/event/1567991/contributions/6756688/attachments/3159465/5612854/DPS_note_CTD.pdf
² https://indico.cern.ch/event/1567991/contributions/6756688/attachments/3159465/5612863/ACTSinCMSSW_DPG_POG.pdf
³ https://indico.cern.ch/event/1567991/contributions/6756688/attachments/3159465/5612855/PosterCTD_Draft.pdf

@fwyzard
Copy link
Contributor Author

fwyzard commented Oct 28, 2025

Currently there are no tests or modules that use Acts in CMSSW.

The tests are available in a separate branch (https://github.com/fwyzard/cmssw/tree/acts_unit_tests): all of the build, and most of them pass. However, I'm not suggesting to add them to CMSSW for the time being, unless there is a request to do so.

Dedicated modules are being developed, and would benefit from having the external available.

@fwyzard fwyzard changed the title Integrate ACTS v44.0.1 (with minimal changes) as en external for CMSSW Integrate ACTS v44.0.1 (with minimal changes) as en external Oct 28, 2025
@fwyzard fwyzard changed the title Integrate ACTS v44.0.1 (with minimal changes) as en external Integrate ACTS v44.0.1 (with minimal changes) as an external Oct 28, 2025
@fwyzard fwyzard force-pushed the IB/CMSSW_16_0_X/master_acts_for_cms branch from 344596d to 01ca53d Compare October 28, 2025 18:36
@cmsbuild
Copy link
Contributor

Pull request #10156 was updated.

acts.spec Outdated
-DCMAKE_CXX_STANDARD=%{cms_cxx_standard} \
-DCMAKE_INSTALL_PREFIX="%{i}" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH="${PYTHON3_ROOT};${XERCES_C_ROOT};${DD4HEP_ROOT};${JSON_ROOT};${EXPAT_ROOT};${ZLIB_ROOT};${GEANT4_ROOT};${BOOST_ROOT};${EIGEN_ROOT};${ROOT_ROOT}%{!?without_cuda:;${CUDA_ROOT}}%{!?without_rocm:;${ROCM_ROOT}}" \
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
-DCMAKE_PREFIX_PATH="${PYTHON3_ROOT};${XERCES_C_ROOT};${DD4HEP_ROOT};${JSON_ROOT};${EXPAT_ROOT};${ZLIB_ROOT};${GEANT4_ROOT};${BOOST_ROOT};${EIGEN_ROOT};${ROOT_ROOT}%{!?without_cuda:;${CUDA_ROOT}}%{!?without_rocm:;${ROCM_ROOT}}" \
-DCMAKE_PREFIX_PATH="%{cmake_prefix_path}" \

cmake_prefix_path macro expands to the install path of all the dependencies

Copy link
Contributor Author

Choose a reason for hiding this comment

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

oh, thanks !

@smuzaffar
Copy link
Contributor

@fwyzard , please add acts dependency in cmssw-tools.spec too otherwise it will not be built

@fwyzard
Copy link
Contributor Author

fwyzard commented Oct 29, 2025

@fwyzard , please add acts dependency in cmssw-tools.spec too otherwise it will not be built

right... will do

@fwyzard fwyzard force-pushed the IB/CMSSW_16_0_X/master_acts_for_cms branch from 01ca53d to 0274100 Compare October 29, 2025 13:49
@cmsbuild
Copy link
Contributor

Pull request #10156 was updated.

@fwyzard
Copy link
Contributor Author

fwyzard commented Oct 29, 2025

Both comments have been addressed.

@fwyzard
Copy link
Contributor Author

fwyzard commented Oct 29, 2025

please test

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5cb548/48891/summary.html
COMMIT: 0274100
CMSSW: CMSSW_16_0_X_2025-10-28-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/10156/48891/install.sh to create a dev area with all the needed externals and cmssw changes.

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5cb548/48891/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5cb548/48891/git-merge-result

Comparison Summary

Summary:

  • You potentially removed 54 lines from the logs
  • Reco comparison results: 5 differences found in the comparisons
  • DQMHistoTests: Total files compared: 51
  • DQMHistoTests: Total histograms compared: 3939953
  • DQMHistoTests: Total failures: 15945
  • DQMHistoTests: Total nulls: 22
  • DQMHistoTests: Total successes: 3923966
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 50 files compared)
  • Checked 218 log files, 188 edm output root files, 51 DQM output files
  • TriggerResults: found differences in 4 / 49 workflows

@smuzaffar
Copy link
Contributor

@fwyzard , can you please relocate bin/this_acts_withdeps.sh and bin/this_acts.sh files https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5cb548/48891/external_checks/relocate/acts.txt . Just adding the following in %post sectiomn should work

%{relocateConfig}bin/this_acts_withdeps.sh
%{relocateConfig}bin/bin/this_acts.sh

@fwyzard
Copy link
Contributor Author

fwyzard commented Oct 30, 2025

Sure, I'll look into that.

I'm wondering if we should keep those files or not ?
If we keep them, should we add ACTS bin directory to the PATH ?

@fwyzard fwyzard force-pushed the IB/CMSSW_16_0_X/master_acts_for_cms branch from 0274100 to 8ff97f8 Compare October 30, 2025 09:56
@cmsbuild
Copy link
Contributor

Pull request #10156 was updated.

@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 2, 2025

Pull request #10156 was updated.

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 2, 2025

please test for el9_amd64_gcc13

@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 3, 2025

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5cb548/49184/summary.html
COMMIT: bc3b548
CMSSW: CMSSW_16_0_X_2025-11-02-0000/el9_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/10156/49184/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 192 lines to the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 68343 differences found in the comparisons
  • DQMHistoTests: Total files compared: 51
  • DQMHistoTests: Total histograms compared: 3939953
  • DQMHistoTests: Total failures: 520586
  • DQMHistoTests: Total nulls: 330
  • DQMHistoTests: Total successes: 3419017
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: -10.084 KiB( 50 files compared)
  • DQMHistoSizes: changed ( 10224.0 ): -0.544 KiB SiStrip/MechanicalView
  • DQMHistoSizes: changed ( 13034.0 ): -7.492 KiB SiStrip/MechanicalView
  • DQMHistoSizes: changed ( 17034.0 ): 3.184 KiB SiStrip/MechanicalView
  • DQMHistoSizes: changed ( 2024.0040001 ): 0.012 KiB JetMET/SUSYDQM
  • DQMHistoSizes: changed ( 250202.181 ): 0.293 KiB SiStrip/MechanicalView
  • DQMHistoSizes: changed ( 25202.0 ): 0.063 KiB SiStrip/MechanicalView
  • DQMHistoSizes: changed ( 7.3 ): -5.600 KiB SiStrip/MechanicalView
  • Checked 218 log files, 188 edm output root files, 51 DQM output files

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 3, 2025

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 3, 2025

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5cb548/49187/summary.html
COMMIT: bc3b548
CMSSW: CMSSW_16_0_X_2025-11-02-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/10156/49187/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 2 lines to the logs
  • Reco comparison results: 2 differences found in the comparisons
  • DQMHistoTests: Total files compared: 51
  • DQMHistoTests: Total histograms compared: 3939953
  • DQMHistoTests: Total failures: 77
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3939856
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 50 files compared)
  • Checked 218 log files, 188 edm output root files, 51 DQM output files
  • TriggerResults: no differences found

@iarspider
Copy link
Contributor

+externals

I guess the

CMake Warning:
  Manually-specified variables were not used by the project:

    AMDGPU_TARGETS

will be fixed once AMD/ROCm is working, right?

@iarspider iarspider merged commit 37dd679 into cms-sw:IB/CMSSW_16_0_X/master Nov 3, 2025
14 checks passed
@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 3, 2025

This pull request is fully signed and it will be integrated in one of the next IB/CMSSW_16_0_X/master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @sextonkennedy, @ftenchini, @mandrenguyen (and backports should be raised in the release meeting by the corresponding L2)

@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 3, 2025

Thanks for pointing that out.

Yes, I think the warning is there because we are not building the ROCm backend yet.
Still, I'll see if I can conditionally disable that flag.

@fwyzard fwyzard changed the title Integrate ACTS v44.0.1 (with minimal changes) as an external Integrate Acts v44.0.1 (with minimal changes) as an external Nov 3, 2025
@fwyzard
Copy link
Contributor Author

fwyzard commented Nov 3, 2025

@iarspider #10166 should fix the warning message.

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