• 제목/요약/키워드: page table overhead

검색결과 12건 처리시간 0.021초

메모리 파일 시스템 기반 고성능 메모리 맵 파일 입출력을 위한 매핑 캐시 (Mapping Cache for High-Performance Memory Mapped File I/O in Memory File Systems)

  • 김지원;최정식;한환수
    • 정보과학회 논문지
    • /
    • 제43권5호
    • /
    • pp.524-530
    • /
    • 2016
  • 기존보다 데이터를 빠르게 접근하기 위한 노력과 비-휘발성 메모리의 발전은 메모리 파일 시스템 연구에 큰 기여를 해왔다. 메모리 파일 시스템은 파일 입출력의 고성능을 위해서 기존에 사용하는 읽기-쓰기 입출력보다 오버헤드가 적은 메모리 맵 파일 입출력을 사용하도록 제안하고 있다. 하지만 메모리 맵 파일 입출력을 사용하게 되면서 페이지 테이블을 구축할 때 발생하는 오버헤드가 전체 입출력 성능의 큰 부분을 차지하게 되었다. 또한 같은 파일이 반복적으로 접근될 때마다 페이지 테이블을 매번 삭제하기 때문에, 오버헤드가 불필요하게 중복되어서 발생한다는 점을 발견했다. 본 논문이 제안하는 매핑 캐시는 이러한 중복되는 오버헤드를 제거하기 위해서, 매핑이 해제될 때 파일의 페이지 테이블을 제거하지 않고 저장하고 있다가 다시 접근될 때 이를 재활용할 수 있도록 고안한 기법이다. 매핑 캐시는 기존 파일 입출력 성능보다 2.8배, 그리고 웹서버 전체 성능보다 12% 향상을 보였다.

비휘발성 메모리 저장장치를 위한 영속적 페이지 테이블 및 파일시스템 저널링 기법 (Persistent Page Table and File System Journaling Scheme for NVM Storage)

  • 안재형;현철승;이동희
    • 전기전자학회논문지
    • /
    • 제23권1호
    • /
    • pp.80-90
    • /
    • 2019
  • 최근에 소개된 비휘발성 메모리(Non-Volatile Memory)를 저장장치로 사용하는 경우에도 데이터를 접근하기 위해서는 페이지 테이블이 구축되어야 한다. 이 점에 착안하여 본 논문에서는 페이지 테이블 자체를 비휘발성 메모리에 유지하는 영속적 페이지 테이블 (Persistent Page Table) 기법을 설계한다. 실제 페이지 테이블의 구조는 프로세서마다 다르다. 또한 비휘발성 메모리의 물리주소와 가상주소는 종종 저장장치가 시스템에 연결되기 전까지 알 수 없기 때문에 연결 시점까지는 실제로 동작하는 페이지 테이블을 만들 수 없다. 따라서 영속적 페이지 테이블은 주소와 시스템으로부터 독립적인 구조를 가져야 하며, 저장장치가 동작하는 시점에 영속적 페이지 테이블을 기반으로 시스템 종속적인 페이지 테이블이 생성되어야 한다. 또한 영속적 페이지 테이블 엔트리는 원자적으로 변경되어야 하며, 본 논문에서는 이러한 영속적 페이지 테이블의 설계에 대해 설명한다. 다음으로 파일시스템이 영속적 페이지 테이블이 제공하는 교환 연산을 활용하여 저널링 오버헤드를 감소시킬 수 있음을 보인다. 교환 연산을 활용하도록 Linux Ext4 파일시스템을 변경하였으며, Filebench 워크로드를 이용한 성능 측정 결과를 보면 영속적 페이지 테이블과 교환 연산은 파일시스템의 성능을 최대 60% 향상시킨다.

STP-FTL: An Efficient Caching Structure for Demand-based Flash Translation Layer

  • Choi, Hwan-Pil;Kim, Yong-Seok
    • 한국컴퓨터정보학회논문지
    • /
    • 제22권7호
    • /
    • pp.1-7
    • /
    • 2017
  • As the capacity of NAND flash module increases, the amount of RAM increases for caching and maintaining the FTL mapping information. In order to reduce the amount of mapping information managed in the RAM, a demand-based address mapping method stores the entire mapping information in the flash and some valid mapping information in the form of cache in the RAM so that the RAM can be used efficiently. However, when cache miss occurs, it is necessary to read the mapping information recorded in the flash, so overhead occurs to translate the address. If the RAM space is not enough, the cache hit ratio decreases, resulting in greater overhead. In this paper, we propose a method using two tables called TPMT(Translation Page Mapping Table) and SMT(Segmented Translation Page Mapping Table) to utilize both temporal locality and spatial locality more efficiently. A performance evaluation shows that this method can improve the cache hit ratio by up to 30% and reduces the extra translation operations by up to 72%, compared to the TPM scheme.

