Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon NSIGHT 시스템은 CPU-GPU 상호 작용을 어떻게 시각화합니까?


NSIGHT 시스템은 CPU-GPU 상호 작용을 어떻게 시각화합니까?


NSight Systems는 응용 프로그램에서 CPU-GPU 상호 작용을 시각화하고 분석하도록 설계된 강력한 도구입니다. 성능 병목 현상 및 최적화 기회에 대한 통찰력을 제공합니다. 이러한 상호 작용을 시각화하는 방법은 다음과 같습니다.

시스템 전체의 성능 분석

NSIGHT 시스템은 CPU 및 GPU 이벤트를 포함하여 시스템 전체의 활동 데이터를 캡처하고 통합 타임 라인에 표시합니다. 이 타임 라인을 통해 개발자는 시스템의 다양한 구성 요소가 시간이 지남에 따라 어떻게 서로 상호 작용하는지 확인할 수 있으므로 응용 프로그램의 워크 플로우에서 상관 관계, 종속성 및 병목 현상을 더 쉽게 식별 할 수 있습니다 [3] [4].

CPU 활동 시각화

NSight Systems는 스레드 상태, 활용 및 알고리즘 실행을 보여줌으로써 CPU 활동을 시각화합니다. 이를 통해 개발자는 CPU 리소스 사용 방법과 잠재적 인 병목 현상이 존재하는 위치를 이해하는 데 도움이됩니다. 이 도구는 다중 프로세스 트리 분석을 지원하므로 사용자는 여러 프로세스 및 스레드의 활동을 동시에 추적 할 수 있습니다 [1] [3].

GPU 활동 시각화

GPU 활동을 위해 NSIGHT SYSTEMS는 스트리밍-다중 프로세서 (SM) 최적화, 메모리 전송 및 커널 실행을 포함한 GPU 워크로드에 대한 자세한 통찰력을 제공합니다. Cuda, Vulkan 및 OpenGL과 같은 다양한 GPU API를 추적하여 개발자가 GPU 컴퓨팅 및 그래픽 작업을 심층적으로 분석 할 수 있도록합니다 [3] [4]. 이 도구는 SM 사용, 텐서 핵심 활동 및 교육 처리량과 같은 메트릭을 포함하는 GPU 메트릭 샘플링도 제공합니다. 이러한 메트릭은 개발자가 GPU 리소스 사용에서 활용률 또는 비 효율성을 식별하여 GPU 성능을 최적화하는 데 도움이됩니다 [1] [3].

CPU 및 GPU 이벤트 상관 관계

NSight 시스템의 주요 기능 중 하나는 CPU 및 GPU 이벤트를 연관시키는 능력입니다. 동일한 타임 라인에서 CPU 및 GPU 활동을 모두 시각화함으로써 개발자는 CPU 운영이 GPU 성능에 어떤 영향을 미치는지, 그 반대도 마찬가지입니다. 이 상관 관계는 데이터 전송 지연 또는 동기화 문제와 같은 CPU와 GPU 간의 상호 작용으로 인해 발생하는 병목 현상을 식별하는 데 중요합니다 [3] [4].

오버 헤드가 낮고 확장 성

NSight 시스템은 오버 헤드가 낮은 상태로 작동하도록 설계되어 프로파일 링 프로세스가 응용 프로그램의 성능에 크게 영향을 미치지 않도록합니다. 이로 인해 워크 스테이션에서 데이터 센터 및 클라우드 환경에 이르기까지 다양한 NVIDIA 플랫폼에서 실행되는 복잡한 대규모 응용 프로그램을 분석하는 데 적합합니다 [3] [6].

사용자 인터페이스 및 탐색

이 도구는 스크롤 막대, 마우스 휠 및 키보드 바로 가기를 사용하여 타임 라인보기를 탐색 할 수있는 사용자 친화적 인 GUI를 제공합니다. 이 인터페이스를 통해 사용자는 특정 시간 범위 또는 이벤트를 확대 할 수있어 성능 문제에 대한 자세한 분석을 용이하게합니다 [5] [9].

전반적으로 NSight Systems는 CPU-GPU 상호 작용에 대한 포괄적 인 관점을 제공하여 개발자가 광범위한 플랫폼에서 더 나은 성능과 효율성을 위해 응용 프로그램을 최적화 할 수 있습니다.

인용 :
[1] https://extremecomputingtraining.anl.gov/wp-content/uploads/sites/96/2022/11/atpesc-2022-track-6-talk-2-keipert-nvidia.pdf
[2] https://bede-documentation.readthedocs.io/en/latest/software/tools/nsight-systems.html
[3] https://developer.nvidia.com/nsight-systems
[4] https://indico.cern.ch/event/962112/contriptions/4047370/attachments/2159916/3643963/nsight%20Systems%20-%20x86%20Intruction%20-20cern.pdf
[5] https://www.youtube.com/watch?v=TGCHXCFM-YO
[6] https://docs.nersc.gov/tools/performance/nvidiaproftools/
[7] https://www.youtube.com/watch?v=KKANP0KL_HK
[8] https://docs.nvidia.com/nsight-systems/userguide/index.html
[9] https://www.youtube.com/watch?v=dudgo66iadu
[10] https://dev-discuss.pytorch.org/t/using-nsight-systems-to-profile-gpu-workload/59