CPU Kernel: Use per-operator headers (#71137)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/71137
ATen has a header dependency problem. Whenever an operator is added or modified, it changes `ATen/Functions.h` and `ATen/NativeFunctions.h` which in turn requires essentially every single file to be rebuilt. Per-operator headers allow files to only include the specific operators they use and so minimizes unnecessary rebuilds during incremental builds and improves cache hits in CI builds.
See this note for more details:
https://github.com/pytorch/pytorch/blob/3a03af2f505494582f1359254431f0c47fd88705/aten/src/ATen/templates/Functions.h#L20
Test Plan: Imported from OSS
Reviewed By: ngimel
Differential Revision: D33949900
Pulled By: malfet
fbshipit-source-id: d76a53bfab9ea75391de060a2d85923339f93a7c
(cherry picked from commit d3be6e4283bbc8d5c967c4634ea1a6b3386861ed)