Description
If you do not know the root cause of the problem / bug, and wish someone to help you, please
post according to this template:
🐛 Bugs / Unexpected behaviors
NOTE: Please look at the existing list of Issues tagged with the label 'bug`. Only open a new issue if this bug has not already been reported. If an issue already exists, please comment there instead..
I'm getting ambiguous function errors for the function make_float3
. It's unclear whether this is an issue from upgrading CUDA to 12.3 or due to PyTorch nightly. Commenting out make_float3
in pulsar/globals.h
solves the issue.
Instructions To Reproduce the Issue:
Please include the following (depending on what the issue is):
Install CUDA 12.3 and install pytorch nightly
-
Any changes you made (
git diff
) or code you wrote
no code changes -
The exact command(s) you ran:
pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu121
python setup.py develop
- What you observed (including the full logs):
https://gist.github.com/d4l3k/488b170becacbb8510644152347c1382
In file included from /tmp/pip-req-build-y8fv0d6c/pytorch3d/csrc/pulsar/host/../include/./renderer.norm_sphere_gradients.de
vice.h:14:
/tmp/pip-req-build-y8fv0d6c/pytorch3d/csrc/pulsar/host/../include/././math.h: In function ‘float3 outer_product_sum(const f
loat3&)’:
/tmp/pip-req-build-y8fv0d6c/pytorch3d/csrc/pulsar/host/../include/././math.h:42:21: error: call of overloaded ‘make_float3(
float, float, float)’ is ambiguous
42 | return make_float3(
| ~~~~~~~~~~~^
43 | a.x * a.x + a.x * a.y + a.x * a.z,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44 | a.x * a.y + a.y * a.y + a.y * a.z,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
45 | a.x * a.z + a.y * a.z + a.z * a.z);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /opt/cuda/include/vector_functions.h:176,
from /opt/cuda/include/cuda_fp16.h:131,
from /opt/cuda/include/cusparse.h:59,
from /home/rice/venvs/torchdrive3.11/lib/python3.11/site-packages/torch/include/ATen/cuda/CUDAContext.h:6,
from /tmp/pip-req-build-y8fv0d6c/pytorch3d/csrc/pulsar/host/../include/./../global.h:51:
/opt/cuda/include/vector_functions.hpp:243:34: note: candidate: ‘float3 make_float3(float, float, float)’
243 | __VECTOR_FUNCTIONS_DECL__ float3 make_float3(float x, float y, float z)
| ^~~~~~~~~~~
/tmp/pip-req-build-y8fv0d6c/pytorch3d/csrc/pulsar/host/../include/./../global.h:70:15: note: candidate: ‘float3 make_float3
(const float&, const float&, const float&)’
70 | inline float3 make_float3(const float& x, const float& y, const float& z) {
| ^~~~~~~~~~~
Please also simplify the steps as much as possible so they do not require additional resources to
run, such as a private dataset.