• 제목/요약/키워드: 캐시메모리

검색결과 242건 처리시간 0.023초

플래시 메모리를 위한 Not-cold-Page 쓰기지연을 통한 LRU 버퍼교체 정책 개선 (Enhancing LRU Buffer Replacement Policy with Delayed Write of Not-cold-dirty-pages for Flash Memory)

  • 정호영;박성민;차재혁;강수용
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제33권9호
    • /
    • pp.634-641
    • /
    • 2006
  • 플래시 메모리는 비휘발성이며 빠른 I/O 처리 속도와 같은 많은 장점들이 있으나, in-placeupdate가 불가능하고 읽기/쓰기/지우기 작업의 속도가 다르다는 단점을 지니고 있다. 버퍼 캐시를 통해 플래시 메모리 기반 저장장치의 성능을 향상시키기 위해서는 수행 속도가 느림은 물론 지우기 작업의 수행 횟수에 직접적인 영향을 끼치는 쓰기 작업의 횟수를 줄이는 알고리즘이 필요하다. 본 논문에서는 기존의 LRU 버퍼교체 정책에 not-cold-dirty-page에 대한 교체를 지연하는 알고리즘을 적용한 새로운 버퍼교체 정책(LRU-Dirty Page Later-Cold Detection, 이하 LRU-DPL-CD)을 제시하고 성능을 분석한다. 트레이스 기반 시뮬레이션 실험에서 LRU-DPL-CD는 버퍼 적중률의 큰 감소 없이 쓰기 작업과 지우기 작업의 횟수를 감소시켰으며, 그 결과 전체 플래시 메모리의 I/O 수행속도가 증가하는 결과를 보였다.

하이브리드 플래시-디스크 저장장치용 Flash Translation Layer의 성능 개선을 위한 순차패턴 마이닝 기반 2단계 프리패칭 기법 (Improving Flash Translation Layer for Hybrid Flash-Disk Storage through Sequential Pattern Mining based 2-Level Prefetching Technique)

  • 장재영;윤언근;김한준
    • 한국전자거래학회지
    • /
    • 제15권4호
    • /
    • pp.101-121
    • /
    • 2010
  • 본 논문은 플래시 메모리와 하드디스크로 구성되는 하이브리드 저장장치의 성능을 높이기 위한 프리패칭 기법을 제안한다. 하이브리드 저장장치에 포함된 플래시 메모리는 하드디스크에 비해 쓰기/읽기 연산 속도가 상대적으로 빠르기 때문에 이를 캐시 공간처럼 활용하여 성능을 높일 수 있다. 프리패칭을 위한 기본 전략은 순차패턴 마이닝을 이용하는 것이며, 이를 이용하면 시간적 흐름을 가지는 과거 객체 참조열로부터 반복되는 객체 접근 패턴을 추출할 수 있다. 프리패칭 기법을 사용하여 하이브리드 저장장치의 성능을 최대화하기 위하여 본 논문은 두 가지 방법을 사용하였다. 첫 번째는 플래시 메모리 매핑을 위하여 기존의 FAST 알고리즘을 개선하였고, 두 번째는 제한된 플래시 메모리의 공간을 효율적으로 사용하기 위하여 프리패칭 단위로 파일 수준과 블록 수준을 동시에 고려하였다. 제안 기법의 효용성을 평가하기 위해 참조 지역성을 가지는 합성 데이터와 UCC 데이터를 활용하여 실험을 실시하여 제안된 방법의 우수성을 증명하였다.

