Metal 개발자 도구

Xcode의 Metal 디버거, Instruments의 Metal System Trace, 스크립트 및 에이전틱 작업 흐름을 위한 새로운 명령줄 도구 등 강력하고 광범위한 도구 세트로 Metal 앱을 생성, 디버깅 및 프로파일링하세요.

세계적인 수준의 디버깅

Xcode에는 Metal 앱 디버깅을 위한 포괄적인 고급 도구 모음이 포함되어 있습니다. Metal 디버거를 사용하면 사용 중인 모든 리소스뿐만 아니라 렌더링, 컴퓨팅 및 머신 러닝 파이프라인 전체를 검사할 수 있습니다. Metal 4에 대한 새로운 지원 덕분에 인코더 단계 동기화부터 머신 러닝 네트워크 내 중간 텐서까지, 한층 더 광범위한 영역에서 디버깅하고 문제를 해결합니다.

방법 알아보기

종속성 스캔

종속성 뷰어에서는 Metal 워크로드의 구조를 그래픽으로 표현하고 리소스, 패스, 동기화 프리미티브, 그리고 버텍스와 프래그먼트 같은 개별 인코더 단계 간의 관계를 확인할 수 있습니다.

더 알아보기

메모리 사용량 최적화

Metal 디버거에는 Metal 메모리 사용량에 대한 종합적인 보고서가 포함되어 있어 Metal 앱의 메모리 사용량을 최적화하고 줄일 수 있습니다.

더 알아보기

Moana Island Scene, Copyright 2017-2022 Disney Enterprises, Inc. 모든 권리 보유.

리소스 검사

버퍼, 텍스처, 텐서와 같은 객체, 레이 트레이싱 가속 구조를 비롯하여 Metal 앱에서 사용하는 많은 리소스를 검사할 수 있습니다.

더 알아보기

셰이더 디버그

셰이더 디버거를 사용하면 셰이더 실행 중에 원하는 지점으로 이동하여 변수 값을 검사하고 셰이더 코드의 문제를 디버깅할 수 있습니다. 셰이더 코드를 편집하고 변경 사항을 다시 로드하여 수정 여부를 확인할 수 있습니다.

더 알아보기

에이전틱 디버깅 만나 보기

새로운 명령줄 도구를 사용해 즐겨 쓰는 코딩 에이전트, 스크립트 등에서 Metal 워크로드의 성능을 원활하게 캡처, 디버깅 및 분석하세요.

gpucapture

실행 중인 프로세스에 첨부하여 필요할 때 Metal 워크로드를 캡처합니다.

gpudebug

명령줄에서 직접 디버깅하고 프로파일링합니다. 캡처된 워크로드를 살펴보고, 리소스를 검사하며, 앱 성능을 분석하는 등 다양한 작업을 수행할 수 있습니다.

에이전틱 코딩으로 게임 포팅 속도 높이기

metalperftrace

성능 트레이스를 수집하고 사람이 읽을 수 있는 요약을 생성합니다. 다양한 기술과 결합하여 에이전트가 워크로드를 자동으로 최적화하도록 돕습니다.

Metal 게임의 성능 문제를 찾고 수정하기

Metal 최대한 활용하기

Xcode에는 고급 툴 세트가 함께 제공되므로 Metal 앱이 Apple 하드웨어에서 부드러운 렌더링과 놀라운 성능을 일관되게 구현하도록 할 수 있습니다.

실시간 성능 모니터링

Metal Performance HUD로 Metal 앱에서 주요 그래픽 통계를 직접 모니터링하여 성능 문제를 쉽게 발견할 수 있으며 Xcode 또는 Instruments에서 캡처할 최적의 범위를 찾을 수 있습니다.

더 알아보기

전체 시스템 분석

Instruments의 Metal System Trace 템플릿은 CPU, GPU 및 Metal 앱의 메모리 사용량에 대한 병렬 작업을 시각적 타임라인으로 보여 줍니다.

더 알아보기

카운터를 사용하여 성능 향상

Xcode의 성능 타임라인에는 동시에 실행되는 다양한 패스 및 스테이지가 하드웨어 카운터와 함께 표시됩니다. 겹치지 않는 GPU 작업을 관찰하여 과잉 직렬화를 발견할 수 있습니다.

더 알아보기

셰이더 실행 추적하기

Xcode의 성능 히트 맵을 사용하면 포괄적인 성능 지표를 시각화하여 값이 큰 픽셀 또는 컴퓨팅 스레드를 쉽게 발견할 수 있습니다. 그런 다음 SIMD 그룹을 선택하여 함수 호출, 루프 반복, 활성 스레드를 포함한 전체 실행 기록을 볼 수 있습니다.

더 알아보기

셰이더 최적화

Metal 디버거는 셰이더 함수 비용을 시각화하고, 셰이더 소스 내의 인라인 통계를 보여 주므로 코드를 손쉽게 최적화할 수 있습니다. 셰이더를 편집하고 다시 로드하여 성능을 비교할 수도 있습니다.

더 알아보기

자동 런타임 유효성 검사

Metal에는 강력한 런타임 진단 도구 세트가 내장되어 있어 Metal 앱이 올바르게 실행되고 있는지 확인할 수 있습니다. Xcode는 소스 코드 내에서 오류의 위치를 바로 보여 주므로 버그를 발생 전에 미리 파악하는 데 도움이 됩니다.

API 사용 확인

Metal을 통해 API를 올바르게 사용하고 있는지 확인할 수 있습니다. 예를 들어 텍스처에 실수로 잘못된 플래그를 설정한 경우 Metal이 이를 알려 줍니다.

더 알아보기

셰이더 확인

또한 Metal은 셰이더가 범위를 벗어난 버퍼에 접근하는 등의 잘못된 작업을 수행하지 않도록 방지해 줍니다. 셰이더 코드 Xcode에 문제가 있는 경우 셰이더 소스 코드 내부에서 문제가 있는 위치를 보여 줍니다.

더 알아보기

Metal 셰이더 컨버터와의 호환성

종합 Metal 개발자 도구 제품군은 Metal 셰이더 컨버터와 완벽하게 호환됩니다. 컴파일할 때 프로젝트가 디버그 정보를 포함하도록 준비하고 나면 Metal로부터 실행 시간 검증 오류를 받아 볼 수 있습니다. Metal 디버거는 변환된 셰이더의 디버깅 및 프로파일링도 지원합니다.

방법 알아보기

시작하기

macOS용 Metal 개발자 도구

Xcode를 다운로드하여 Metal 개발자 도구의 전체 모음을 사용해 보세요. Metal API 및 셰이더 사용량을 검증하고, Metal 디버거로 Metal 앱을 디버깅 및 프로파일링하고, Instruments의 Metal System Trace를 통해 시스템 성능을 분석하세요.

더 알아보기

Windows용 Metal 개발자 도구

개발자가 iOS, macOS, tvOS에 배포할 Metal 셰이더 프로그램과 애셋을 빌드할 수 있도록 지원하는 Windows 호스팅 도구, 헤더, 라이브러리 모음을 다운로드하세요.

지금 다운로드하기