• 제목/요약/키워드: 페이지 캐시

검색결과 61건 처리시간 0.027초

리눅스 기반 시스템의 페이지 초기화 지연 단축을 위한 향상된 캐시-핫 페이지 할당 기법 (Improved Cache-hot Page Allocation Technique for Reducing Page Initialization Latency of Linux Based Systems)

  • 양석우;노순현;홍성수
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2019년도 제59차 동계학술대회논문집 27권1호
    • /
    • pp.415-418
    • /
    • 2019
  • 최근 사용자 대화형(user-interactive) 응용들은 OS에게 많은 양의 메모리를 빈번하게 요구한다는 특징을 보인다. 응용의 메모리 할당 요청이 발생하면 OS는 할당할 페이지의 초기화 작업을 필수적으로 수행하는데, 빈번하게 발생하는 페이지 초기화 작업이 응용의 성능을 저하시키고 있다. 기존 리눅스 기반 시스템은 페이지 초기화 지연을 단축하기 위해 CPU의 캐시에 매핑되어 있어서 초기 값을 빠르게 쓸 수 있는 페이지인 캐시-핫(cache-hot) 페이지를 우선적으로 할당한다. 하지만 기존 리눅스는 각 코어별로 캐시-핫 페이지를 인식하고 관리하며, 다른 코어가 관리하는 캐시-핫 페이지에는 접근할 수 없다. 이러한 정책 때문에 다른 코어가 공유 캐시(shared cache)에 매핑된 캐시-핫 페이지를 관리하고 있더라도, 이를 할당받지 못하고 캐시-콜드(cache-cold) 페이지를 할당받는 경우가 발생한다. 본 논문에서는 공유 캐시에 매핑된 것으로 추정되는 캐시-핫 페이지를 별도로 인식하고 공유 캐시에 매핑된 것으로 추정되는 캐시-핫 페이지를 모든 코어가 활용할 수 있게 하여, 응용이 캐시-핫 페이지를 할당받을 확률을 기존 기법보다 높이는 향상된 캐시-핫 페이지 할당 기법을 제안한다. 제안된 기법은 페이지 할당 요청이 발생하면 먼저 각 코어의 사유 캐시에 매핑된 것으로 추정되는 캐시-핫 페이지를 우선적으로 할당하고, 할당에 실패하면 공유 캐시에 매핑된 것으로 추정되는 캐시-핫 페이지를 할당한다. 이를 통해 캐시-핫 페이지를 할당받을 확률을 기존 기법보다 높이고, 결과적으로 평균 페이지 초기화 지연을 단축한다. 제안된 기법을 리눅스 커널 4.18.10버전 기반 환경에서 구현하여 실험한 결과, 평균 페이지 초기화 지연이 기존 리눅스 시스템과 비교하여 약 7% 단축되었다.

  • PDF

캐시의 역할 구분을 이용한 확장성이 있는 캐시 그룹 구성 정칙 (A Scalable Cache Group Configuration Policy using Role-Partitioned Cache)

  • 현진일;장태무
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 가을 학술발표논문집 Vol.28 No.2 (3)
    • /
    • pp.28-30
    • /
    • 2001
  • 동적 캐시 그룹 구성 정책으로 중첩된 그룹 캐시 구조가 제시되면서 중첩 캐시의 운영 방안에 대한 연구가 필요하게 되었다. 그 기반 연구로 계층 캐시의 효율적 캐시 분배 정책을 그대로 살리되 중첩 그룹 캐시를 이용하는 방안으로 그룹 내 멀티캐스팅 페이지 분배 정책이 제시되고 있다. 그러나 그룹내의 모든 캐시에 해당 페이지를 분배하는 방안은 불필요한 저장 공간 낭비를 가져올 뿐 아니라 그룹 내 통신량 증가라는 문제점을 내포하고 있다. 따라서 본 논문에서는 그룹 내 캐시의 역할을 두 개의 기능으로 나누어 보다 효율적 페이지 분배와 그룹 유지 운영 방안을 제시하려 한다. 또한 중첩 그룹 캐시에서 제기되는 요청 진행 방향 문제에 대한 해결 방안으로 그를 아이디를 활용한 진행 방향 테이블 운영 방안을 제시하려 한다.

  • PDF

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

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

