서지주요정보
I/O layout-aware task scheduler = 입출력 레이아웃을 고려한 작업 스케줄러
서명 / 저자 I/O layout-aware task scheduler = 입출력 레이아웃을 고려한 작업 스케줄러 / Dong-Hyeon Lee.
발행사항 [대전 : 한국과학기술원, 2024].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8042266

소장위치/청구기호

학술문화관(도서관)2층 학위논문

MCS 24026

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

The Non-Uniform Memory Access (NUMA) architecture, containing multiple CPUs, causes non-uniformity in I/O operation. Within a NUMA node, communication between the CPU and I/O devices takes place over Direct Cache Access (DCA), whereas communication between the CPU and I/O devices across distant NUMA nodes takes place over Direct Memory Access (DMA). DMA results in an increased incidence of cache misses during identical network operations, thereby necessitating a greater consumption of CPU cycles. Therefore, utilizing the NIC within other NUMA nodes leads to inefficient usage of CPU resources. To use CPU cycles efficiently for I/O operation, systems require to take into account the non-uniformity in I/O. There are two existing approaches to designing systems that reflect the non-uniformity in I/O: i) The scheduler allocates tasks on the NUMA node where the requested NIC exists. ii) The system extends a NIC connection to the other NUMA nodes so all nodes utilize DCA. However, the first approach does not work for the dynamic workload since it statically allocates resources. The hardware methodology only accommodates a single NIC system, resulting in considerable synchronization overhead arising from simultaneous access by all nodes to a singular NIC.In this work, we design a I/O layout-aware scheduler that handles dynamic workload while preserving the scalability inherent in general-purpose schedulers. Tasks are categorized into local or remote tasks based on where they are requested. Each node preferentially processes local tasks and processes remote tasks if there are no local tasks. To overcome the limitation of static allocation scheduling, we adopt work stealing to achieve work conservation under dynamic workload. Lastly, different NUMA affinitive tasks are mixed in the node when the processor takes remote tasks. To solve this problem, we mark the worker that processes remote tasks. Our scheduling algorithm demonstrates a throughput improvement of up to 48\% in the case of a balanced workload compared to the existing general-purpose scheduler. Our scheduler shows up to 78\% higher throughput for an unbalanced workload than strict boundary scheduling.

여러 개의 CPU를 포함하는 시스템의 일반적인 구조인 NUMA 아키텍처는 입출력 장치와의 통신에서 성능 불균일을 발생시킨다. 한 NUMA 노드에 존재하는 CPU와 NIC는 DCA를 통해 데이터 통신을 할 수 있지만, 서로 다른 노드에 존재하는 CPU와 NIC는 DMA를 통해 데이터 통신을 한다. DCA를 통한 데이터 통신과 비교하면 DMA를 통한 데이터 통신이 네트워크 작업당 더 많은 캐시 미스를 발생시키기 때문에, 더 많은 CPU 자원을 필요로 한다. 따라서 다른 노드의 존재하는 NIC의 사용은 CPU 자원을 비효율적으로 활용한다. 입출력 작업에 대해 CPU 자원을 효율적으로 사용하기 위해서는 시스템이 입출력 성능 불균일성을 고려하도록 해야 한다. 기존에 존재하는 접근 방법은 크게 두 가지가 있다. 첫 번째 시스템은 NIC가 포함된 노드에 우선하여 자원을 할당하는 것이다. 두 번째 시스템은 NIC와 노드 간의 연결을 확장시켜서 모든 노드에 직접 연결하는 것이다. 첫 번째 방식은 자원을 정적으로 할당하기 때문에 변화가 많은 네트워크 작업량에 대해 스케줄링이 제대로 작동하지 못한다. 또한, 두 번째 방식은 하나의 NIC를 사용하는 시스템에 한해서 적용할 수 있고, 모든 노드가 NIC를 공유하기 때문에 동시성 문제가 발생한다.본 연구에서는 입출력 불균일을 고려하고, 범용 스케줄러의 확장성과 다양한 형태의 네트워크 작업량을 처리할 수 있는 스케줄러를 설계한다. 각 노드의 프로세서는 그 노드에 연결된 NIC로 들어온 네트워크 요청을 먼저 처리하고, 해당 요청이 존재하지 않을 때 다른 노드에 대한 요청을 처리한다. 정적 할당 방식의 한계를 극복하기 위해 작업 도용 방식을 도입해서 불균형한 요청에 대해서 자원을 효율적으로 쓸 수 있도록 했다. 마지막으로, 다른 노드에 대한 요청을 하고 옴으로써 노드 내에서 서로 다른 요청이 섞이는 현상이 발생한다. 이를 해결하기 위해 해당 프로세서에 표시해서 작업이 섞이는 것을 방지했다. 본 연구에서 구현한 스케줄러는 균형 있는 네트워크 작업량에 대해서 기존의 범용 스케줄러보다 최대 48퍼센트 높은 처리량을 보였고, 불균형한 네트워크 작업량에 대해서 노드 분리 스케줄링 방식보다 최대 78퍼센트 높은 처리량을 보였다.

서지기타정보

서지기타정보
청구기호 {MCS 24026
형태사항 iv, 27 p. : 삽도 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 이동현
지도교수의 영문표기 : Sue Bok Moon
지도교수의 한글표기 : 문수복
Including appendix
학위논문 학위논문(석사) - 한국과학기술원 : 전산학부,
서지주기 References : p. 23-25
주제 NUMA 구조
직접 메모리 접근
직접 캐시 접근
CPU
입출력
네트워크
범용 스케줄러
작업 도용 스케줄러
NUMA architecture
Direct memory access
Direct cache access
CPU
I/O
NIC
General-purpose scheduler
Work stealing scheduler
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서