변위 히스토리 버퍼를 이용한 명령어 및 데이터 프리페치 기법 (Instructions and Data Prefetch Mechanism using Displacement History Buffer)

  • 정용수;김진혁;조태환;최상방
    • 전자공학회논문지
    • /
    • 제52권10호
    • /
    • pp.82-94
    • /
    • 2015
  • 본 논문에서는 변위 필드를 이용해 히스토리 레코드를 생성하는 방법과 히스토리 레코드의 기준이 되는 트리거 블록에 우선 순위를 부여하여 효율적인 캐시 교체를 가능하게 하는 하드웨어 프리페치 기법을 제안한다. 히스토리 레코드의 트리거 블록을 기준으로 히스토리를 생성하기 때문에 프로그램의 시퀀스를 고려할 수 있으며, 히스토리를 변위 값으로 저장하기 때문에 트리거 주소와 변위필드에 저장된 값을 더해 빠르게 명령어 또는 데이터 주소를 프리페치 할 수 있다. 또한, 트리거 블록에 우선순위를 부여하고 캐시 교체 정책으로 랜덤 교체 방법을 사용해 캐시 공간이 가득 찼을 때 우선순위가 낮은 블록부터 랜덤하게 교체하는 방법을 제안한다. 제안하는 하드웨어 프리페처의 성능을 평가하기 위해 메모리 분석 시뮬레이터인 gem5와 PARSEC 벤치마크 프로그램을 사용하였다. 그 결과 비트벡터를 이용해 공간영역을 생성하는 기존의 하드웨어 프리페처와 비교해 L1 데이터 캐시의 미스율은 평균 약 44.5% 감소하였고 L1 명령어 캐시의 미스율은 평균 약 31% 감소하였다. 또한 IPC (Instruction Per Cycle)는 평균 약 23.7% 향상을 보였다.

서브 그래프의 사용 패턴을 고려한 다중 계층 캐싱 기법 (Multi-layer Caching Scheme Considering Sub-graph Usage Patterns)

  • 유승훈;정재윤;최도진;박재열;임종태;복경수;유재수
    • 한국콘텐츠학회논문지
    • /
    • 제18권3호
    • /
    • pp.70-80
    • /
    • 2018
  • 최근 소셜 미디어와 모바일 장비들의 발달로 인해 그래프 데이터들이 다양한 분야에서 활용되고 있다. 이와 함께 대용량 그래프 데이터 처리 과정에서 입출력 비용을 감소시키기 위한 캐싱 기법에 대한 연구들이 진행되고 있다. 본 논문에서는 그래프 토폴로지의 특징인 그래프의 연결성과 과거의 서브 그래프 사용 이력을 고려하여 다중 계층 캐싱 기법을 제안한다. 제안하는 기법은 캐시를 Used Data Cache와 Prefetched Cache로 구분한다. Used Data Cache는 자주 사용되는 서브 그래프 패턴에 따라 가중치를 부여하여 데이터를 캐싱하고 Prefetched Cache는 사용되지는 않았지만 최근 사용된 데이터의 주변 데이터들이 사용될 가능성이 높은 데이터를 캐싱한다. 그래프 패턴을 추출하기 위해 과거의 이력 정보를 활용하여 패턴을 추출하였다. 자주 사용되는 서브 그래프들이 다시 사용될 것을 예측하여 가중치를 부여하여 캐싱한다. 최근 사용된 데이터의 주변 데이터들이 사용 될 것을 예측하여 캐싱한다. 각각의 캐시에 캐싱된 데이터들을 관리하고 메모리가 가득 찰 경우 사용될 가능성이 낮은 데이터와 새로운 데이터를 교체하는 전략을 제안한다. 성능 평가를 통해 제안하는 캐싱 기법이 기존의 캐시 관리 기법에 비해 우수함을 증명한다.