R-Tree를 위한 캐시와 디스크 성능 최적화 (Optimizing Both Cache and Disk Performance of R-Trees)

  • 박명선;이석호
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 봄 학술발표논문집 Vol.30 No.1 (A)
    • /
    • pp.749-751
    • /
    • 2003
  • R-Tree는 일반적으로 트리 노드의 크기를 디스크 페이지의 크기와 같게 함으로써 I/O 성능에 최적이 되도록 구현한다. 최근에는 CPU 캐시 성능을 최적화하는 R-Tree의 변형이 개발되었다. 이는 노드의 크기를 캐시 라인 크기의 수 배로 하고 MBR에 저장되는 키를 압축하여 노드 하나에 더 많은 엔트리를 저장함으로써 가능하였다. 그러나, 디스크 최적 R-Tree와 CPU 캐시 최적 R-Tree의 노드 크기 사이에는 수십-수백 바이트와 수-수십 킬로바이트라는 큰 차이가 있으므로, 디스크 최적 R-Tree는 캐시 성능이 나쁘고, CPU 캐시 최적 H-Tree는 나쁜 디스크 성능을 보이는 문제점을 가지고 있다. 이 논문에서는 CPU 캐시와 디스크에 모두 최적인 R-Tree. TR-Tree를 제안한다. 먼저, 디스크 페이지 안에 들어가는 페이지 내부 트리의 높이와 단말, 중간 노드의 크기를 결정하는 방법을 제시한다. 그리고, 이틀 이용하여 TR-Tree의 검색 연산에 필요한 캐시 미스 수를 최소화였고. TR-Tree의 검색 성능을 최적화하였다. 또한, 디스크 I/O 성능을 최적화하기 위해 메모리 노드들을 디스크 페이지에 잘 맞게 배치하였다. 여기에서 구현한 TR-Tree는 디스크 최적 R-Tree보다 삽입 연산에서 6에서 28배 정도 빨랐으며, 검색 연산에서는 1.28배에서 2배의 성능 향상을 보였다.

  • PDF

동적 XIP(eXecute In Place)를 위한 비용 인식 캐시 알고리즘 설계 (Cost-Aware Cache Algorithm for Dynamic XIP (eXecute In Place))

  • 김도훈;박찬익
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2008년도 추계학술발표대회
    • /
    • pp.820-823
    • /
    • 2008
  • 본 논문은 기존의 XIP 기법에서 발생할 수 있는 메모리 접근 성능저하를 해결하기 위한 동적 XIP 기법을 제안하였다. 동적 XIP 기법은 상대적으로 성능저하가 적을 것으로 예상되는 코드 페이지들을 동적으로 선택하여 XIP 영역으로 설정하고, 성능저하가 크게 나타날 것으로 예상되는 코드 페이지들을 램 캐시에 캐싱하여 성능을 향상시킨다. 본 논문은 램 캐시를 관리하기 위해 MIN 캐시 알고리즘 및 메모리 접근 비용을 고려한 오프라인 캐시 알고리즘과, 페이지 접근에 대한 최신성(Recency) 및 슬라이딩 윈도우에 저장된 페이지 접근 기록에 기반하여 메모리 접근 비용을 예측하는 온라인 캐시 알고리즘, 온라인 캐시 알고리즘의 램 캐싱 판단의 정확성을 높이는 기법을 제안하였다. 본 논문은 온·오프라인 알고리즘의 성능비교를 위해 시뮬레이터를 통해 성능을 평가하였고, 유용성을 시험하기 위해 온라인 알고리즘을 리눅스를 기반으로 구현하여 성능을 평가하였다. 본 논문에서 제안한 동적 XIP는 실제 구현한 환경에서 실험한 결과, 작은 크기의 캐시를 사용하고도 수행시간에서는 최대 27%, 에너지 소모량에서는 최대 24%의 성능이 향상됨을 보였다.

오염 버퍼를 적용한 집합 연상 페이지 캐시 기법 (A Enhanced Set-Associative Page Cache Scheme using Pollute Buffer)

  • 안득현;김지홍;엄영익
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 추계학술발표대회
    • /
    • pp.241-242
    • /
    • 2012
  • 큰 데이터 트래픽을 일으키는 I/O 작업을 수행할 경우에 많은 디스크 접근과 데이터 처리가 발생하며 이는 컴퓨팅 성능의 하락을 일으킨다. 이를 위해 메모리와 디스크 사이에 버퍼 역할을 하는 페이지 캐시 기법이 사용된다. 그러나 LRU 를 사용하는 페이지 캐시의 특성상, 많은 양의 데이터가 한번만 접근되고 다시 사용되지 않는다면 성능상의 큰 효과가 없다. 본 논문에서는 집합 연상 페이지 캐시에 오염 버퍼를 둠으로써, 재사용되지 못하고 페이지 캐시의 크기만 커지는 현상을 최소화시켜 I/O 성능을 개선시킬 수 있는 방법을 제안한다.

