초록 열기/닫기 버튼

최근 고성능컴퓨팅, 인공지능 분야에서 GPU 장치 사용이 일반화되고 있지만, GPU 프로그래밍은 여전히 어렵게 여겨진다. 특히 호스트(host)메모리와 GPU 메모리를 별도로 관리하기 때문에 성능과 편의성 방면에서 연구가 활발히 진행되고 있다. 이에 따라 여려가지 CPU-GPU 메모리전송 방법들이 연구되고 있다. 한편 CPU와 GPU 및 통합메모리(Unified memory) 등 하나의 실리콘 패키지로 묶는 SoC(System on a Chip) 제품들이최근에 많이 출시되고 있다. 본 연구는 이러한 통합메모리 장치에서 CPU, GPU 장치간 데이터를 사용하고 전송시 성능관련 비교를 하고자 한다. 기존 CPU내 호스트 메모리와 GPU 메모리가 분리된 환경과는 다른 특징을 보여준다. 여기서는 통합메모리 장치인 NVIDIA SoC칩들과 NVIDIASMX 기반 V100 GPU 카드에서 CPU-GPU 간 데이터 전송 프로그래밍 기법별로 성능비교를 한다. 성능비교를 위해 워크로드는 HPC 분야의 수치계산에서 자주 사용하는 2차원 행렬 전치 커널이다. 실험을 통해 CPU-GPU 메모리 전송 프로그래밍 방법별 GPU 커널 성능차이, 페이지 잠긴 메모리와페이지 가능 메모리를 사용했을 경우 전송 성능차이, 전체(Overall) 성능비교, 마지막으로 워크로드 크기별 성능비교를 하였다. 이를 통해 통합메모리칩인 NVIDIA Xavier에서 I/O 캐시일관성 지원을 통해 SoC 칩내 통합메모리에 대한 이점을 극대화 할 수 있음을 확인할 수 있었다.


Recently, as GPU performance has improved in HPC and artificial intelligence, its use is becoming more common, but GPU programmingis still a big obstacle in terms of productivity. In particular, due to the difficulty of managing host memory and GPU memory separately,research is being actively conducted in terms of convenience and performance, and various CPU-GPU memory transfer programming methodsare suggested. Meanwhile, recently many SoC (System on a Chip) products such as Apple M1 and NVIDIA Tegra that bundle CPU, GPU,and integrated memory into one large silicon package are emerging. In this study, data between CPU and GPU devices are used in suchan integrated memory device and performance-related research is conducted during transmission. It shows different characteristics fromthe existing environment in which the host memory and GPU memory in the CPU are separated. Here, we want to compare performanceby CPU-GPU data transmission method in NVIDIA SoC chips, which are integrated memory devices, and NVIDIA SMX-based V100 GPUdevices. For the experimental workload for performance comparison, a two-dimensional matrix transposition example frequently used inHPC applications was used. We analyzed the following performance factors: the difference in GPU kernel performance according to theCPU-GPU memory transfer method for each GPU device, the transfer performance difference between page-locked memory and pageablememory, overall performance comparison, and performance comparison by workload size. Through this experiment, it was confirmed thatthe NVIDIA Xavier can maximize the benefits of integrated memory in the SoC chip by supporting I/O cache consistency.