스트리밍 데이터의 선인출에 사용되는 참조예측표의 스칼라 우선 교체 전략 (Scalar First Replacement Strategy for Reference Prediction Table Used in Prefetching Streaming Data)

  • 임철후;전영숙;김석일;전중남
    • 정보처리학회논문지A
    • /
    • 제11A권3호
    • /
    • pp.163-172
    • /
    • 2004
  • 멀티미디어 응용프로그램의 데이터는 주소 간격이 일정한 스트리밍 패턴으로 참조되는 특성이 있다. 이러한 특성을 선인출방법에 적용하여 멀티미디어 응용프로그램의 수행속도를 향상시킬 수 있다. 참조예측표에 의한 선인출방법은 메모리 참조명령어의 과거 기록을 이용하여 규칙적으로 참조되는 메모리주소를 예측한다. 이 논문은 참조예측표를 사용하는 하드웨어 기반의 규칙 선인출방법에서 효율적인 참조예측표 운영방법을 제안한다. 참조예측표에 입력되는 메모리 참조명령어는 스칼라데이터 참조명령어와 스트리밍데이터 참조명령어로 구성된다. 스칼라데이터 참조명령어는 선인출에 사용되지 않으므로 스칼라데이터 참조명령어를 우선적으로 교체함으로서, 참조예측표를 효과적으로 사용할 수 있다. 이방법은 기존 FIFO 방법과 비교할 때, 선인출에 사용되는 스트리밍데이터 참조명령어를 참조예측표에 더 오래 유지함으로써, 선인출 성능이 향상된다.

CPU-GPU환경에서 효율적인 메인메모리 접근을 위한 융합 프로세서 구조 개발 (A Development of Fusion Processor Architecture for Efficient Main Memory Access in CPU-GPU Environment)

  • 박현문;권진산;황태호;김동순
    • 한국전자통신학회논문지
    • /
    • 제11권2호
    • /
    • pp.151-158
    • /
    • 2016
  • 이기종시스템 구조(HSA)는 두 유닛의 각각에 메모리 폴(pools)이 가상메모리를 통해 공유할 수 있게 됨에 따라 CPU와 GPU 아키텍처의 오랜 문제를 해결하였다. 그러나 물리적 실제 시스템에서는 가상메모리 처리를 위해 GPU와 GPU 사이의 빈번한 메모리 이동으로 병목현상(Bottleneck)과 일관성 요청(Coherence request)의 오버헤드를 갖게 된다. 본 연구는 CPU와 GPU간의 효율적인 메인 메모리 접근방안으로 퓨전프로세서 알고리즘을 제안하였다. CPU가 요청한 처리할 메모리 영역을 GPU의 코어에 맞게 분배 제어해주는 기능으로 작업관리자(Job Manager)와 Re-mapper, Pre-fetcher를 제안하였다. 이를 통해 CPU와 GPU간의 빈번한 메시지도 감소되고 CPU의 메모리주소에 없는 Page-Table 요청이 낮아져 두 매체간의 효율성이 증대되었다. 제안한 알고리즘의 검증 방안으로 QEMU(:short for Quick EMUlator)기반의 에뮬레이터를 개발하고 CUDA(:Compute Unified Device. Architecture), OpenMP, OpenCL 등의 알고리즘과 비교평가를 하였다. 성능평가 결과, 본 연구에서 제안한 융합 프로세서 구조를 기존과 비교했을 때 최대 198%이상 빠르게 처리되면서 메모리 복사, 캐시미스 등의 오버헤드를 최소화하였다.

HMB를 지원하는 DRAM-Less NVMe SSD의 성능 평가 (Performance Evaluation of HMB-Supported DRAM-Less NVMe SSDs)

  • 김규식;김태석
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제8권7호
    • /
    • pp.159-166
    • /
    • 2019
  • 상용화된 많은 SSD와 달리 DRAM-less SSD는 원가절감, 전력소모량 감소 등의 이유로 DRAM을 가지고 있지 않다. 따라서 DRAM의 부재로 인해 입출력 성능이 저하될 가능성이 존재하며, 이는 호스트의 메모리 일부를 SSD 컨트롤러가 사용할 수 있는 NVMe 인터페이스의 HMB 기능을 통해 개선할 여지가 있다. 본 논문에서는 현재 상용화된 여러 DRAM-less SSD가 DRAM을 가지고 있는 동급 SSD에 비해 실제로 입출력 성능이 떨어지지만 HMB 기능을 사용해 일부 개선하고 있으며, 이는 SSD 컨트롤러가 호스트의 메모리를 매핑테이블 캐시로 주로 사용하고 있기 때문이라는 점을 다양한 실험을 통해 증명한다.

