기존 운영체제는 NUMA 기반의 매니코어 시스템에서 작업량의 증가에 따른 확장성 문제를 보인다. 특히 네트워크 I/O 관점에서 캐시 일관성 비용과 lock 오버헤드 등은 네트워크 I/O 성능을 제한...

http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.
변환된 중국어를 복사하여 사용하시면 됩니다.
https://www.riss.kr/link?id=T14427628
서울 : 건국대학교, 2017
학위논문(석사) -- 건국대학교 대학원 , 컴퓨터·정보통신공학과 , 2017
2017
한국어
004.5 판사항(6)
004.6 판사항(23)
서울
vi, 41장 : 도표 ; 26 cm
지도교수: 진현욱
참고문헌: 장 40-41
0
상세조회0
다운로드기존 운영체제는 NUMA 기반의 매니코어 시스템에서 작업량의 증가에 따른 확장성 문제를 보인다. 특히 네트워크 I/O 관점에서 캐시 일관성 비용과 lock 오버헤드 등은 네트워크 I/O 성능을 제한...
기존 운영체제는 NUMA 기반의 매니코어 시스템에서 작업량의 증가에 따른 확장성 문제를 보인다. 특히 네트워크 I/O 관점에서 캐시 일관성 비용과 lock 오버헤드 등은 네트워크 I/O 성능을 제한하는 주된 요인이다. 이러한 문제를 해결하기 위해서 기존 연구들은 마이크로 커널과 같은 새로운 커널 구조를 제안하거나, 커널 수준의 수정과 함께 새로운 프로그래밍 인터페이스를 구현하였다. 그러나 기존의 연구들은 응용 소프트웨어의 변경을 요구하기 때문에 이미 구현된 수많은 응용 소프트웨어를 그대로 사용할 수 없다는 단점을 가지고 있다.
본 논문에서는 응용 문맥과 시스템 호출 문맥의 수행 코어를 분리시켜 지역성을 극대화 하고, 소켓 간 캐시 일관성 활동 수를 줄일 수 있는 라이브러리를 제안한다. 제안된 라이브러리는 기존 커널이나 응용을 변경하지 않고 사용할 수 있다.
구현된 라이브러리는 응용 문맥과 시스템 호출 문맥간의 메시지 전달을 위해 프로세스 간 통신(IPC)을 사용하지만, TTCP 마이크로 벤치마크를 통해 IPC로 인한 부작용이 치명적이지 않음을 보인다. 응용 수준의 성능 분석을 위해서는 Apache와 Memcached의 네트워크 I/O 처리율을 측정하였다. 실험 결과 본 논문에서 제안한 라이브러리를 적용하였을 때 소켓 간 캐시 일관성 활동 수를 최대 60% 줄이고, 네트워크 처리량을 최대 35% 향상시킬 수 있음을 보인다.
다국어 초록 (Multilingual Abstract)
Existing operating systems show scalability problems as the workload increases on NUMA-based manycore systems. Particularly, in the perspective of network I/O, cache consistency costs and locking overheads are the major reasons of limiting the network...
Existing operating systems show scalability problems as the workload increases on NUMA-based manycore systems. Particularly, in the perspective of network I/O, cache consistency costs and locking overheads are the major reasons of limiting the network I/O performance. To resolve these issues, many studies have either suggested a new kernel architecture, such as microkernel, or implemented new programming interfaces with kernel modifications. However, these require to modify applications; thus, the numerous applications already implemented cannot directly benefit from these suggestions.
In this study, we propose the library that partitions the processor cores into one group for user contexts and the other for system-call contexts, which can maximize locality and reduce activities for inter-socket cache coherence. The proposed library does not require any modifications of the kernel and applications.
The implemented library uses inter-process communication (IPC) to exchange messages between user context and system-call context. However, by presenting TTCP micro-benchmark results, we show that the IPC overheads are not fatal to overall performance. To analyze the application-level performance, we measure the network I/O performance of Apache and Memcached. Experiment results show that our library can reduce activities for inter-socket cache coherence by up to 40% and improve the network throughput by up to 35%.
목차 (Table of Contents)