PyTorch CI Build Issue Request for Help
Chris Jones
jonesc at hep.phy.cam.ac.uk
Thu Mar 23 14:41:50 UTC 2023
On 23/03/2023 2:13 pm, Joshua Root wrote:
> On 23/3/2023 23:26, Steven Smith wrote:
>> PyTorch build and runs fine locally, but the CI consistently fails
>> with error below. This issue has created unnecessary delays in merging
>> new PT versions.
>>
>>> 2023-03-18T18:24:32.7624930Z CMake Error at
>>> third_party/fbgemm/CMakeLists.txt:76 (message):
>>> 2023-03-18T18:24:32.7638400Z A compiler with AVX512 support is
>>> required.
>
> You would need to examine the cmake logs (CMakeOutput.log +
> CMakeError.log) and the CMakeLists.txt in this subdir to see how this
> check is being done. Maybe the wrong compiler is being used for the
> check; maybe it's buggy in some other way.
>
>> A successful build uses:
>>
>>> :debug:build CXX='/usr/bin/clang++'
>>> …
>>> :info:build -- Performing Test C_HAS_AVX512_2 - Success
>>> …
>>> :info:build -- Performing Test CXX_HAS_AVX512_2 - Success
>
> That's coming from a different CMakeLists.txt (which apparently works
> correctly since the same output is in the log of the failing build).
>
>> I believe that the right compiler is set. Any suggestions, or does
>> this complicated build fail with the CI box?
>>
>> Details at this PR:
>>
>> py-pytorch: Update to version 2.0.0 by essandess · Pull Request #18009
>> · macports/macports-ports
>> https://github.com/macports/macports-ports/pull/18009
>
> The current version fails on the buildbot for all OS versions except
> Ventura. The logs that are still available for x86_64 show the same
> error as GitHub Actions.
> <https://ports.macports.org/port/py310-pytorch/details/>
>
> So it appears that pushing the update won't make it more broken, but it
> still is quite broken. At the very least, binaries won't be built for
> most platforms, and if it fails on the buildbot then it will most likely
> fail for local builds too on at least some subset of machines.
requiring AVX512 is a really rather stringent requirement, most machines
will not have these instructions.
In fact, even if the build bots where able to make binary tarballs, if
they are using these instructions (without runtime capability checks)
then it would quite possibly render these binaries unusable on most
hardware.
What we normally require is use of these sorts of instruction sets
(AVX512, AVX2) is by default turned off so that the binaries produced
are usable on more hardware. Then, if you want to allow these
instructions on machines where they are available, provide a 'native'
variant which when selected forces the user to build from source, and
allows the build configuration to test for and if available use these
instructions.
Chris
>
> - Josh
More information about the macports-dev
mailing list