클라우드 시스템에서 해양수치모델 성능 최적화 (Performance Optimization of Numerical Ocean Modeling on Cloud Systems)

  • 정광욱;조양기;탁용진
    • 한국해양학회지:바다
    • /
    • 제27권3호
    • /
    • pp.127-143
    • /
    • 2022
  • 최근 클라우드 컴퓨팅 환경에서 해양수치모델 실험을 수행하는 많은 연구가 활발하게 진행되고 있다. 클라우드 컴퓨팅 환경은 대규모 자원이 필요한 해양수치모델을 구현하는데 매우 효과적인 수단이 될 수 있다. 정보처리 기술의 발달로 클라우드 컴퓨팅 시스템은 가상화와 원격 고속 네트워크, 직접 메모리 액세스와 같은 수치모델의 병렬처리에 필요한 다양한 기술과 환경을 제공한다. 이러한 새로운 기능은 클라우드 컴퓨팅 시스템에서 해양수치모델링 실험을 용이하게 한다. 많은 과학자들과 엔지니어들은 해양수치모델 실험에 있어서 가까운 미래에 클라우드 컴퓨팅이 주류가 될 것으로 기대하고 있다. 해양수치모델링을 위한 클라우드 컴퓨팅의 처리성능 분석은 수치모델의 수행 시간과 리소스 활용량을 최소화하는 데 도움이 될 수 있으므로 최적의 시스템을 적용하는 데 필수적이다. 특히 모델 격자 내 다양한 변수들이 다차원 배열 구조로 되어 있기 때문에 대량의 입출력을 처리하는 해양수치모델의 구조는 캐시메모리의 효과가 크며, 대량의 자료가 이동하는 통신 특성으로 인해서 네트워크의 속도가 중요하다. 최근에 주요한 컴퓨팅환경으로 자리잡고 있는 클라우드 환경이 이러한 해양수치모델을 수행하기에 적합한지 실험을 통해서 검토할 필요가 있다. 본 연구에서는 상용 클라우드 시스템에서 해양수치모델로 대표적인 Regional Ocean Modeling System (ROMS)와 더불어 다른 해양모델의 클라우드 환경으로 전환에도 도움이 될 수 있게 병렬처리 시스템의 성능을 측정할 수 있는 표준 벤치마킹 소프트웨어 패키지인 High Performance Linpack을 활용하여 초당 부동소수점 연산횟수 처리능력과 및 STREAM 벤치마크를 활용하여 다중 노드들로 구성된 수치모델용 클러스터의 메모리처리성능을 평가하고 비교하였다. 이러한 평가내용은 클라우드 환경에서 해양수치모델을 어떻게 수행할 것인가에 대해 중요한 정보를 제공할 수 있다. 가상화 기반 상용 클라우드에서 얻은 실제 성능 자료와 구성 설정 분석을 통해 가상화 기반 클라우드 시스템에서 해양수치모델의 다양한 격자 크기에 대한 컴퓨터 리소스의 효율성을 평가했다. 본 연구를 통해서 캐시 계층과 용량이 큰 메모리를 사용하는 HPC 클러스터가 ROMS의 성능에 매우 중요하다는 것을 발견했다. 수치모델링의 실행 시간을 줄이기 위해 코어 수를 늘리는 것은 작은 격자 보다 큰 격자 모델에서 더 효과적이다. 이러한 처리 성능 분석 결과는 클라우드 컴퓨팅 시스템에서 해양수치모델을 효율적으로 구축하는 데 중요한 자료로 이용될 것이다.

