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

Fix several build issues in CI when using Clang #10800

Closed

Conversation

czentgr
Copy link
Collaborator

@czentgr czentgr commented Aug 21, 2024

A number of issues came up when building the CI pipeline with Clang.

  1. When CUDA nvcc uses Clang it complains that totalBytes is set but unused. 
The intent seems to have been that the parameter is an in- and output parameter.
  2. If benchmarks are not turned on then the CUDA build fails as dependencies are not available.
  3. HDFS virtual function definition not explicitly overridden causing an error 
(error: 'rename' overrides a member function but is not marked 'override’).

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 21, 2024
Copy link

netlify bot commented Aug 21, 2024

Deploy Preview for meta-velox canceled.

Name Link
🔨 Latest commit 8d63446
🔍 Latest deploy log https://app.netlify.com/sites/meta-velox/deploys/66ccd58a65731d000800825f

@czentgr
Copy link
Collaborator Author

czentgr commented Aug 21, 2024

@majetideepak FYI.

@czentgr czentgr marked this pull request as ready for review August 22, 2024 15:20
@@ -59,46 +59,48 @@ target_link_libraries(

add_test(velox_wave_exec_test velox_wave_exec_test)

add_executable(velox_wave_benchmark WaveBenchmark.cpp)
if(${VELOX_ENABLE_BENCHMARKS} OR ${VELOX_ENABLE_BENCHMARKS_BASIC})
Copy link
Collaborator

@majetideepak majetideepak Aug 22, 2024

Choose a reason for hiding this comment

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

nit: I think if(VELOX_ENABLE_BENCHMARKS) is sufficient here.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I suppose it isn't a basic benchmark and should only be enabled along the top level benchmarks - the dependency is available then as well. But perhaps we can get a comment about it.

@czentgr czentgr force-pushed the cz_fix_wave_compile_w_clang branch 2 times, most recently from 75219c8 to bbf8ad8 Compare August 22, 2024 15:42
@majetideepak majetideepak added the ready-to-merge PR that have been reviewed and are ready for merging. PRs with this tag notify the Velox Meta oncall label Aug 22, 2024
@assignUser
Copy link
Collaborator

I know that CUDA/libcudf etc. a much better supported with GCC so potentially switching those parts of when building with clang might be required if hard to solve problems show up.

@czentgr
Copy link
Collaborator Author

czentgr commented Aug 23, 2024

Yes. We can revisit if problems show up. In this case I believe this was a correct error shown. I read the nvcc also uses a modified LLVM and is similar to Clang actually. So I hope this works out without major problems going forward.

A number of issues came up when building the CI pipeline with Clang.

1. When CUDA nvcc uses Clang it complains that totalBytes is set but unused. 
The intent seems to have been that the parameter is an in- and output parameter.
2. If benchmarks are not turned on then the CUDA build fails as dependencies are not available.
3. HDFS virtual function definition not explicitly overridden causing an error 
(error: 'rename' overrides a member function but is not marked 'override’).
@majetideepak
Copy link
Collaborator

@kgpai can you make another pass and help land this? The on-call team likely missed this. Thanks!

@facebook-github-bot
Copy link
Contributor

@kgpai has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@facebook-github-bot
Copy link
Contributor

@kgpai merged this pull request in 42c06ca.

Copy link

Conbench analyzed the 1 benchmark run on commit 42c06ca9.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details.

Joe-Abraham pushed a commit to Joe-Abraham/velox that referenced this pull request Sep 2, 2024
)

Summary:
A number of issues came up when building the CI pipeline with Clang.

1. When CUDA nvcc uses Clang it complains that totalBytes is set but unused. �The intent seems to have been that the parameter is an in- and output parameter.
2. If benchmarks are not turned on then the CUDA build fails as dependencies are not available.
3. HDFS virtual function definition not explicitly overridden causing an error �(error: 'rename' overrides a member function but is not marked 'override’).

Pull Request resolved: facebookincubator#10800

Reviewed By: DanielHunte

Differential Revision: D61862435

Pulled By: kgpai

fbshipit-source-id: 3aef27e8ed1c4dd8fe78221c5dd859656fc65e69
Joe-Abraham pushed a commit to Joe-Abraham/velox that referenced this pull request Sep 3, 2024
)

Summary:
A number of issues came up when building the CI pipeline with Clang.

1. When CUDA nvcc uses Clang it complains that totalBytes is set but unused. �The intent seems to have been that the parameter is an in- and output parameter.
2. If benchmarks are not turned on then the CUDA build fails as dependencies are not available.
3. HDFS virtual function definition not explicitly overridden causing an error �(error: 'rename' overrides a member function but is not marked 'override’).

Pull Request resolved: facebookincubator#10800

Reviewed By: DanielHunte

Differential Revision: D61862435

Pulled By: kgpai

fbshipit-source-id: 3aef27e8ed1c4dd8fe78221c5dd859656fc65e69
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged ready-to-merge PR that have been reviewed and are ready for merging. PRs with this tag notify the Velox Meta oncall
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants