Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable a warning message when using Eigen in CUDA code #6795

Conversation

fwyzard
Copy link
Contributor

@fwyzard fwyzard commented Apr 8, 2021

Disable one more "calling a __host__ function from a __host__ __device__ function is not allowed" message when compiling CUDA device code that includes Eigen objects with NVCC.

Fixes cms-sw/cmssw#33369 .

@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

A new Pull Request was created by @fwyzard (Andrea Bocci) for branch IB/CMSSW_11_3_X/master.

@smuzaffar, @mrodozov can you please review it and eventually sign? Thanks.
cms-bot commands are listed here

@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

Fixes cms-sw/cmssw#33369 .

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9bd89a/14090/summary.html
COMMIT: 3e0e993
CMSSW: CMSSW_11_3_X_2021-04-07-2300/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/6795/14090/install.sh to create a dev area with all the needed externals and cmssw changes.

External Build

I found compilation error when building:

FATAL: malformed spec found while quering it. Command: 
source /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/slc7_amd64_gcc900/rpm-env.sh ;  rpm -q --specfile /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/tmpspec-eigen --info --define "cmsdist_directory /data/cmsbld/jenkins/workspace/ib-run-pr-tests/cmsdist" --define "compilerv 930" --define "cmscompilerv 900" --define "cmsos slc7_amd64" --define "package_vectorization %{nil}" --define 'buildroot /foo'
Resulted in:

warning: Macro %rpmbuild_libdir defined but not used within scope
error: line 354: Unknown tag: https://github.com/cms-externals/eigen-git-mirror.git cms/master/011e0db31d1bed8b7f73662be6d57d9f30fa457a
error: query of specfile /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/tmpspec-eigen failed, can't parse
Traceback (most recent call last):
  File "./pkgtools/cmsBuild", line 4418, in 
    build(opts, args[1:], PKGFactory)
  File "./pkgtools/cmsBuild", line 3713, in build


@fwyzard fwyzard force-pushed the IB/CMSSW_11_3_X/master_Eigen_disable_host_device_warning branch from 3e0e993 to 3380d83 Compare April 8, 2021 08:57
@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

Pull request #6795 was updated.

@makortel
Copy link
Contributor

makortel commented Apr 8, 2021

Fixes cms-sw/cmssw#33369 .

If your intention was to link the PR to the issue (so that PR merge to the default branch results in automatic closing of the issue), this needs to be put in the PR description.

@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

If your intention was to link the PR to the issue (so that PR merge to the default branch results in automatic closing of the issue), this needs to be put in the PR description.

Ah, I see, thanks.

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

-1

Failed Tests: RelVals RelVals-INPUT
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9bd89a/14091/summary.html
COMMIT: 3380d83
CMSSW: CMSSW_11_3_X_2021-04-07-2300/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/6795/14091/install.sh to create a dev area with all the needed externals and cmssw changes.

RelVals

----- Begin Fatal Exception 08-Apr-2021 15:23:02 CEST-----------------------
An exception of category 'PluginLibraryLoadError' occurred while
   [0] Constructing the EventProcessor
   [1] While attempting to load plugin GenTtbarCategorizer
Exception Message:
unable to load /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/6795/14091/CMSSW_11_3_X_2021-04-07-2300/lib/slc7_amd64_gcc900/pluginTopQuarkAnalysisTopToolsPlugins.so because libAnalysisDataFormatsTopObjects.so: cannot open shared object file: No such file or directory
----- End Fatal Exception -------------------------------------------------

RelVals-INPUT

@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

@fwyzard , looks like warnings are still there
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9bd89a/14091/
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9bd89a/14091/build-logs/CUDADataFormats/Track/log.html

Interesting... and mildly annoying.

Using --diag-suppress 20014 from the command line works.

Using #pragma diag_suppress 20014 anywhere in the code does not.
In fact, it also generates an extra warning:

warning #1222-D: invalid error number

Disable one more "calling a __host__ function from a __host__ __device__ function is not allowed" message
when compiling CUDA device code that includes Eigen objects with NVCC.
@fwyzard fwyzard force-pushed the IB/CMSSW_11_3_X/master_Eigen_disable_host_device_warning branch from 3380d83 to 4632512 Compare April 8, 2021 15:40
@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

Let's try with option 2...

@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 8, 2021

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

Pull request #6795 was updated.

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9bd89a/14112/summary.html
COMMIT: 4632512
CMSSW: CMSSW_11_3_X_2021-04-08-1100/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/6795/14112/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 38
  • DQMHistoTests: Total histograms compared: 2865506
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2865483
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 37 files compared)
  • Checked 160 log files, 37 edm output root files, 38 DQM output files
  • TriggerResults: no differences found

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 8, 2021

Pull request #6795 was updated.

@smuzaffar
Copy link
Contributor

test parameters:

  • addpkg = CUDADataFormats

@smuzaffar
Copy link
Contributor

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 9, 2021

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-9bd89a/14120/summary.html
COMMIT: 4f8cdaf
CMSSW: CMSSW_11_3_X_2021-04-08-1700/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmsdist/6795/14120/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 38
  • DQMHistoTests: Total histograms compared: 2865506
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2865483
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 37 files compared)
  • Checked 160 log files, 37 edm output root files, 38 DQM output files
  • TriggerResults: no differences found

@fwyzard
Copy link
Contributor Author

fwyzard commented Apr 9, 2021

CUDADataFormats/Track looks clean now:

>> Entering Package CUDADataFormats/Track
>> Leaving Package CUDADataFormats/Track
>> Package CUDADataFormats/Track built
Entering library rule at CUDADataFormats/Track
>> Building LCG reflex dict from header file src/CUDADataFormats/Track/src/classes.h
>> Compiling LCG dictionary: tmp/slc7_amd64_gcc900/src/CUDADataFormats/Track/src/CUDADataFormatsTrack/a/CUDADataFormatsTrack_xr.cc
>> Building  shared library tmp/slc7_amd64_gcc900/src/CUDADataFormats/Track/src/CUDADataFormatsTrack/libCUDADataFormatsTrack.so
Copying tmp/slc7_amd64_gcc900/src/CUDADataFormats/Track/src/CUDADataFormatsTrack/libCUDADataFormatsTrack.so to productstore area:
Leaving library rule at CUDADataFormats/Track
>> Compiling  /build/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_3_X_2021-04-08-1700/src/CUDADataFormats/Track/test/TrajectoryStateSOA_t.cu
>> Cuda Device Link tmp/slc7_amd64_gcc900/src/CUDADataFormats/Track/test/gpuTrajectoryStateSOA_t/gpuTrajectoryStateSOA_t_cudadlink.o 
>> Building binary gpuTrajectoryStateSOA_t
Copying tmp/slc7_amd64_gcc900/src/CUDADataFormats/Track/test/gpuTrajectoryStateSOA_t/gpuTrajectoryStateSOA_t to productstore area:
>> Compiling  /build/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_3_X_2021-04-08-1700/src/CUDADataFormats/Track/test/TrajectoryStateSOA_t.cpp
>> Building binary cpuTrajectoryStateSOA_t
Copying tmp/slc7_amd64_gcc900/src/CUDADataFormats/Track/test/cpuTrajectoryStateSOA_t/cpuTrajectoryStateSOA_t to productstore area:

@smuzaffar
Copy link
Contributor

+externals
looks good

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 9, 2021

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

@fwyzard fwyzard deleted the IB/CMSSW_11_3_X/master_Eigen_disable_host_device_warning branch May 10, 2021 21:17
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.

Disable NVCC warnings due to Eigen library code
4 participants