리눅스 페이지 캐시에 대한 효율적인 관리 기법 (An Efficient Management Scheme for Page Cache in Linux)

  • 이명진;차현욱;이수인;이은규;김명철
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 가을 학술발표논문집 Vol.27 No.2 (3)
    • /
    • pp.97-99
    • /
    • 2000
  • 운영체제의 성능을 향상시키기 위해서는 효율적인 메모리 관리가 필수적이다. 시스템에서는 존재하는 크기의 메모리보다 더 큰 크기의 메모리 공간을 요구하는 경우가 빈번히 발생한다. 이 문제를 극복하기 위해서 운영체제에서는 가상 메모리(virtual memory)를 사용한다. 리눅스 가상 메모리 지원 방식에는 요구 페이징(demand paging), 스왑핑(swapping), 공유 가상 메모리(shared virtual memory)가 있다. 이런 방식을 효율적으로 지원하기 위해서 리눅스는 캐시를 사용한다. 본 논문에서는 페이지 해시 리스트에서 페이지를 찾는 알고리즘을 수정하여 새로운 페이지 캐시 관리 기법을 제안한다. 이 방법은 탐색한 페이지를 해시 리스트의 헤드(head)로 옮김으로써 다음 탐색 때 그 페이지를 찾는데 필요한 탐색 회수를 줄일 수 있다는 장점을 갖는다. 또한 다른 프로세스에 의해서 동시에 많이 참조되는 페이지들은 탐색시간이 줄어들게 된다. 시뮬레이션 프로그램을 통해 본 논문에서 제안한 수정된 페이지 캐시 관리 기법을 이용하면, 기존의 방법에 비해서 페이지를 찾는데 필요한 탐색 회수와 탐색 시간의 측면에서 성능이 향상됨을 보인다.

  • PDF

DMA를 사용한 페이지 Zeroing을 통한 Linux 기반 시스템의 사용자 응답성 향상 기법 (User Interactivity Improving Mechanism in Linux-based Systems by Using Page Zeroing with DMA)

  • 양석우;김정호
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2018년도 제58차 하계학술대회논문집 26권2호
    • /
    • pp.351-354
    • /
    • 2018
  • 데스크탑과 모바일 기기가 고성능화됨에 따라 다양한 분야에서 고사양 응용들이 출시되고 있다. 이러한 응용들의 응답성은 사용자 경험을 결정하는 중요한 요소들 중 하나이다. 측정에 따르면 고사양 응용들 중 하나인 웹 브라우저의 응답시간에서 페이지 zeroing에 소요되는 시간이 적지 않은 비중을 차지한다. 또한 페이지 zeroing이 발생시키는 캐시 오염에 의해 추가적인 성능저하가 발생한다. 본 논문은 페이지 zeroing에 소요되는 시간을 단축하고, zeroing에 의한 캐시 오염으로 인해 발생하는 시스템의 성능저하를 방지하기 위한 기법을 제안한다. 제안된 기법은 사용자 응답시간이 아닌 구간에서 페이지들을 DMA를 사용하여 캐시를 거치지 않고 zeroing하여 보관해 두었다가 페이지 할당 요청시 선 zeroing 된 페이지들을 응용에게 제공한다. 이를 Linux 커널 4.17이 탑재된 데스크탑 환경에서 구현하였고 실험을 통해 확인한 결과 응답시간이 평균 20% 단축됨을 확인하였다.

  • PDF

SSD FTL 캐시 알고리즘 분석 및 제언 (Analysis and Advice on Cache Algorithms of SSD FTL)

  • 이형봉;정태윤
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제12권1호
    • /
    • pp.1-8
    • /
    • 2023
  • SSD는 이미 할당된 페이지에 대한 제자리 덮어쓰기가 불가능하므로 쓰기 연산이 있을 때마다 새로운 클린 페이지로의 대체가 필요하다. 이 문제를 지원하기 위해 SSD는 운영체제의 파일시스템에서 관리하는 논리 페이지를 현재 할당된 물리 페이지로 매핑하는 플래시 변환 계층인 FTL을 내부에 둔다. 쓰기 연산으로 버려진 SSD 페이지는 초기화 작업을 거쳐 재활용되어야 하는데, 그 횟수에 제한이 있기 때문에 FTL은 기본인 페이지 매핑 기능 외에 쓰기 횟수를 줄일 수 있는 캐시 기능을 제공한다. 이 연구에서는 쓰기 횟수를 줄이기 위한 FTL의 캐시 방법론에 집중하여 관련된 알고리즘들을 분석하고, 쓰기 전용 캐시 전략을 제안한다. 시뮬레이터를 사용하여 쓰기 전용 캐시를 실험한 결과 최대 29%의 개선 효과를 보였다.

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

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