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

Do not use deprecated functions #1935

Merged
merged 1 commit into from
Aug 26, 2022
Merged

Do not use deprecated functions #1935

merged 1 commit into from
Aug 26, 2022

Conversation

naoyam
Copy link
Collaborator

@naoyam naoyam commented Aug 26, 2022

c10::variant causes lots of compiler warnings like:

../c10/util/variant.h:2256:9: warning: definition of implicit copy constructor for 'impl<double, long>' is deprecated because it has a user-declared copy assignment operator [-Wdeprecated-copy]
  impl& operator=(const impl& other) = default;
        ^
../c10/util/variant.h:2394:3: note: in implicit copy constructor for 'c10::detail_::impl<double, long>' first required here
  variant(variant&&) = default;
  ^
../torch/csrc/jit/codegen/cuda/dynamic_type.h:14:25: note: in defaulted move constructor for 'c10::variant<double, long>' first required here
class TORCH_CUDA_CU_API IntOrDouble {
                        ^
../torch/csrc/jit/codegen/cuda/dynamic_type.h:59:3: note: in implicit move constructor for 'torch::jit::fuser::cuda::IntOrDouble' first required here
  DEFINE_ARITHMETIC_OP(+)
  ^
../torch/csrc/jit/codegen/cuda/dynamic_type.h:41:16: note: expanded from macro 'DEFINE_ARITHMETIC_OP'
        return IntOrDouble(as<double>() op other.as<double>());   \

Similar warnings are dumped for other uses of the class, but this PR at least avoids them for IntOrDouble

I'm using clang 13. Would be happy to know if there's better workarounds.

@naoyam naoyam requested a review from zasdfgbnm August 26, 2022 16:20
Copy link
Owner

@csarofeen csarofeen left a comment

Choose a reason for hiding this comment

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

Seems fine.

@naoyam naoyam merged commit c0a187a into devel Aug 26, 2022
@naoyam naoyam deleted the int_or_double_variant branch August 26, 2022 18:13
@zasdfgbnm
Copy link
Collaborator

Looks like this is an issue of c10:: variant, because according to https://en.cppreference.com/w/cpp/utility/variant/variant, the copy constructor should not be deprecated. But fine, these compiler warnings are super annoying, and whatever way to get rid of this warning is good.

@naoyam
Copy link
Collaborator Author

naoyam commented Aug 26, 2022

yeah, it's not your fault. I see many other same warnings, which are really annoying.

jjsjann123 added a commit that referenced this pull request Oct 2, 2022
Syncing nvfuser devel branch to upstream master. https://github.com/csarofeen/pytorch/

Codegen changes include:

- codegen improvement:
i. improved view support on pointwise and transpose scheduler
ii. grouped grid welford added for better outer-norm grid persistence in normalization

- misc:
i. new composite ops added: variance_mean , arange,
ii. fixes misaligned address for transpose scheduler
iii. refactor on separation of compilation API from execution API to prepare us for async compilation
iv. double type support on expression evaluator
v. PYTORCH_NVFUSER_DUMP refactor to save PTX and CUBIN

Commits that's in this PR from the devel branch:
```
89330aa Tensor factories must set the output shape as its input (#1939)
b2fd01e arange support (#1933)
56c00fd Double support on all expression evaluators (#1937)
371f282 Improve trivial reduction merge support (#1931)
1d0c267 Test `rand` in a fusion with zero tensor input (#1932)
0dab160 Fix softmax bwd sizes. (#1890)
ef98f36 Fix a bug (#1936)
63132a0 Propagate permissive mapping information into indexing pass (#1929)
b4ac2c8 Map IterationDomains through view operations. (#1919)
c0a187a do not use deprecated functions (#1935)
88de85e Upstream cherry pick fixes 0811 (#1934)
b247dcf Separate kernel compilation API from kernel execution API (#1914)
b34e3b9 Fix `ir_utils::hasBlockSync` + misc fixes in transpose scheduler (#1924)
14a53e6 Nullary RNGOp (#1892)
3c3c89e Misc fixes/tuning for transpose scheduler (#1912)
20cf109 Grouped grid welford (#1921)
6cf7eb0 Transpose scheduler small dim sizes better support (#1910)
9341ea9 Disabled ViewPersistentShmoo sizes that results in NAN (#1922)
057237f Fix CUDA driver error: misaligned address for transpose scheduler  (#1918)
3fb3d80 Add variance_mean function using Welford (#1907)
98febf6 Remove DisableOption::UnrollWithRng (#1913)
ee8ef33 Minor fix for the debug interface of using PTX directly (#1917)
6e8f953 Add PYTORCH_NVFUSER_DUMP options to save PTX and CUBIN (#1916)
5eefa9a dopt is only available since nvrtc 11.7 (#1915)
2ec8fc7 Kill computeAtBetween (#1911)
d0d106a Improve view support on pointwise and transpose scheduler (#1906)
e71e1ec Fix name clash of RNG with shared memory (#1904)
3381793 Fix mutator and sameAs for expanded IterDomain (#1902)
```

RUN_TORCHBENCH: nvfuser

Differential Revision: [D39324552](https://our.internmc.facebook.com/intern/diff/D39324552)
Pull Request resolved: pytorch#84626
Approved by: https://github.com/malfet
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.

3 participants