Show notes
Why is PyTorch split into so many libraries? What's the point of these splits? What do Windows, mobile and CUDA have to do with the library splits?
Further reading:
- c10 folder architecture description https://github.com/.../wiki/Software-Architecture-for-c10
- Implementation of the TORCH_API visibility macros https://github.com/.../blob/master/c10/macros/Export.h
- An example of virtual call based hook to break library structure https://github.com/pytorch/pytorch/blob/master/c10/core/impl/DeviceGuardImplInterface.h

