디지털 라이브러리[ 검색결과 ]
확장성 있는 분산 딥러닝 학습을 위한 데이터 불균형 최소화 기법
http://doi.org/10.5626/JOK.2023.50.10.836
심층 신경망의 학습은 계산 집약적이고 오랜 시간이 걸리기 때문에, 학습의 가속화를 위해 다수의 GPU가 장착된 GPU 클러스터를 사용하여 학습을 분산시키는 방법이 널리 사용되고 있다. 심층 신경망의 분산 학습은 계산이 가장 느린 straggler 노드에 의해 속도와 확장성이 저하되어 straggler 문제를 해결하기 위한 선행 연구들이 제안되었다. 그러나 기존의 방식은 이미지와 같이 모든 데이터 샘플들이 일정한 크기를 가지고 있다고 가정했기 때문에 영상이나 음성 데이터와 같이 데이터 샘플들의 크기가 서로 다른 불균형 데이터를 사용한 분산 학습의 문제점을 인지하지 못했다. 본 논문에서는 데이터 샘플들 간 크기의 차이로 인해 발생하는 straggler 문제를 발견하고 이를 해결하기 위해 데이터 불균형을 고려한 데이터 불균형 최소화 기법 (Data Imbalance Minimization, DIM) 을 제안한다. 여덟 대의 NVIDIA Tesla T4 GPU가 장착된 클러스터에서 DIM의 성능을 평가한 결과 DIM은 최신 시스템에 비해 최대 1.77배의 학습 속도 향상 및 비슷한 수준의 확장성을 가진다.
멀티코어 환경에서 비실시간 메시지의 응답시간 지연을 최소화하는 리눅스 기반 메시지 처리기의 설계 및 구현
왕상호, 박영훈, 박성용, 김승춘, 김철회, 김상준, 진철
메시지 처리기란 다양한 클라이언트로부터 오는 메시지를 받아 처리하는 서버 소프트웨어이며, 메시지의 종류에 따라 마감기한 이내에 처리해야 하는 실시간 메시지와 비실시간 메시지를 처리한다. 최근 마이크로프로세서 기술의 발전과 리눅스의 빠른 보급에 따라 메시지 처리기는 멀티코어 기반의 리눅스 서버에서 구현되고 있으며, 멀티코어 환경에서는 코어를 효율적으로 사용해야 시스템의 성능을 극대화 시킬 수 있다. 멀티코어를 효율적으로 사용하기 위한 다양한 실시간 스케줄러가 제안되어 있지만, 많은 연구들이 이론적 분석이나 시뮬레이션에 국한되어 있고, 리눅스를 위해 제안된 일부 알고리즘들도 커널을 수정하거나 특정 커널 버전에서만 동작된다는 단점이 있다. 본 논문에서는 멀티코어 환경에서 쓰레드를 사용자 수준에서 코어에 직접 매핑하는 리눅스 기반 메시지 처리기의 구조를 제안한다. 구현된 메시지 처리기에서는 기존의 RM(Rate Monotonic) 알고리즘을 수정하여 사용하였고, 특정 코어에 최대한 실시간 메시지를 몰아서 처리하도록 First fit 기반의 빈패킹(Bin-Packing) 알고리즘을 사용하여, 실시간 메시지의 위배율을 보장하면서 비실시간 메시지의 응답시간의 지연을 최소화하였다. 성능평가를 위하여 LITMUS 프레임워크에서 제공하는 2가지 멀티코어 스케줄링 알고리즘(GSN-EDF, P-FP)을 이용하여 메시지 처리기를 구현한 후 제안된 시스템과 비교한 결과, 비실시간 메시지의 응답시간이 2가지 알고리즘 대비 최대 17~18%까지 향상되는 것을 확인하였다.
멀티코어 환경에서 SEDA 기반 메시지 처리기의 수행함수 특성을 고려한 쓰레드 매핑 기법
메시지 처리기란 클라이언트들로부터 수신된 다양한 포맷의 메시지를 수신 메시지 별 쓰레드를 생성하여 처리하고 그 결과를 목적지로 전달하는 서버 소프트웨어를 말한다. 본 논문에서는 SEDA(The Stage Event Driven Architecture) 구조의 메시지 처리기에서 각 수행함수가 CPU 또는 IO bound 특성을 가질 수 있다는 점에 착안하여, 수행 함수 별 특성을 고려해 쓰레드를 각 코어에 매핑하는 FC-TM(Function Characteristic aware Thread Mapping) 기법을 제안하였다. 본 논문에서는 메시지 처리에 필요한 각 수행함수의 특성이 정적인 것으로 가정하였다. 따라서 수행 가능한 함수를 미리 프로파일링(profiling)하여 특성을 분석한 후, 실제 수신되는 메시지에 따라 단위시간 당 처리량(throughput)이 최대가 되도록 쓰레 드를 매핑하였다. 성능 평가 결과 IO bound한 함수가 특정 비율 이상 있을 경우, 기존 연구보다 단위시간 당 처리량이 최대 72%까지 증가하였다.