Metal에서 지원하는 GPU family 및 feature set 확인

M1 Mac mini가 왔습니다.



우리 집에 M1 Chip의 Mac mini가 왔습니다. 지금까지 Metal의 시행착오는 Intel Mac의 Simulator와 실제 iPhone이나 iPad에서 지원하는 기능이 다르기 때문에 시행착오의 효율이 나빴지만 M1 Chip Mac을 입수했기 때문에 A12 상당 의 기능의 시행착오 등의 효율이 오를 것으로 기대하고 있었습니다. 그러나 M1 Chip의 Mac Simulator에서 검증 코드를 움직이면 의심스러운 곳에서 떨어졌습니다.

"어라?"라고 생각하고 iPad Pro에서 실행하면 떨어지지 않습니다. 그래서, 여러가지 조사 시작하면, M1 Chip + Big Sur + Xcode 12.2의 시뮬레이터에서는, A8 상당 밖에 되지 않는 것을 깨달았습니다. 그래서 2020년 10월 21일 즉 비교적 최근 업데이트된 Metal Feature Set Tables를 조사해도 M1의 기술이 전혀 없습니다.



Metal Feature Set Tables



Apple의 공식 문서는 이것입니다.

iOS, macOS의 실행 환경은 상당히 조합이 많다



잘 생각하면 macOS, iOS에서 실행되는 앱의 환경은 다양합니다.
  • iOS native on A chip
  • iOS simulator on Intel Mac
  • iOS simulator on M chip
  • macOS native on Intel Mac
  • macOS native on M chip
  • macCatalyst on Intel Mac
  • macCatalyst on M chip

  • 예를 들면 최종적인 실행 환경은 A chip만을 대상으로 하고 있어도, 개발 공정에서 simulator 등을 사용하면 효율이 오르는 경우가 있습니다. Metal에서 시행착오를 반복하려면 어떤 기능이 어떤 환경에서 작동하는지 명확히 해야 한다고 생각했습니다.

    MetalFeatureQuery



    그래서 간단하게 테스트할 수 있는 프로젝트를 만들어 보았습니다. 위의 조합으로 동작할 것입니다만, 아직 전부로 시도한 것은 아닙니다.



    환경



    쓰기 시점의 환경은 다음과 같습니다.
    Apple Swift version 5.3.1 (swiftlang-1200.0.41 clang-1200.0.32.8)
    Target: arm64-apple-darwin20.1.0
    

    Xcode Version 12.2 (12B45b)
    macOS Big Sur 11.0.1 (20B29)

    License



    MIT License

    좋은 웹페이지 즐겨찾기