philipturner/climate-change-forecasting

Test formatting

Closed this issue · 2 comments

Evidence strongly suggests a PyTorch GPU backend will be released at WWDC 2022. Here is the reasoning:

  • Initially, Soumith may have accidentally hinted that they are working with Apple. We had assumed that was a reference to collaborating with AMD for ROCm.
  • PyTorch engineers do not have experience with Metal. Neither does TensorFlow. The solution: get Apple's assistance.
  • PyTorch is separate enough from Facebook that Apple could make an exception. An ML framework will not mine anyone's private data.
  • PyTorch's team consistently evades our questions about the release date. They are very diligent about keeping it confidential.
  • Finally, from Apple's job request for CPU acceleration (posted March 4, 2022):

You will also collaborate with the PyTorch community to get this work integrated into PyTorch.

But, it will be closed-source. That is not what we anticipated over the 1.5 years this GitHub thread has been active.

A "development branch" does not guarantee open-source code. A branch could just modify PyTorch to depend on a closed-source binary. This is how the existing TF backend operates. Moreover, PyTorch already depends on a closed-source binary: cuDNN.

Looking at Apple 's history of making TensorFlow closed source worries me

Despite open-sourcing Darwin out of necessity, Apple tends toward closed-source software. 100% of their ML backends (listed below) are closed-source. Microsoft closed-sourced the entire DirectML backend for PyTorch, and Apple may do the same.

  • MPSGraph, MPSCNN, BNNS, CoreML, MLCompute, both TF backends

The job request involves using Accelerate's internals to make new CPU kernels. That means working with AMX instructions for maximum performance, which must stay secret. Open-sourcing the kernels for M1 would be illegal, publicly breaking Apple's agreement to not extend the ARM instruction set.

To be released: c. 7:30 PM, 03/13/2022 on alt