컨테이너 기반 클라우드 환경은 다수의 컨테이너가 GPU(Graphic Processing Unit)를 공유할 수 있으며, GPU 공유는 GPU 자원의 유휴 시간을 최소화하고 자원 사용률을 향상할 수 있다. 하지만, GPU는 전통적으로 클라우드 환경에서 CPU, 메모리와는 다르게 컴퓨팅 자원을 논리적으로 다중화하고 사용자에게 자원 일부를 격리된 형태로 제공할 수 없다. 또한, 컨테이너는 GPU 작업을 실행할 때만 GPU 자원을 점유하며, 각 컨테이너의 GPU 작업 실행 시점이나 작업 규모를 미리 알 수 없기 때문에 자원 사용량 또한 미리 알 수 없다. 컨테이너가 GPU 자원을 임의의 시점에 제한없이 사용한다는 특징은 다수의 컨테이너가 GPU 작업을 동시에 실행하는 환경에서 자원 경쟁 상태 관리를 매우 어렵게 만들며, GPU 작업은 대부분 GPU 내부에서 블랙박스 형태로 처리되기 때문에 GPU 작업이 실행된 이후에는 GPU 자원 경쟁을 방지하는데 제한적이다. 본 논문에서는 다수의 컨테이너가 GPU 작업을 동시에 실행할 때 자원 경쟁으로 인해 발생하는 성능 저하를 방지하기 위한 컨테이너 관리기법을 제안한다. 또한, 본 논문에서는 실험을 통해 다수의 컨테이너가 GPU 작업을 동시에 실행할 때 자원 경쟁으로 인한 성능 저하 문제를 분석하고 제안하는 컨테이너 관리기법의 효율성을 증명한다.
Modern graphics processor unit (GPU) architectures offer significant hardware resource enhancements for parallel computing. However, without software optimization, GPUs continuously exhibit hardware resource underutilization. In this paper, we indicate the need to alter different warp scheduler schemes during different kernel execution periods to improve resource utilization. Existing warp schedulers cannot be aware of the kernel progress to provide an effective scheduling policy. In addition, we identified the potential for improving resource utilization for multiple-warp-scheduler GPUs by sharing stalling warps with selected warp schedulers. To address the efficiency issue of the present GPU, we coordinated the kernel-aware warp scheduler and warp sharing mechanism (KAWS). The proposed warp scheduler acknowledges the execution progress of the running kernel to adapt to a more effective scheduling policy when the kernel progress attains a point of resource underutilization. Meanwhile, the warp-sharing mechanism distributes stalling warps to different warp schedulers wherein the execution pipeline unit is ready. Our design achieves performance that is on an average higher than that of the traditional warp scheduler by 7.97% and employs marginal additional hardware overhead.
현재 개발된 GPU 가상화 기술은 모두 미세한 시분할 기법에 의한 스케줄링을 사용하기 때문에 어플리케이션 실행을 위한 오버헤드를 필요 이상으로 유발한다. 또한 이들은 가상 머신 모니터에 GPU 컴퓨팅 API를 포함하고 있어서, 가상 머신 모니터의 이식성이 약하다. 본 논문에서는 이질적 컴퓨팅 시스템에서 바이오 어플리케이션에 최적화된 GPU 가상화 기술을 제안하며, 공개 소스 Xen을 사용하여 개발하였다. 우리가 제안하는 방법은 가상 머신 간의 GPU 공유를 시분할에 의존하지 않는다. 대신에 하나의 가상 머신이 GPU를 할당 받으면 그 가상 머신이 어플리케이션을 종료할 때까지 GPU를 사용하도록 허용한다. 이렇게 하여 바이오 어플리케이션의 성능을 향상시키고 GPU의 활용률을 높인다. GPU 가상화의 이식성을 높이기 위해 하드웨어가 지원하는 IOMMU 가상화를 이용하여 GPU에 대한 직접 접근 통로를 제공한다. 미생물 유전체 분석 어플리케이션을 대상으로 성능을 분석한 결과, 본 연구에서 제안하는 직접 통로 방식에 의한 GPU 가상화는 Domain0를 통한 접근에 비해 오버헤드가 적었다. 또한 직접 접근 방식에 의한 가상 머신의 GPU 접근은, 비가상화된 머신과 거의 성능의 차이가 없었다.
RPC(Remote Procedure Call) 기반 GPU(Graphics Processing Unit) 가상화 기술은 다수의 사용자 가상머신에게 GPU를 공유하기 위한 기술 중 하나이다. 하지만 클라우드 환경에서 일반적인 GPU는 CPU나 메모리와는 다르게 가상머신의 자원 사용량을 제한할 수 있는 자원 격리(Isolation) 기술을 제공하지 않는다. 특히 RPC 기반 가상화 환경에서는 각 가상머신에서 실행되는 GPU 작업은 멀티 프로세스 형태로 수행되기 때문에 자원격리 기술의 부재는 자원 경쟁으로 인한 성능 저하 문제를 발생시킨다. 그리고 GPU 메모리 경쟁은 가상머신들의 자원 요구량이 많을수록 성능저하를 가속화하고 가상머신 사이의 균등한 성능을 보장하지 못하기 때문에 공평성이 저하되는 문제를 발생시킨다. 본 논문에서는 RPC 기반 GPU 가상화 환경에서 사용자 가상머신들의 GPU 메모리 요구량이 가용 GPU 메모리 용량을 초과했을 때 발생하는 자원 경쟁으로 인한 성능 저하 문제 분석하고 이를 해결하기 위한 GPU 메모리 관리 기법을 제안한다. 또한, 실험을 통해 본 논문에서 제안한 GPU 메모리 관리 기법이 GPGPU 작업의 성능을 향상시킬 수 있다는 것을 보여준다.
범용 그래픽 처리 장치(General Purpose Graphics Processing Unit, GPGPU)는 최근 고성능 컴퓨팅에서 중요한 역할을 함으로써, 여러 클라우드 서비스 공급업체들은 GPU 서비스를 제공하기 시작했다. 컨테이너를 사용하는 클라우드 환경에서 대부분의 클러스터 오케스트레이션 플랫폼은 정수 개의 GPU를 작업에 할당하고 다른 작업과 이를 공유하는 것을 허용하지 않는다. 이 경우 작업이 GPU에서 코어 및 메모리 등 자원이 집중적으로 필요하지 않다면 GPU 노드의 리소스 사용률이 저하될 수 있다. GPU 가상화는 응용의 동시 수행을 가능하게 하며 자원을 공유할 수 있는 기회를 제공한다. 하지만 응용의 동시 수행 성능은 동시 수행되는 응용의 특성과 노드 안에서 자원 경쟁으로 인한 간섭에 따라 달라질 수 있다. 본 논문은 컨테이너 오케스트레이션 플랫폼인 쿠버네티스(Kubernetes)를 기반으로 다중 서버 생성 및 실행을 통하여 GPU를 공유함으로써 발생할 수 있는 간섭을 측정하기 위한 프레임워크를 제안한다. 본 프레임워크를 통해 다양한 스케줄링 방법으로 GPU에서 여러 작업을 실행함으로써 이에 따른 성능 변화를 조사하였으며, 이를 통해 GPU 메모리 사용량 및 컴퓨팅 리소스만 고려해서는 최적의 스케줄링을 할 수 없음을 보인다. 마지막으로 해당 프레임워크를 사용하여 응용들의 동시 실행에 따라 발생한 간섭을 측정한다.
VR(Virtual Reality) 기술은 사용자에게 컴퓨터 그래픽으로 구성된 가상 세계를 보여줌으로써 다양한 시청각 기반 응용에 적극적으로 활용되는 인터페이스 기술이다. VR 기반 응용은 그래픽 처리 기반 응용이기 때문에 그래픽 처리를 위해 GPU(Graphics Processing Unit)가 장착된 고가의 컴퓨팅 장치가 필수적으로 요구된다. 이는 VR 응용 사용자에게 컴퓨팅 장치의 유지, 관리에 대한 비용 부담을 발생시키며, 이를 해결하는 방법의 하나로써 서비스를 클라우드 환경에서 운용하는 방법이 사용되고 있다. 본 논문에서는 다수의 컨테이너가 VR 응용을 실행하기 위해 GPU를 공유하는 컨테이너 기반 고성능 클라우드 환경에서 GPU 자원 경쟁으로 인해 발생하는 컨테이너 사이의 성능 간섭 문제를 해결하기 위한 성능 관리 기법을 제안한다. 제안하는 기법은 성능 간섭으로 인한 성능 편차를 감소시켜 사용자에게 균일한 성능의 클라우드 기반 원격 VR 서비스를 제공할 수 있도록 지원한다. 또한, 본 논문에서는 실험을 통해 제안하는 기법의 효율성을 검증한다.
Graphical Processing Units(GPUs)는 비교적 정형화된 연산을 병렬적으로 처리함으로써 높은 성능을 제공한다. 기술의 발전에 따라 GPU 환경에서 다양한 응용 실행을 시도하는 General Purpose GPU(GPGPU) 실행환경이 연구되고 있으나, 자원 분배, 스케줄링 등의 GPU 자원을 효율적으로 사용하기에는 아직 제한적이다. 최신의 GPU 구조들은 커널의 동시 실행을 지원하지만 같은 응용 안에서만 동시 실행이 가능하다는 문제점이 있어 NVIDIA는 Multi-Process Service(MPS)를 제안하였다. MPS는 다른 응용에 속한 커널도 동시 실행할 수 있도록 서비스한다. 하지만 응용의 실행 특성 및 동시 실행되는 패턴이 미리 파악되어 있지 않으면 MPS 장점을 최대한으로 취할 수 없다. 본 논문에서는 응용 프로파일링을 통해 응용의 특성을 파악하고, 동시 실행 스케줄링 알고리즘을 적용하여 실험을 진행하였다. MPS의 장점을 최대한으로 활용하기 위해서는 함께 돌릴 응용의 특성을 파악하고, 프로파일링을 통해 동시 실행하는 응용들의 순서를 제어하는 스케줄링 알고리즘이 중요함을 보인다.
현재 지능적 서비스의 핵심 기술은 딥러닝 즉 신경망, 그리고 GPU 병렬 컴퓨팅 및 빅 데이터와 같은 병렬 분산 처리 기술이다. 하지만 미래의 전 세계적으로 공유된 온톨로지를 통한 지능적 서비스 및 지식 공유 서비스에서는 지식의 표현 및 추론을 위하여 신경망보다 더 나은 방법이 있다. 그것은 시맨틱 웹의 표준 규칙 언어인 RIF 혹은 SWRL의 IF-THEN의 지식 표현이며, 이러한 규칙을 rete 알고리즘을 이용하여 효율적으로 추론할 수 있다. 하지만 단일 컴퓨터에서 동작하는 rete 알고리즘의 처리 규칙 수가 100,000개가 될 경우 그 성능이 수 십 분으로 매우 안 좋아지며, 분명한 한계가 존재한다. 따라서 본 논문에서는 rete 알고리즘의 병렬 및 분산 처리에 대한 과거로부터 현재까지의 연구 내용을 정리 분석하며, 이를 통해 효율적인 rete 알고리즘의 구현을 위해 어떤 측면들이 고려되어야 하는지를 살펴본다.
이 논문에서 우리는 국가연구데이터플랫폼 (DataON)의 분석서비스인 CANVAS (Creative ANalytics enVironment And System)를 제안한다. CANVAS는 연구데이터 분석 자원과 도구가 필요한 연구자들을 위한 개인화된 분석 클라우드 서비스이다. CANVAS는 마이크로서비스 아키텍쳐 기반으로 확장성을 고려하여 설계하였으며 전자정부프레임워크인 Spring 프레임워크, Kubernetes, JupyterLab 등의 오픈소스 소프트웨어를 이용하여 구축하였다. 구축된 시스템은 여러 사용자에게 개인화된 분석환경을 제공하며 고성능 클라우드 인프라 (CPU·GPU)를 활용하여 고속의 대용량 데이터 분석이 가능하다. 구체적으로 JupyterLab 이나 GUI 워크플로우 환경에서 데이터 모델링 및 처리가 가능하다. CANVAS는 DataON과 데이터가 공유되므로 사용자가 등록하거나 다운로드 받은 연구데이터는 CANVAS에서 바로 분석을 수행할 수 있다. 이로서 CANVAS는 DataON 사용자의 데이터 분석 편의성을 높이고 연구데이터 공유·활용 활성화에 기여한다.
많은 정보통신기술 기업들은 자체적으로 개발한 인공지능 기술을 오픈소스로 공개하였다. 예를 들어, 구글의 TensorFlow, 페이스북의 PyTorch, 마이크로소프트의 CNTK 등 여러 기업들은 자신들의 인공지능 기술들을 공개하고 있다. 이처럼 대중에게 딥러닝 오픈소스 소프트웨어를 공개함으로써 개발자 커뮤니티와의 관계와 인공지능 생태계를 강화하고, 사용자들의 실험, 적용, 개선을 얻을 수 있다. 이에 따라 머신러닝 분야는 급속히 성장하고 있고, 개발자들 또한 여러가지 학습 알고리즘을 재생산하여 각 영역에 활용하고 있다. 하지만 오픈소스 소프트웨어에 대한 다양한 분석들이 이루어진 데 반해, 실제 산업현장에서 딥러닝 오픈소스 소프트웨어를 개발하거나 활용하는데 유용한 연구 결과는 미흡한 실정이다. 따라서 본 연구에서는 딥러닝 프레임워크 사례연구를 통해 해당 프레임워크의 도입 전략을 도출하고자 한다. 기술-조직-환경 프레임워크를 기반으로 기존의 오픈 소스 소프트웨어 도입과 관련된 연구들을 리뷰하고, 이를 바탕으로 두 기업의 성공 사례와 한 기업의 실패 사례를 포함한 총 3 가지 기업의 도입 사례 분석을 통해 딥러닝 프레임워크 도입을 위한 중요한 5가지 성공 요인을 도출하였다: 팀 내 개발자의 지식과 전문성, 하드웨어(GPU) 환경, 데이터 전사 협력 체계, 딥러닝 프레임워크 플랫폼, 딥러닝 프레임워크 도구 서비스. 그리고 도출한 성공 요인을 실현하기 위한 딥러닝 프레임워크의 단계적 도입 전략을 제안하였다: 프로젝트 문제 정의, 딥러닝 방법론이 적합한 기법인지 확인, 딥러닝 프레임워크가 적합한 도구인지 확인, 기업의 딥러닝 프레임워크 사용, 기업의 딥러닝 프레임워크 확산. 본 연구를 통해 각 산업과 사업의 니즈에 따라, 딥러닝 프레임워크를 개발하거나 활용하고자 하는 기업에게 전략적인 시사점을 제공할 수 있을 것이라 기대된다.
본 웹사이트에 게시된 이메일 주소가 전자우편 수집 프로그램이나
그 밖의 기술적 장치를 이용하여 무단으로 수집되는 것을 거부하며,
이를 위반시 정보통신망법에 의해 형사 처벌됨을 유념하시기 바랍니다.
[게시일 2004년 10월 1일]
이용약관
제 1 장 총칙
제 1 조 (목적)
이 이용약관은 KoreaScience 홈페이지(이하 “당 사이트”)에서 제공하는 인터넷 서비스(이하 '서비스')의 가입조건 및 이용에 관한 제반 사항과 기타 필요한 사항을 구체적으로 규정함을 목적으로 합니다.
제 2 조 (용어의 정의)
① "이용자"라 함은 당 사이트에 접속하여 이 약관에 따라 당 사이트가 제공하는 서비스를 받는 회원 및 비회원을
말합니다.
② "회원"이라 함은 서비스를 이용하기 위하여 당 사이트에 개인정보를 제공하여 아이디(ID)와 비밀번호를 부여
받은 자를 말합니다.
③ "회원 아이디(ID)"라 함은 회원의 식별 및 서비스 이용을 위하여 자신이 선정한 문자 및 숫자의 조합을
말합니다.
④ "비밀번호(패스워드)"라 함은 회원이 자신의 비밀보호를 위하여 선정한 문자 및 숫자의 조합을 말합니다.
제 3 조 (이용약관의 효력 및 변경)
① 이 약관은 당 사이트에 게시하거나 기타의 방법으로 회원에게 공지함으로써 효력이 발생합니다.
② 당 사이트는 이 약관을 개정할 경우에 적용일자 및 개정사유를 명시하여 현행 약관과 함께 당 사이트의
초기화면에 그 적용일자 7일 이전부터 적용일자 전일까지 공지합니다. 다만, 회원에게 불리하게 약관내용을
변경하는 경우에는 최소한 30일 이상의 사전 유예기간을 두고 공지합니다. 이 경우 당 사이트는 개정 전
내용과 개정 후 내용을 명확하게 비교하여 이용자가 알기 쉽도록 표시합니다.
제 4 조(약관 외 준칙)
① 이 약관은 당 사이트가 제공하는 서비스에 관한 이용안내와 함께 적용됩니다.
② 이 약관에 명시되지 아니한 사항은 관계법령의 규정이 적용됩니다.
제 2 장 이용계약의 체결
제 5 조 (이용계약의 성립 등)
① 이용계약은 이용고객이 당 사이트가 정한 약관에 「동의합니다」를 선택하고, 당 사이트가 정한
온라인신청양식을 작성하여 서비스 이용을 신청한 후, 당 사이트가 이를 승낙함으로써 성립합니다.
② 제1항의 승낙은 당 사이트가 제공하는 과학기술정보검색, 맞춤정보, 서지정보 등 다른 서비스의 이용승낙을
포함합니다.
제 6 조 (회원가입)
서비스를 이용하고자 하는 고객은 당 사이트에서 정한 회원가입양식에 개인정보를 기재하여 가입을 하여야 합니다.
제 7 조 (개인정보의 보호 및 사용)
당 사이트는 관계법령이 정하는 바에 따라 회원 등록정보를 포함한 회원의 개인정보를 보호하기 위해 노력합니다. 회원 개인정보의 보호 및 사용에 대해서는 관련법령 및 당 사이트의 개인정보 보호정책이 적용됩니다.
제 8 조 (이용 신청의 승낙과 제한)
① 당 사이트는 제6조의 규정에 의한 이용신청고객에 대하여 서비스 이용을 승낙합니다.
② 당 사이트는 아래사항에 해당하는 경우에 대해서 승낙하지 아니 합니다.
- 이용계약 신청서의 내용을 허위로 기재한 경우
- 기타 규정한 제반사항을 위반하며 신청하는 경우
제 9 조 (회원 ID 부여 및 변경 등)
① 당 사이트는 이용고객에 대하여 약관에 정하는 바에 따라 자신이 선정한 회원 ID를 부여합니다.
② 회원 ID는 원칙적으로 변경이 불가하며 부득이한 사유로 인하여 변경 하고자 하는 경우에는 해당 ID를
해지하고 재가입해야 합니다.
③ 기타 회원 개인정보 관리 및 변경 등에 관한 사항은 서비스별 안내에 정하는 바에 의합니다.
제 3 장 계약 당사자의 의무
제 10 조 (KISTI의 의무)
① 당 사이트는 이용고객이 희망한 서비스 제공 개시일에 특별한 사정이 없는 한 서비스를 이용할 수 있도록
하여야 합니다.
② 당 사이트는 개인정보 보호를 위해 보안시스템을 구축하며 개인정보 보호정책을 공시하고 준수합니다.
③ 당 사이트는 회원으로부터 제기되는 의견이나 불만이 정당하다고 객관적으로 인정될 경우에는 적절한 절차를
거쳐 즉시 처리하여야 합니다. 다만, 즉시 처리가 곤란한 경우는 회원에게 그 사유와 처리일정을 통보하여야
합니다.
제 11 조 (회원의 의무)
① 이용자는 회원가입 신청 또는 회원정보 변경 시 실명으로 모든 사항을 사실에 근거하여 작성하여야 하며,
허위 또는 타인의 정보를 등록할 경우 일체의 권리를 주장할 수 없습니다.
② 당 사이트가 관계법령 및 개인정보 보호정책에 의거하여 그 책임을 지는 경우를 제외하고 회원에게 부여된
ID의 비밀번호 관리소홀, 부정사용에 의하여 발생하는 모든 결과에 대한 책임은 회원에게 있습니다.
③ 회원은 당 사이트 및 제 3자의 지적 재산권을 침해해서는 안 됩니다.
제 4 장 서비스의 이용
제 12 조 (서비스 이용 시간)
① 서비스 이용은 당 사이트의 업무상 또는 기술상 특별한 지장이 없는 한 연중무휴, 1일 24시간 운영을
원칙으로 합니다. 단, 당 사이트는 시스템 정기점검, 증설 및 교체를 위해 당 사이트가 정한 날이나 시간에
서비스를 일시 중단할 수 있으며, 예정되어 있는 작업으로 인한 서비스 일시중단은 당 사이트 홈페이지를
통해 사전에 공지합니다.
② 당 사이트는 서비스를 특정범위로 분할하여 각 범위별로 이용가능시간을 별도로 지정할 수 있습니다. 다만
이 경우 그 내용을 공지합니다.
제 13 조 (홈페이지 저작권)
① NDSL에서 제공하는 모든 저작물의 저작권은 원저작자에게 있으며, KISTI는 복제/배포/전송권을 확보하고
있습니다.
② NDSL에서 제공하는 콘텐츠를 상업적 및 기타 영리목적으로 복제/배포/전송할 경우 사전에 KISTI의 허락을
받아야 합니다.
③ NDSL에서 제공하는 콘텐츠를 보도, 비평, 교육, 연구 등을 위하여 정당한 범위 안에서 공정한 관행에
합치되게 인용할 수 있습니다.
④ NDSL에서 제공하는 콘텐츠를 무단 복제, 전송, 배포 기타 저작권법에 위반되는 방법으로 이용할 경우
저작권법 제136조에 따라 5년 이하의 징역 또는 5천만 원 이하의 벌금에 처해질 수 있습니다.
제 14 조 (유료서비스)
① 당 사이트 및 협력기관이 정한 유료서비스(원문복사 등)는 별도로 정해진 바에 따르며, 변경사항은 시행 전에
당 사이트 홈페이지를 통하여 회원에게 공지합니다.
② 유료서비스를 이용하려는 회원은 정해진 요금체계에 따라 요금을 납부해야 합니다.
제 5 장 계약 해지 및 이용 제한
제 15 조 (계약 해지)
회원이 이용계약을 해지하고자 하는 때에는 [가입해지] 메뉴를 이용해 직접 해지해야 합니다.
제 16 조 (서비스 이용제한)
① 당 사이트는 회원이 서비스 이용내용에 있어서 본 약관 제 11조 내용을 위반하거나, 다음 각 호에 해당하는
경우 서비스 이용을 제한할 수 있습니다.
- 2년 이상 서비스를 이용한 적이 없는 경우
- 기타 정상적인 서비스 운영에 방해가 될 경우
② 상기 이용제한 규정에 따라 서비스를 이용하는 회원에게 서비스 이용에 대하여 별도 공지 없이 서비스 이용의
일시정지, 이용계약 해지 할 수 있습니다.
제 17 조 (전자우편주소 수집 금지)
회원은 전자우편주소 추출기 등을 이용하여 전자우편주소를 수집 또는 제3자에게 제공할 수 없습니다.
제 6 장 손해배상 및 기타사항
제 18 조 (손해배상)
당 사이트는 무료로 제공되는 서비스와 관련하여 회원에게 어떠한 손해가 발생하더라도 당 사이트가 고의 또는 과실로 인한 손해발생을 제외하고는 이에 대하여 책임을 부담하지 아니합니다.
제 19 조 (관할 법원)
서비스 이용으로 발생한 분쟁에 대해 소송이 제기되는 경우 민사 소송법상의 관할 법원에 제기합니다.
[부 칙]
1. (시행일) 이 약관은 2016년 9월 5일부터 적용되며, 종전 약관은 본 약관으로 대체되며, 개정된 약관의 적용일 이전 가입자도 개정된 약관의 적용을 받습니다.