A Multi-Level Flash Translation Layer for Large Capacity Solid State Drives

  • Kim, Yong-Seok
    • 한국컴퓨터정보학회논문지
    • /
    • 제26권2호
    • /
    • pp.11-18
    • /
    • 2021
  • SSD의 FTL에서는 호스트로부터 요청된 논리적 페이지 번호를 실제 기록된 플래시 메모리 페이지 번호로 매핑하는 작업을 한다. 매핑 정보를 관리하기 위해서 사용되는 RAM의 용량을 줄이는 것은 매우 중요하다. 기존의 요구기반 FTL에서는 매핑 정보도 플래시 메모리 페이지에 기록하고 그들의 주소만 RAM에 테이블로 관리하는 2단계 방법을 적용하였다. 그러나 SSD의 용량이 수십 테라바이트 수준으로 늘어나고 있으므로 이 방법만으로는 충분하지 않다. 본 논문에서는 소요되는 RAM의 용량을 획기적으로 줄이기 위해서 매핑 정보를 3단계로 관리하는 방법인 ML-FTL을 제안하고 그 성능을 평가하였다. 캐시를 적절히 활용함으로써 기존의 2단계 방법에 비해서 오버헤드가 늘어나는 정도가 미미하다는 것을 확인하였다.

Implementation of Memory Efficient Flash Translation Layer for Open-channel SSDs

  • Oh, Gijun;Ahn, Sungyong
    • International journal of advanced smart convergence
    • /
    • 제10권1호
    • /
    • pp.142-150
    • /
    • 2021
  • Open-channel SSD is a new type of Solid-State Disk (SSD) that improves the garbage collection overhead and write amplification due to physical constraints of NAND flash memory by exposing the internal structure of the SSD to the host. However, the host-level Flash Translation Layer (FTL) provided for open-channel SSDs in the current Linux kernel consumes host memory excessively because it use page-level mapping table to translate logical address to physical address. Therefore, in this paper, we implemente a selective mapping table loading scheme that loads only a currently required part of the mapping table to the mapping table cache from SSD instead of entire mapping table. In addition, to increase the hit ratio of the mapping table cache, filesystem information and mapping table access history are utilized for cache replacement policy. The proposed scheme is implemented in the host-level FTL of the Linux kernel and evaluated using open-channel SSD emulator. According to the evaluation results, we can achieve 80% of I/O performance using the only 32% of memory usage compared to the previous host-level FTL.

페이지 주소 캐시를 활용한 NAND 플래시 메모리 파일시스템에서의 효율적 주소 변환 테이블 관리 정책 (An Efficient Address Mapping Table Management Scheme for NAND Flash Memory File System Exploiting Page Address Cache)

  • 김정길
    • 디지털콘텐츠학회 논문지
    • /
    • 제11권1호
    • /
    • pp.91-97
    • /
    • 2010
  • 비휘발성, 저전력 소모, 안정성 등의 장점을 가진 NAND 플래시 메모리는 고집적화, 대용량화, 저가격화를 통하여 다양한 디지털시스템의 데이터 저장장치로 사용되고 있다. 플래시 메모리의 다양한 분야에서의 응용 확대와 동시에 플래시 메모리의 대용량화는 플래시 메모리의 주소 변환 테이블의 전체 크기를 증가시켜 SRAM에 저장하기에 용량이 부족한 문제점을 발생시킨다. 본 논문에서는 하이브리드 변환 기법 기반의 플래시 메모리 파일 시스템에서 페이지 주소 캐시를 이용한 효율적인 주소 테이블 관리 정책을 제안한다. 제안하는 기법은 다양한 메타 데이터 기반의 전체 테이블의 정보를 맵블록을 이용하여 효율적으로 통합 관리함으로써 높은 성능을 유지할 수 있다. PC 환경에서의 다양한 응용프로그램을 실험한 결과 제안하는 페이지 주소 캐시는 2.5% 이하의 낮은 미스율로 높은 효율성을 유지하며 전체 쓰기 연산 요청에서 평균 33%의 실제 쓰기 연산의 실행으로 전체 쓰기 연산에서 발생하는 오버헤드를 줄여 주었다.

페이지 단위 매핑 기반 대용량 NAND플래시를 위한 주소변환기법 (An Address Translation Technique Large NAND Flash Memory using Page Level Mapping)

  • 서현민;권오훈;박준석;고건
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제16권3호
    • /
    • pp.371-375
    • /
    • 2010
  • SSD는 NAND 플래시 메모리 기반의 저장장치로 속도가 빠르고, 전력 소모량이 작으며, 충격과 진동에 강하다는 좋은 특성 때문에 PC뿐 아니라 스토리지 서버 등에서도 사용되는 경우가 늘고 있다. NAND 플래시 메모리는 덮어쓰기가 불가능하다는 제약이 있으므로 SSD에서는 일반적으로 FTL이라고 불리는 소프트웨어 계층을 사용한다. 다양한 형태의 FTL 중 페이지 단위 변환에 기반한 FTL은 유연성이 높고 효율적인 쓰레기 수집 작업이 가능하다는 점에서 가장 성능이 좋다고 알려져 있다. 한편 이 방법은 64GB MLC SSD의 경우 64MB 크기의 변환 테이블이 메모리에 올라와 있을 것을 요구하므로 현실적인 사용이 제한되어 있다. 본 논문에서는 효율적인 캐시 구조를 통해 SSD에서도 순수한 페이지 단위 변환을 사용하는 방법을 제안한다. 제안된 방법에서는 매핑 테이블 메타 데이터를 사용해 완전 연관 캐시를 구성하고 캐시크기에 무관하게 O(1)시간에 주소를 변환한다 다양한 환경에서 수집한 트레이스를 이용한 시뮬레이션 결과 32KB의 캐시 공간의 경우 80% 이상, 512KB의 경우 90% 이상의 적중률을 보였다. 이 경우 메모리 사용량은 64MB의 1. 9% 에 불과하며 캐시 미스로 인한 오버헤드는 실행시간 기준으로 2% 미만으로 측정되었다.

