[iOS][Metal] Add target for testing metal ops (#57832)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/57832
- Added a shared BUCK target: `//fbobjc/Apps/Internal/PyTorchMetalOpTester:PyTorchMetalOpTester`
- Invoke this target from 3 Apps: pp-ios, pp-macos, PyTorchBenckmark
ghstack-source-id: 129037985
(Note: this ignores all push blocking failures!)
Test Plan:
## PyTorch Playground - macOS
`buck test pp-macos`
```
➜ fbsource buck test pp-macos
Building: finished in 0.3 sec (100%) 204/6264 jobs, 0 updated
Total time: 0.5 sec
Testing: finished in 8.4 sec (6 PASS/0 FAIL)
RESULTS FOR //fbobjc/Apps/Internal/PyTorchPlaygroundMac:PyTorchPlaygroundMacTests
PASS 999ms 2 Passed 0 Skipped 0 Failed ClassificationTests
PASS 6.4s 1 Passed 0 Skipped 0 Failed MetalOpsTests
PASS 181ms 3 Passed 0 Skipped 0 Failed PersonSegmentationTests
Updated test logs: buck-out/log/test.log
TESTS PASSED
```
## PyTorch Playground - iOS
- `arc focus2 pp-ios`
- Build and run via Xcode
{F613716289}
### AI Bench
- `buck run mode/mac aibench:run_bench_macos -- -b aibench/specifications/models/pytorch/metal/metal_op_test.json --platform ios --framework pytorch --remote --devices D53 (https://github.com/pytorch/pytorch/commit/871b1419de23352dba4eda665aca1471c5446d01)pAP`
- Result: https://fburl.com/aibench/d2gtlndd
Reviewed By: xta0
Differential Revision: D28235867
fbshipit-source-id: dcee8aee140b5f665a97efe278ee621f436c7c68