RISS 학술연구정보서비스

검색
다국어 입력

http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.

변환된 중국어를 복사하여 사용하시면 됩니다.

예시)
  • 中文 을 입력하시려면 zhongwen을 입력하시고 space를누르시면됩니다.
  • 北京 을 입력하시려면 beijing을 입력하시고 space를 누르시면 됩니다.
닫기
    인기검색어 순위 펼치기

    RISS 인기검색어

      메모리를 고려한 NUMA 구조기반의 다중 처리기 스케줄러

      한글로보기

      https://www.riss.kr/link?id=T12165528

      • 저자
      • 발행사항

        용인 : 단국대학교 대학원, 2010

      • 학위논문사항
      • 발행연도

        2010

      • 작성언어

        한국어

      • 주제어
      • DDC

        004 판사항(22)

      • 발행국(도시)

        경기도

      • 기타서명

        Memory Aware CPU Scheduler for Multicore with NUMA Architecture

      • 형태사항

        iv, 32장 : 삽도 ; 30 cm.

      • 일반주기명

        단국대학교 논문은 저작권에 의해 보호받습니다.
        지도교수: 최종무
        참고문헌 : 28장

      • 소장기관
        • 단국대학교 율곡기념도서관(천안) 소장기관정보
        • 단국대학교 퇴계기념도서관(중앙도서관) 소장기관정보
      • 0

        상세조회
      • 0

        다운로드
      서지정보 열기
      • 내보내기
      • 내책장담기
      • 공유하기
      • 오류접수

      부가정보

      국문 초록 (Abstract) kakao i 다국어 번역

      컴퓨터 구조의 최근 경향 중 하나는 8개의 처리기를 사용하는 Intel사의 Xeon, 12개의 처리기를 사용하는 AMD사의 옵테론, 그리고 4개의 처리기를 사용하는 ARM사의 Coretex-A9와 같이 다수의 처리기를 사용하고 있다는 점이다. 또한 다중 처리기와 DRAM들간의 버스 경쟁상태를 줄이기 위하여 각 처리기들이 원격 메모리보다 더 빨리 지역 메모리에 접근 할 수 있는NUMA(Non-Uniform Memory Access) 구조의 메모리 구성을 사용한다. 이러한 컴퓨터 구조의 경향은 운영체제의 시스템에 대해서, 특히 처리기 스케줄링 정책에 대해 다시 생각하게끔 이끈다.
      본 논문에서는 NUMA 구조로 메모리가 구성된 다중 처리기 구조에서 메모리 이용률을 고려한 처리기 스케줄러라고 불리는 새로운 처리기 스케줄러를 제안한다. 이 스케줄러는 다음과 같은 2가지 기술을 사용하여 구현되었다. 첫째, 각 메모리들의 이용률을 관찰하고 가장 적은 메모리 이용률을 갖게되는 처리기에 프로세스들을 할당한다. 둘째, 메모리 이용률을 고려한 처리기 할당의 전반적인 시간을 최소화하기 위하여 프로세스 형성 시간과 로드 밸런싱 시간이 아닌, 프로세스 로딩 시간에 처리기 할당 결정을 수행한다.
      위와 같이 제안된 스케줄러는 리눅스 커널 2.6.32 상에서 수행된다. 이러한 리눅스 커널은 4개의 처리기를 가진 2개의 Intel Xeon, 32GB의 DDR3 DRAM과 1TB SAS 디스크 및 주변 장치들로 구성된 하드웨어 플랫폼을 기반으로 한다. 32GB DRAM은 2개의 메모리 단위로 나뉘어지는데, 이 2개의 메모리 단위에서 첫번째 프로세서는 지역 메모리로서 하나의 단위를 사용하고, 역으로 두번째 프로세서는 원격 메모리로서 다른 하나의 단위를 사용한다. 3가지의 벤치마크로 보여지는 실험 결과는 제안된 스케줄러가 기존의 리눅스 스케줄러와 비교했을때, 벤치마크의 수행시간을 줄일 수 있다는 것을 보여준다.
      번역하기

      컴퓨터 구조의 최근 경향 중 하나는 8개의 처리기를 사용하는 Intel사의 Xeon, 12개의 처리기를 사용하는 AMD사의 옵테론, 그리고 4개의 처리기를 사용하는 ARM사의 Coretex-A9와 같이 다수의 처리기...

      컴퓨터 구조의 최근 경향 중 하나는 8개의 처리기를 사용하는 Intel사의 Xeon, 12개의 처리기를 사용하는 AMD사의 옵테론, 그리고 4개의 처리기를 사용하는 ARM사의 Coretex-A9와 같이 다수의 처리기를 사용하고 있다는 점이다. 또한 다중 처리기와 DRAM들간의 버스 경쟁상태를 줄이기 위하여 각 처리기들이 원격 메모리보다 더 빨리 지역 메모리에 접근 할 수 있는NUMA(Non-Uniform Memory Access) 구조의 메모리 구성을 사용한다. 이러한 컴퓨터 구조의 경향은 운영체제의 시스템에 대해서, 특히 처리기 스케줄링 정책에 대해 다시 생각하게끔 이끈다.
      본 논문에서는 NUMA 구조로 메모리가 구성된 다중 처리기 구조에서 메모리 이용률을 고려한 처리기 스케줄러라고 불리는 새로운 처리기 스케줄러를 제안한다. 이 스케줄러는 다음과 같은 2가지 기술을 사용하여 구현되었다. 첫째, 각 메모리들의 이용률을 관찰하고 가장 적은 메모리 이용률을 갖게되는 처리기에 프로세스들을 할당한다. 둘째, 메모리 이용률을 고려한 처리기 할당의 전반적인 시간을 최소화하기 위하여 프로세스 형성 시간과 로드 밸런싱 시간이 아닌, 프로세스 로딩 시간에 처리기 할당 결정을 수행한다.
      위와 같이 제안된 스케줄러는 리눅스 커널 2.6.32 상에서 수행된다. 이러한 리눅스 커널은 4개의 처리기를 가진 2개의 Intel Xeon, 32GB의 DDR3 DRAM과 1TB SAS 디스크 및 주변 장치들로 구성된 하드웨어 플랫폼을 기반으로 한다. 32GB DRAM은 2개의 메모리 단위로 나뉘어지는데, 이 2개의 메모리 단위에서 첫번째 프로세서는 지역 메모리로서 하나의 단위를 사용하고, 역으로 두번째 프로세서는 원격 메모리로서 다른 하나의 단위를 사용한다. 3가지의 벤치마크로 보여지는 실험 결과는 제안된 스케줄러가 기존의 리눅스 스케줄러와 비교했을때, 벤치마크의 수행시간을 줄일 수 있다는 것을 보여준다.

      더보기

      다국어 초록 (Multilingual Abstract) kakao i 다국어 번역

      One of the recent trends of computer architectures is applying multiple cores such as Intel’s Xeon with 8 cores, AMD Opteron with 12 cores, and ARM Coretex-A9 with 4 cores. Also, to reduce bus contention between multiple cores and DRAMs, these architectures adopt the NUMA (Non-Uniform Memory Access) memory organization, wherein each core can access local memory faster than remote memory. These trends of computer architectures lead to rethink the policies of operating systems, especially the CPU scheduling policies.

      In this paper, we propose a novel CPU scheduler, called memory-aware CPU scheduler, for the multicore architectures with the NUMA memory organization. It makes use of the following two techniques. First, it monitors the utilization of each memory and allocates processes to cores having the least memory utilization, which enables to distribute processes evenly among memories and to decrease the possibility of referencing remote memories. Second, it conducts a CPU allocation decision at the process loading time, not at the process creation time and at the load balancing time to minimize the overheads of memory-aware CPU allocations.

      The proposed scheduler has been implemented on Linux kernel version 2.6.32, based on the hardware platforms consisting of Intel Xeon 8 cores (2 processors), 32GB DDR3 DRAM, 1TB SAS Disk, and peripherals. The 32GB DRAM is divided into two memory units where the first processor uses one unit as local memory and the other as remote memory, and vice versa. Experimental results with three benchmarks have shown that the proposed scheduler can reduce the execution time.
      번역하기

      One of the recent trends of computer architectures is applying multiple cores such as Intel’s Xeon with 8 cores, AMD Opteron with 12 cores, and ARM Coretex-A9 with 4 cores. Also, to reduce bus contention between multiple cores and DRAMs, these archi...

      One of the recent trends of computer architectures is applying multiple cores such as Intel’s Xeon with 8 cores, AMD Opteron with 12 cores, and ARM Coretex-A9 with 4 cores. Also, to reduce bus contention between multiple cores and DRAMs, these architectures adopt the NUMA (Non-Uniform Memory Access) memory organization, wherein each core can access local memory faster than remote memory. These trends of computer architectures lead to rethink the policies of operating systems, especially the CPU scheduling policies.

      In this paper, we propose a novel CPU scheduler, called memory-aware CPU scheduler, for the multicore architectures with the NUMA memory organization. It makes use of the following two techniques. First, it monitors the utilization of each memory and allocates processes to cores having the least memory utilization, which enables to distribute processes evenly among memories and to decrease the possibility of referencing remote memories. Second, it conducts a CPU allocation decision at the process loading time, not at the process creation time and at the load balancing time to minimize the overheads of memory-aware CPU allocations.

      The proposed scheduler has been implemented on Linux kernel version 2.6.32, based on the hardware platforms consisting of Intel Xeon 8 cores (2 processors), 32GB DDR3 DRAM, 1TB SAS Disk, and peripherals. The 32GB DRAM is divided into two memory units where the first processor uses one unit as local memory and the other as remote memory, and vice versa. Experimental results with three benchmarks have shown that the proposed scheduler can reduce the execution time.

      더보기

      목차 (Table of Contents)

      • Ⅰ. 서론 1
      • 1. 연구 배경 1
      • 2. 연구 내용 2
      • 3. 논문 구성 2
      • Ⅱ. 선행 연구 3
      • Ⅰ. 서론 1
      • 1. 연구 배경 1
      • 2. 연구 내용 2
      • 3. 논문 구성 2
      • Ⅱ. 선행 연구 3
      • 1. UMA구조와 NUMA구조 3
      • 1) UMA 구조와 NUMA 구조 3
      • 2) NUMA구조에서의 지역 메모리와 원격 메모리의 지연율 5
      • 2. 복수개의 프로세스들의 수행 시 메모리 접근 지연 7
      • 1) 기존 리눅스에서의 메모리 접근 경쟁 7
      • 2) 최적화된 프로세스 배치를 위한 실험 9
      • 3. 리눅스 커널의 NUMA 구조를 위한 처리기 할당 정책 12
      • Ⅲ. 설계 및 구현 15
      • 1. 메모리 이용률을 고려한 처리기 할당 기법 설계 16
      • Ⅳ. 실험 결과 20
      • 1. 실험 환경 20
      • 2. 실험 결과 21
      • 1) ramspeed 21
      • 2) 처리기 집중적, 메모리 집중적 프로세스 23
      • 3) lmbench 25
      • Ⅴ. 결론 및 향후 연구 27
      • 1. 결론 및 향후 연구 27
      • 참고문헌 28
      • 영문요약 31
      더보기

      분석정보

      View

      상세정보조회

      0

      Usage

      원문다운로드

      0

      대출신청

      0

      복사신청

      0

      EDDS신청

      0

      동일 주제 내 활용도 TOP

      더보기

      주제

      연도별 연구동향

      연도별 활용동향

      연관논문

      연구자 네트워크맵

      공동연구자 (7)

      유사연구자 (20) 활용도상위20명

      이 자료와 함께 이용한 RISS 자료

      나만을 위한 추천자료

      해외이동버튼