How can Pytorch 2.x support different backends?

How does Pytorch 2.x support backend hardware from different vendors like Intel, NVIDIA, and AMD? PyTorch 1.x appears to necessitate individual vendors to develop operators that are compatible with their specific platforms.

For CPU Intel wrote some custom codegen that outputs C++ code
For GPU like vendors we codegen triton kernels and those are increasingly becoming supported by more hardware vendors so there’s nothing pytorch really needs to do to support more GPU like vendors as long as they integrate with triton

I got it. Thanks for your reply!