Abstract
In the semi-conductor process, a simulation process is performed to detect defects by analyzing the behavior of the impurity through the physical quantity calculation of the inner element. In order to perform the simulation, Finite-Difference Time-Domain(FDTD) algorithm is used. The improvement of semiconductor which is composed of nanoscale elements, the size of simulation is getting bigger. Problems that a processor such as CPU or GPU cannot perform the simulation due to the massive size of matrix or a computer consist of multiple processors cannot handle a massive FDTD may come up. For those problems, studies are performed with parallel/distributed computing. However, in the past, only single type of processor was used. In GPU's case, it performs fast, but at the same time, it has limited memory. On the other hand, in CPU, it performs slower than that of GPU. To solve the problem, we implemented a computing model that can handle any FDTD simulation regardless of size on the cluster which consist of heterogeneous processors. We tested the simulation on processors using MPI libraries which is based on 'point to point' communication and verified that it operates correctly regardless of the number of node and type. Also, we analyzed the performance by measuring the total execution time and specific time for the simulation on each test.
반도체 공정에서는 소자 내부의 물리량 계산을 통해 불순물의 움직임을 해석하여 결점을 검출하는 시뮬레이션을 수행하게 된다. 이를 위해 유한 차분 시간 영역 알고리즘(Finite-Difference Time-Domain, 이하 FDTD)과 같은 수치해석 기법이 사용된다. 반도체 칩의 집적도 향상으로 인하여 소자의 크기는 나노스케일 시대로 접어들었으며, 시뮬레이션 사이즈 또한 커지고 있는 추세이다. 이에 따라 CPU와 GPU 같은 하나의 연산 장치에서 수행할 수 없는 문제와 다중의 연산 장치로 구성된 한 대의 컴퓨터에서 수행할 수 없는 문제가 발생하기도 한다. 이러한 문제로 인해 분산 병렬처리를 통한 FDTD 알고리즘 연구가 진행되고 있다. 하지만 기존의 연구들은 단일 연산장치만을 이용하기 때문에 GPU를 사용하는 경우 연산 속도는 빠르나 메모리의 제한이 있으며 CPU의 경우 GPU에 비해 연산 속도가 느린 단점이 존재한다. 이를 해결하기 위해 본 논문에서는 CPU, GPU의 이기종 연산 장치를 포함하는 컴퓨터로 구축된 클러스터 상에서 작업 사이즈에 제한되지 않고 시뮬레이션 수행이 가능한 컴퓨팅 모델을 구현하였다. 점대점 통신 기반의 MPI 라이브러리를 이용하여 연산 장치 간 통신을 통한 시뮬레이션을 테스트 하였고 사용하는 연산 장치의 종류와 수에 상관없이 시뮬레이션이 정상 동작함을 확인하였다.