Cloud TPUs now support the [PyTorch 1.12 release](https://github.com/pytorch/pytorch/releases), via PyTorch/XLA integration. The release has daily automated testing for the supported models: [Torchvision ResNet](https://cloud.google.com/tpu/docs/tutorials/resnet-pytorch), [FairSeq Transformer](https://cloud.google.com/tpu/docs/tutorials/transformer-pytorch) and [RoBERTa](https://cloud.google.com/tpu/docs/tutorials/roberta-pytorch), [HuggingFace GLUE and LM](https://github.com/huggingface/transformers), and [Facebook Research DLRM](https://cloud.google.com/tpu/docs/tutorials/pytorch-dlrm).
On top of the underlying improvements and bug fixes in PyTorch's 1.12 release, this release adds several features and PyTorch/XLA specified bug fixes.
New feature
- FSDP
- Check the instruction and example code in [here](https://github.com/pytorch/xla/blob/r1.12/torch_xla/distributed/fsdp/README.md)
- FSDP support for PyTorch/XLA (https://github.com/pytorch/xla/pull/3431)
- Bfloat 16 and float 16 support in FSDP (https://github.com/pytorch/xla/pull/3617)
- PyTorch/XLA gradident checkpoint api (https://github.com/pytorch/xla/pull/3524)
- Optimization_barrier which enables gradient checkpointing (https://github.com/pytorch/xla/pull/3482)
- Ongoing LTC migration
- Device lock position optimization to speed up tracing (https://github.com/pytorch/xla/pull/3457)
- Experimental support for PJRT TPU client (https://github.com/pytorch/xla/pull/3550)
- Send/Recv CC op support (https://github.com/pytorch/xla/pull/3494)
- Performance profiling tool enhancement (https://github.com/pytorch/xla/pull/3498)
- TPU-V4 pod official support (https://github.com/pytorch/xla/pull/3440)
- Roll lowering (https://github.com/pytorch/xla/pull/3505)
- Celu, celu_, selu, selu_ lowering (https://github.com/pytorch/xla/pull/3547)
Bug fixes and improvements
- Fixed a view bug which will create unnecessary IR graph (https://github.com/pytorch/xla/pull/3411)