• 제목/요약/키워드: 페이지 컬러링

검색결과 4건 처리시간 0.02초

실행 코드 영역 프로파일링을 통한 MFU 기반 페이지 컬러링 기법 (MFU-based Page Coloring Scheme through Application Code Profiles)

  • 김정훈;김인혁;엄영익
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.246-249
    • /
    • 2011
  • 페이징을 이용한 가상 메모리 환경에서는 프로세스가 사용하는 가상 페이지가 임의의 물리 페이지로 매핑이 되므로 캐시 인덱스 충돌로 인한 캐시 미스율이 증가한다. 이를 하드웨어의 지원 없이 해결하기 위해 페이지 컬러링 기술은 처음 연구되기 시작하였고, 지금까지도 꾸준히 연구되고 있다. 이러한 페이지 컬러링 기술은 컬러링 정책을 먼저 정해놓고 컬러링을 하는 정적 페이지 컬러링, 그리고 동적프로파일링을 통해 프로세스의 데이터 영역 접근 패턴을 파악하고 이를 통해 실시간 컬러링을 하는 동적 페이지 컬러링으로 나눌 수 있다. 하지만 두 가지 방법 모두 다음과 같은 단점이 존재한다. 먼저 정적 페이지 컬러링은 프로세스의 동작을 프로파일링 할 수 없기 때문에 컬러링으로 인한 효율을 극대화시킬 수 없고, 동적 페이지 컬러링은 동적 프로파일링을 하고 이를 통해 재컬러링(recoloring) 하는 오버헤드가 존재한다. 이러한 문제를 해결하기 위해서, 본 논문에서는 실행 코드 영역 프로파일링을 통한 MFU(Most Frequently Used) 기반 페이지 컬러링 기법을 제안한다. 이 기법은 동적으로 프로세스 코드 영역을 프로파일링 하여 실행 점유율이 높은 영역을 알아낸 뒤, 이를 기반으로 정적 페이지 컬러링을 하는 방식이다. 따라서 본 논문에서 제안한 기법은 기존의 기법들이 가진 단점을 해결하고, 캐시 성능을 향상시킬 것으로 기대된다.

하드웨어 캐시 파티셔닝과 소프트웨어 캐시 파티셔닝의 성능 비교 (Performance Comparison between Hardware & Software Cache Partitioning Techniques)

  • 박지웅;염헌영;엄현상
    • 정보과학회 논문지
    • /
    • 제42권2호
    • /
    • pp.177-182
    • /
    • 2015
  • 오늘날에는 코어당 클락 속도 발전이 한계에 부딪히게 되면서 멀티 코어 프로세서의 시대가 도래하였다. 최근에는 서버나 데스크톱 환경뿐만 아니라 모바일 환경까지 널리 보급되고 있다. 이러한 구조에서는 프로세스간 성능 간섭 현상이 발생하게 되는데, 이를 방지하기 위해서 사용되는 캐시 파티셔닝 기법은 소프트웨어적인 방법과 하드웨어적인 방법 크게 두 가지로 나누어진다. 하지만 동적 캐시 파티셔닝시에 소프트웨어 캐시 파티셔닝 기법은 페이지 복사 오버헤드로 인해서 성능 향상을 기대하기 힘든데, 이에 반해서 하드웨어 캐시 파티셔닝은 이러한 페이지 복사에서 자유롭다는 장점이 있다. 이 논문에서는 상용 프로세서 중에서 하드웨어적으로 캐시 파티셔닝 기능을 제공하는 AMD Opteron 프로세서에서 소프트웨어적 캐시 파티셔닝 기법인 페이지 컬러링과 하드웨어 캐시 파티셔닝의 성능을 정적 캐시 파티셔닝 환경에서 비교해봄으로써, 하드웨어 캐시 파티셔닝의 동적 캐시 파티셔닝 활용 가능성 여부를 알아본다.

내장형 GPU 환경에서 CPU-GPU 간의 공유 캐시에서의 캐시 분할 방식의 필요성 (The Need of Cache Partitioning on Shared Cache of Integrated Graphics Processor between CPU and GPU)

  • 성한울;엄현상;염헌영
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제20권9호
    • /
    • pp.507-512
    • /
    • 2014
  • 최근 전력의 한계 때문에 많은 트랜지스터를 모두 이용할 수 없는 '다크실리콘' 문제가 발생했다. 이 문제를 효율적으로 해결하기 위하여 CPU(Central processing unit)와 GPU(Graphic processing unit)를 함께 사용하여 분산처리하기 시작했다. 최근에는 CPU(Central processing unit)와 GPU(Graphic processing unit)가 메모리와 Last Level Cache를 공유하는 내장형 GPU 프로세서(Integrated graphic processing unit processor)가 등장했다. 하지만 CPU 프로세스와 GPU 프로세스가 LLC(Last level cache)로 접근하기 위한 어떠한 규칙이 없기 때문에, 동시에 CPU 프로세스와 GPU 프로세스 수행될 때 LLC(Last level cache)를 차지하기 위한 경쟁이 일어나 성능 저하가 발생한다. 본 논문에서는 캐시 접근 빈도가 큰 여러 개의 프로세스들이 수행됨에 따라 캐시 오염이 발생한 상황에서 GPU 프로세스의 성능 보장을 위하여 GPU 프로세스만을 위한 고정된 Last Level Cache 공간을 주는 캐시 분할방식이 필요함을 증명하고 캐시를 분할하기 위한 페이지 컬러링 기법을 소개하고 디자인한다.