Skip to content

Commit a8171ff

Browse files
author
eellison
committed
Merge branch 'master' of https://github.com/pytorch/pytorch into sorted_jit
2 parents ac23354 + 0e3a359 commit a8171ff

File tree

287 files changed

+9287
-4580
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

287 files changed

+9287
-4580
lines changed

.circleci/README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -272,13 +272,13 @@ Manywheels are pip packages for linux distros. Note that these manywheels are no
272272

273273
The entrypoint file `builder/manywheel/build_common.sh` is really really complicated because
274274

275-
* This used to handle building for several different python versions at the same time. This is why there are loops everywhere
275+
* This used to handle building for several different python versions at the same time. The loops have been removed, but there's still unneccessary folders and movements here and there.
276276
* The script is never used this way anymore. This extra machinery could be removed.
277277
* This used to handle testing the pip packages too. This is why there’s testing code at the end that messes with python installations and stuff
278278
* The script is never used this way anymore. This extra machinery could be removed.
279279
* This also builds libtorch packages
280280
* This should really be separate. libtorch packages are c++ only and have no python. They should not share infra with all the python specific stuff in this file.
281-
* There is a lot of messing with rpaths. This is necessary, but could be made much much simpler if the loops for libtorch and separate python versions were removed.
281+
* There is a lot of messing with rpaths. This is necessary, but could be made much much simpler if the above issues were fixed.
282282

283283
## Wheels (MacOS pip and libtorch packages)
284284

@@ -307,7 +307,6 @@ Libtorch packages are built in the wheel build scripts: manywheel/build_*.sh for
307307
* It’s confusinig. Most of those scripts deal with python specifics.
308308
* The extra conditionals everywhere severely complicate the wheel build scripts
309309
* The process for building libtorch is different from the official instructions (a plain call to cmake, or a call to a script)
310-
* For Linux specifically, the job is set up to build all libtorch varieties in a single go. This leads to 9+ hour builds times for CUDA 10.0 libtorch. This is more of a problem with the circleci setup though.
311310

312311
### Note on docker images / Dockerfiles
313312

.circleci/cimodel/data/binary_build_data.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,18 @@ def get_processor_arch_name(cuda_version):
6060
)
6161

6262

63+
# Why is this an option?
64+
# All the nightlies used to be devtoolset3 and built with the old gcc ABI. We
65+
# added a devtoolset7 option so that we could build nightlies with the new gcc
66+
# ABI. That didn't work since devtoolset7 can't build with the new gcc ABI. But
67+
# then we set devtoolset7 to be the default anyways, since devtoolset7
68+
# understands avx512, which is needed for good fbgemm performance.
69+
# This should be removed. The base dockers should just be upgraded to
70+
# devtoolset7 so we don't have to reinstall this in every build job.
71+
# The same machinery that this uses, though, should be retooled for a different
72+
# compiler toolchain that can build with the new gcc ABI.
6373
DEVTOOLSET_VERSIONS = [
64-
3,
74+
7,
6575
]
6676

6777

@@ -102,7 +112,7 @@ def __init__(self, parent, package_format, python_versions):
102112
self.props["package_format"] = package_format
103113

104114
def get_children(self):
105-
if self.find_prop("os_name") == "linux" and self.find_prop("package_format") != "conda":
115+
if self.find_prop("os_name") == "linux":
106116
return [LinuxGccConfigNode(self, v) for v in DEVTOOLSET_VERSIONS]
107117
else:
108118
return [ArchConfigNode(self, v) for v in self.find_prop("cuda_versions")]
@@ -147,7 +157,7 @@ def get_children(self):
147157
package_format = self.find_prop("package_format")
148158
os_name = self.find_prop("os_name")
149159

150-
has_libtorch_variants = smoke and package_format == "libtorch" and os_name == "linux"
160+
has_libtorch_variants = package_format == "libtorch" and os_name == "linux"
151161
linking_variants = LINKING_DIMENSIONS if has_libtorch_variants else []
152162

153163
return [LinkingVariantConfigNode(self, v) for v in linking_variants]

.circleci/cimodel/data/binary_build_definitions.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,10 @@ def gen_build_name(self, build_or_test):
4646

4747
parts = [self.get_name_prefix(), self.os] + self.gen_build_env_parms()
4848

49-
if self.smoke:
50-
if self.libtorch_variant:
51-
parts.append(self.libtorch_variant)
52-
else:
49+
if self.libtorch_variant:
50+
parts.append(self.libtorch_variant)
51+
52+
if not self.smoke:
5353
parts.append(build_or_test)
5454

5555
return "_".join(parts)

.circleci/cimodel/data/dimensions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
CUDA_VERSIONS = [
77
None, # cpu build
8-
"90",
8+
"92",
99
"100",
1010
]
1111

0 commit comments

Comments
 (0)