Skip to content

Commit

Permalink
Update on "Let torch.sign support complex types"
Browse files Browse the repository at this point in the history
The rule follows those of NumPy: https://numpy.org/doc/stable/reference/generated/numpy.sign.html

[ghstack-poisoned]
  • Loading branch information
xuhdev committed Aug 19, 2020
2 parents 260c64e + 1ccc3c2 commit 9fb4ce3
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 60 deletions.
26 changes: 17 additions & 9 deletions .circleci/cimodel/data/pytorch_build_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,22 +28,30 @@
]),
("cuda", [
("9.2", [
X("3.6"),
("3.6", [
("cuda_gcc_override", [X("gcc5.4")])
X(True),
("cuda_gcc_override", [
("gcc5.4", [
('build_only', [XImportant(True)]),
]),
]),
])
]),
("10.1", [X("3.6")]),
("10.1", [
("3.6", [
('build_only', [X(True)]),
]),
]),
("10.2", [
XImportant("3.6"),
("3.6", [
("libtorch", [XImportant(True)])
("important", [X(True)]),
("libtorch", [X(True)]),
]),
]),
("11.0", [
X("3.8"),
("3.8", [
("libtorch", [X(True)])
X(True),
("libtorch", [XImportant(True)])
]),
]),
]),
Expand Down Expand Up @@ -200,15 +208,15 @@ def init2(self, node_name):
self.props["cuda_gcc_override"] = node_name

def child_constructor(self):
return ImportantConfigNode
return ExperimentalFeatureConfigNode

class BuildOnlyConfigNode(TreeConfigNode):

def init2(self, node_name):
self.props["build_only"] = node_name

def child_constructor(self):
return ImportantConfigNode
return ExperimentalFeatureConfigNode


class ImportantConfigNode(TreeConfigNode):
Expand Down
58 changes: 12 additions & 46 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5721,28 +5721,8 @@ workflows:
name: pytorch_linux_xenial_cuda9_2_cudnn7_py3_gcc5_4_build
requires:
- "docker-pytorch-linux-xenial-cuda9.2-cudnn7-py3-gcc5.4"
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-linux-xenial-cuda9.2-cudnn7-py3-gcc5.4-build"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda9.2-cudnn7-py3-gcc5.4"
- pytorch_linux_test:
name: pytorch_linux_xenial_cuda9_2_cudnn7_py3_gcc5_4_test
requires:
- pytorch_linux_xenial_cuda9_2_cudnn7_py3_gcc5_4_build
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-linux-xenial-cuda9.2-cudnn7-py3-gcc5.4-test"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda9.2-cudnn7-py3-gcc5.4"
use_cuda_docker_runtime: "1"
resource_class: gpu.medium
- pytorch_linux_build:
name: pytorch_linux_xenial_cuda10_1_cudnn7_py3_gcc7_build
requires:
Expand All @@ -5755,20 +5735,6 @@ workflows:
- /release\/.*/
build_environment: "pytorch-linux-xenial-cuda10.1-cudnn7-py3-gcc7-build"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda10.1-cudnn7-py3-gcc7"
- pytorch_linux_test:
name: pytorch_linux_xenial_cuda10_1_cudnn7_py3_gcc7_test
requires:
- pytorch_linux_xenial_cuda10_1_cudnn7_py3_gcc7_build
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-linux-xenial-cuda10.1-cudnn7-py3-gcc7-test"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda10.1-cudnn7-py3-gcc7"
use_cuda_docker_runtime: "1"
resource_class: gpu.medium
- pytorch_linux_test:
name: pytorch_linux_xenial_cuda10_1_cudnn7_py3_multigpu_test
requires:
Expand Down Expand Up @@ -5841,12 +5807,24 @@ workflows:
name: pytorch_libtorch_linux_xenial_cuda10_2_cudnn7_py3_gcc7_build
requires:
- "docker-pytorch-linux-xenial-cuda10.2-cudnn7-py3-gcc7"
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-libtorch-linux-xenial-cuda10.2-cudnn7-py3-gcc7-build"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda10.2-cudnn7-py3-gcc7"
- pytorch_linux_test:
name: pytorch_libtorch_linux_xenial_cuda10_2_cudnn7_py3_gcc7_test
requires:
- pytorch_libtorch_linux_xenial_cuda10_2_cudnn7_py3_gcc7_build
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-libtorch-linux-xenial-cuda10.2-cudnn7-py3-gcc7-test"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda10.2-cudnn7-py3-gcc7"
use_cuda_docker_runtime: "1"
Expand Down Expand Up @@ -5881,24 +5859,12 @@ workflows:
name: pytorch_libtorch_linux_xenial_cuda11_0_cudnn8_py3_gcc7_build
requires:
- "docker-pytorch-linux-xenial-cuda11.0-cudnn8-py3-gcc7"
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-libtorch-linux-xenial-cuda11.0-cudnn8-py3-gcc7-build"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda11.0-cudnn8-py3-gcc7"
- pytorch_linux_test:
name: pytorch_libtorch_linux_xenial_cuda11_0_cudnn8_py3_gcc7_test
requires:
- pytorch_libtorch_linux_xenial_cuda11_0_cudnn8_py3_gcc7_build
filters:
branches:
only:
- master
- /ci-all\/.*/
- /release\/.*/
build_environment: "pytorch-libtorch-linux-xenial-cuda11.0-cudnn8-py3-gcc7-test"
docker_image: "308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-xenial-cuda11.0-cudnn8-py3-gcc7"
use_cuda_docker_runtime: "1"
Expand Down
5 changes: 3 additions & 2 deletions .jenkins/pytorch/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,9 @@ fi
if [[ "$BUILD_ENVIRONMENT" != *ppc64le* ]] && [[ "$BUILD_ENVIRONMENT" != *-bazel-* ]] ; then
# JIT C++ extensions require ninja.
pip_install --user ninja
# ninja is installed in /var/lib/jenkins/.local/bin
export PATH="/var/lib/jenkins/.local/bin:$PATH"
# ninja is installed in $HOME/.local/bin, e.g., /var/lib/jenkins/.local/bin for CI user jenkins
# but this script should be runnable by any user, including root
export PATH="$HOME/.local/bin:$PATH"

# TODO: Please move this to Docker
# The version is fixed to avoid flakiness: https://github.com/pytorch/pytorch/issues/31136
Expand Down
2 changes: 1 addition & 1 deletion aten/src/ATen/native/cudnn/RNN.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -684,7 +684,7 @@ namespace cudnn_rnn {
}
}

return {weight_buf, params_arr};
return std::make_tuple(weight_buf, params_arr);
}

} // namespace cudnn_rnn
Expand Down
2 changes: 0 additions & 2 deletions test/test_torch.py
Original file line number Diff line number Diff line change
Expand Up @@ -5985,8 +5985,6 @@ def test_complex_assert_raises(self, device):
self.assertRaises(RuntimeError,
lambda: zeros.index_add(0, torch.arange(0, size[0], dtype=torch.long, device=device), tensor))

self.assertRaises(RuntimeError, lambda: torch.sign(torch.tensor([4j], device=device, dtype=dtype)))

a = torch.rand((2, 2), dtype=dtype, device=device)
b = torch.rand((2, 2), dtype=dtype, device=device)
c = torch.rand((2, 2), dtype=dtype, device=device)
Expand Down

0 comments on commit 9fb4ce3

Please sign in to comment.