월 쿠쿠: 해시 함수 분류를 이용한 메모리 접근 감소 방법 (Wall Cuckoo: A Method for Reducing Memory Access Using Hash Function Categorization)

  • 문성광;민대홍;장룡호;정창훈;양대헌;이경희
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제8권6호
    • /
    • pp.127-138
    • /
    • 2019
  • 데이터 응답 속도는 사용자 경험과 직결되기 때문에 클라우드 서비스의 중요한 이슈이다. 그렇기 때문에 사용자의 요청에 빠르게 응답하기 위하여 인-메모리 데이터베이스는 클라우드 기반 응용 프로그램에 널리 사용되고 있다. 하지만, 현재 인-메모리 데이터베이스는 대부분 연결리스트 기반의 해시 테이블로 구현되어 있어 상수 시간의 응답을 보장하지 못한다. 쿠쿠 해싱(cuckoo hashing)이 대안으로 제시되었지만, 할당된 메모리의 반만 사용할 수 있다는 단점이 있었다. 이후 버킷화 쿠쿠 해싱(bucketized cuckoo hashing)이 메모리 효율을 개선하였으나 삽입 연산시의 오버헤드를 여전히 극복하지 못하였다. 본 논문에서는 BCH의 삽입 성능과 탐색 성능을 동시에 향상시키는 데이터 관리 방법인 월 쿠쿠(wall cuckoo)를 제안한다. 월 쿠쿠의 핵심 아이디어는 버킷 내부의 데이터를 사용된 해시 함수에 따라 분리하는 것이다. 이를 통하여 버킷의 탐색 범위가 줄어들어 접근해야 하는 슬롯의 수를 줄일 수 있는데, 이렇게 탐색 연산의 성능이 향상되기 때문에 탐색 과정이 포함되어 있는 삽입 연산 또한 개선된다. 분석에 따르면, 월 쿠쿠에서의 슬롯 접근 횟수 기댓값은 BCH의 기댓값보다 작다. 우리는 월 쿠쿠와 BCH, 정렬 쿠쿠를 비교하는 실험을 진행하였으며, 각 메모리 사용률(10%-95%)에서 월 쿠쿠의 탐색 및 삽입 연산이 다른 기법보다 더 적은 슬롯 접근 횟수를 가지는 것을 보였다.

캐시 메모리 동기화 전력 감소를 위한 이벤트 메커니즘에 대한 연구 (Research on Event Mechanism for Reducing Power Overheads in Cache Memory Synchronization)

  • 박영진;정하영;이용석
    • 전자공학회논문지CI
    • /
    • 제48권3호
    • /
    • pp.69-75
    • /
    • 2011
  • 본 논문에서는 다중 프로세서 구조에서 캐쉬 메모리 동기화 시 생기는 전력 오버헤드를 줄이기 위한 애니캐스트 방식의 이벤트 드리븐(Event Driven) 동기화 방법을 제안한다. 제안하는 동기화 방법은 기본적인 동기화 프로토콜에서 SHI(Snoop Hit Invalidate) 또는 SHR(Snoop Hit Read) 발생 시, 락 권한 획득에 실패 하였을 때 발생하는 불필요한 폴링 동작을 줄여 줌으로서 버스 대역폭이 낭비되는 것을 막아주고, 통신에 의한 전력 오버헤드를 감소시켜준다. 더 나아가 브로드캐스트 방식의 이벤트 드리븐 동기화 방법에 비해 불필요한 절전 상태 변화로 인하여 생기는 트랜지션 전력을 줄여 전력 소모를 더욱 감소시킬 수 있다는 장점이 있다. 시뮬레이션 결과 기존 스핀-락 방식에 비해 15.3% 정도의 에너지 절감효과를 얻을 수 있었고 브로드캐스트 방식에 비해서 4.7%의 에너지 절감 효과를 얻을 수 있었다. 따라서 제안하는 동기화 방법은 저전력 다중 프로세서 시스템에 적합한 방식이라고 할 수 있다.