A Study on Optimized Multi-Thread Porgramming : Information and The Use of Unitiy DOTS
Hyun‐Chul Song · Journal of Digital Contents Society · 2021
최근 게임 개발자들이 게임 엔진을 활용하여 콘텐츠를 개발하다 보면 가장 애쓰는 부분이 속도와 성능이다. 특히 큰 규모의 콘텐츠의 경우 수많은 최적화를 필요로 한다. 더불어 게임 소비자가 2개 이상의 하드웨어 코어를 가지게 된지 10년이 넘은 지금까지도 멀티 코어를 효과적으로 사용하는 프로그램을 제공하기란 매우 어려운 상태다. Unity는 고성능 멀티스레드 데이터 지향기술 스택(DOTS; Data-Oriented Technology Stack)으로 엔진의 핵심 기반을 재구축하고 있다. 본 연구는 DOTS에 포함된 기능(C# Job System, Entity Componet System, Burst Compiler)을 활용 시 프로그래머는 가이드라인만 맞추어 코딩하면 성능을 상당히 향상시키면서 쉽게 멀티스레드 코드를 작성할 수 있다는 것을 알 수 있고 오늘날 복잡하거나 대규모의 콘텐츠 제작에 있어서 적절한 최적화된 멀티 스레드 프로그래밍 기법을 제안하는 것에 목적이 있다.