NAND 플래시 메모리 기반 B+ 트리에서 페이지 매핑 로그를 이용한 색인 관리 기법 (Index Management Method using Page Mapping Log in B+-Tree based on NAND Flash Memory)

  • 김선환;곽종욱
    • 한국컴퓨터정보학회논문지
    • /
    • 제20권5호
    • /
    • pp.1-12
    • /
    • 2015
  • 낸드 플래시 메모리는 저전력, 빠른 접근 속도, 저렴한 가격 등의 특징을 가지고 있어 저장장치로 널리 사용되고 있다. 하지만 낸드 플래시 메모리는 제자리 덮어쓰기가 지원되지 않아 기존의 하드 디스크 기반 응용 프로그램을 구동하기 위해서는 FTL(Flash Translation Layer)이 필요하다. FTL은 주소 매핑, 가비지 컬렉션, 마모도 균등화 작업 등을 포함하고 있어 저사양 임베디드 장치에 구현하기에는 메모리와 연산에 대한 비용이 많이 든다. 그래서 이런 장치들을 위해 낸드 플래시 메모리에 최적화된 색인 자료구조들이 연구되고 있다. 연구된 방법들은 쓰기에 소요되는 시간을 줄여 성능을 향상시켰지만 레코드 탐색에 소요되는 시간이 증가된다는 단점을 가지고 있다. 레코드 탐색시간을 증가시키지 않고 쓰기 횟수를 줄이기 위해 본 논문에서는 페이지 매핑 로그 테이블을 이용한 색인 관리 기법을 제안한다. 낸드 플래시 메모리의 단점인 제자리 덮어쓰기 불가로 인해 발생하는 페이지 쓰기 횟수를 줄이기 위해 매핑 로그 테이블은 B+ 트리에서 변경된 노드 페이지 주소를 저장하고 레코드 검색 시 이를 이용한다. 실험 평가를 통해 제안된 기법은 다른 기법들과 비교 시 레코드 탐색에서 발생하는 페이지 읽기 횟수를 최대 약 61% 줄였으며, 레코드 삽입에서 페이지 쓰기 횟수를 최대 약 31% 줄일 수 있었다.

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

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

웹 서버 클러스터에서 Cyber Foraging 응용을 위한 비주기적 부하 갱신을 통한 부하 분산 기법 (Request Distribution for Fairness with a Non-Periodic Load-Update Mechanism for Cyber Foraging Dynamic Applications in Web Server Cluster)

  • ;;최원일;강정훈;옥민환;박명순
    • 정보처리학회논문지A
    • /
    • 제14A권1호
    • /
    • pp.63-72
    • /
    • 2007
  • 본 논문에서 웹 서버 클러스터 환경에서 웹 요청들의 분산을 위한 부하 분산 기법을 제안한다. 전통적인 주기적 부하 정보 갱신 기반의 부하 분산 기법에서는 동기화된 부하 정보와 동적 페이지에 포함된 스크립트들의 갱신 정보 때문에 Cyber Foraging 서비스 같은 동적 웹 응용프로그램에서는 적합하지 않다. 이를 해결하기 위해 Update-on-Finish 부하 분산 알고리즘은 비주기적인 부하 갱신 방법을 사용하고 있다. 웹 스위치는 비주기적인 부하 리포팅 후, 서버들의 실제 부하 정보를 알 수 있다. 그런후 실제 정보에 따라 부하 분산 스케줄을 재배열한다. 하지만 Update-on-Finish 알고리즘의 경우 부하 정보를 유지하기 위한 통신 부하가 크다는 문제점을 가진다. 본 논문에서는 각 서버가 K%의 작업을 마친 후 비주기적 부하 정보 보고를 통하여 부하 감소시킨 방법을 제안한다. 또한 서버의 처리능력이 다른 환경을 고려하여 서로 다른 threshold Ti값을 적용함으로써, 다양한 처리 능력을 가진 서버들을 위한 로드 밸런싱 알고리즘으로 확장하여 제안하고 있다. 시뮬레이션 결과에서 제안된 K-Percent-Finish Reporting 방법은 Update-on-Finish 방법보다 최소 50% 이상의 통신 부하를 감소시키면서, 기존 주기적 부하정보 갱신 기반의 관련 연구들보다 향상된 시스템 처리 능력을 보여주고 있다.