초록
최근 그래픽 프로세서(GPU)의 발전에 따라 대량의 프로세서를 탑재한 고성능 그래픽 카드가 개인 컴퓨터에서 널리 사용되고 있다. GPU를 사용하여 CPU의 부하를 줄이면서도 성능을 향상시킬 수 있어서 복잡한 연산을 처리해야 하는 다양한 응용 프로그램에 적용하는 연구가 활발히 진행되고 있다. 본 논문에서는 복잡한 연산이 필요한 공간 데이터 처리의 성능을 향상시키기 위하여 GPU의 병렬 처리 기술을 활용하는 방법을 제안하였다. 원본 공간 데이터를 화면에 출력하기 위해서는 그래픽 처리 연산이 필요하며 같은 종류의 연산을 모든 데이터에 적용해야 하므로 GPU의 SIMD 병렬 처리를 사용하여 성능을 향상시킬 수 있다.
Recently, GPU (Graphics Processing Unit) has been improved rapidly on the need of speed for gaming. As a result, GPU contains multiple ALU (Arithmetic Logic Unit) for parallel processing of a lot of graphics data, such as transform, ray tracing, etc. Therefore, this paper proposed a technique for parallel processing of spatial data using GPU. Spatial data consists of multiple coordinates, and each coordinate contains value of x and y axis. To display spatial data graphics operations have to be processed to large amount of coordinates. Because the graphics operation is identical and coordinates are multiple data, SIMD (Single Instruction Multiple Data) parallel processing of GPU can be used for processing of spatial data to improve performance. This paper implemented SIMD parallel processing of spatial data using two kinds of SDK (Software Development Kit). CUDA and ATI Stream are used for NVIDIA and ATI GPU respectively. Experiments that measure time of calculation for graphics operations are carried out to observe enhancement of performance. Experimental result is reported that proposed method can enhance performance up to 1,162% for graphics operations. The proposed method that uses parallel processing with GPU for spatial data can be generally used to enhance performance for applications which deal with large amount of spatial data.