검색 : [ author: 김지홍 ] (13)

모바일 저장장치 성능 향상을 위한 통합 호스트-저장장치 주소변환 테이블 캐시 관리기법

김윤아, 최인혁, 이성진, 김지홍

http://doi.org/10.5626/JOK.2023.50.11.924

최근 저장장치의 사이즈가 커지며 플래시 기반 저장장치의 주소변환 테이블 관리에 필요한 메모리 공간의 요구량 또한 점차 커지는 추세이다. 모바일 저장장치로 사용되는 UFS의 경우 하드웨어 및 가격적인 제약으로 인해 UFS 내장 SRAM 메모리 공간을 늘리기에 많은 어려움이 존재하여 늘어난 주소 변환 테이블 관리에 성능적 문제가 발생하게 된다. 이를 보완하기 위해, 호스트 DRAM 메모리를 사용해 주소변환 테이블의 일부를 적재할 수 있는 HPB 기법이 제안되었다. 본 논문에서는 호스트 메모리와 UFS의 SRAM이 통합적으로 관리되지 않아 주어진 자원을 낭비하는 문제를 발견하였고 두 캐시 계층의 특성을 고려한 통합 주소변환 테이블 관리기법을 제안한다. 본 기법을 통하여 낭비되는 캐시 자원을 최소화하고 저장장치 지연시간을 감소시키며 불필요한 저장장치 수명 저하를 방지할 수 있다. 모바일 응용 트레이스 기반으로 실험한 결과, 기존 관리기법 대비 캐시 적중률은 5% 향상하였고, 낭비되었던 캐시 공간 자원을 95% 감소하였으며 주소변환 테이블 업데이트로 발생되는 가비지 컬렉션 횟수가 43% 감소하였다.

MQSim-E: 엔터프라이즈향 SSD에 특화된 NVMe SSD 시뮬레이터

홍두원, 이두솔, 김지홍

http://doi.org/10.5626/JOK.2022.49.4.271

SSD와 같은 저장장치 시스템의 연구에서는 시스템 내부의 SW/HW의 동작 방식을 정확히 모사하는 시뮬레이터가 중요한 역할을 한다. 본 논문에서는 NVMe SSD의 연구에 광범위하게 사용되는 MQSim이 엔터프라이즈향 SSD의 개발에 부적합함을 보이고 엔터프라이즈향 SSD에서 채택되는 최적화 기법들을 지원하는 MQSim-E 시뮬레이터를 제안한다. MQSim-E는 기존의 MQSim에 비해 플래시 메모리의 병렬성을 적극적으로 활용하며 가비지컬렉션의 성능 오버헤드를 최소화하여 엔터프라이즈향 SSD에서 중요한 설계 목표인 IOPS는 최대 210% 개선하며 꼬리 응답시간은 최대 16,000% 감소시켜 상용 엔터프라이즈향 SSD의 특성이 정확히 반영되도록 개선하였다.

합리적 부정기능을 지원하는 플래시 저장장치를 위한 새로운 플래시 명령어

조건희, 김명석, 김지홍

http://doi.org/10.5626/JOK.2022.49.2.120

전통적인 암호화는 암호문의 존재를 숨기지 못해, 복호화 키를 강압적으로 요구하는 공격에 대응할 수 없다. 이를 해결하고자, 데이터의 존재를 부정할 수 있게 하는 Plausible Deniability 특성을 저장장치에 적용한 Deniable Storage 솔루션 연구가 있어왔다. 히든 볼륨은 타 메커니즘 대비 상대적으로 낮은 성능오버헤드를 가져 널리 활용되고 있으며, 최근에는 멀티스냅샷 공격에 대응 가능하도록 발전하였다. 하지만 히든 볼륨 메커니즘은 근본적으로 암호문을 숨기기 위한 랜덤데이터 풀을 필요로 하는데, 이로부터 Plausible Deniability 특성이 노출되어 데이터를 숨기려는 의도를 내비칠 수 있다는 문제점을 가진다. 본 논문은 데이터 세니타이제이션과 Plausible Deniability 특성을 동시에 지원하는 플래시 칩 수준 접근제어 커맨드셋을 제안하고, 이를 활용해 랜덤데이터 없이도 Plausible Deniability 특성을 지원하는 솔루션을 제안한다.

연속성을 고려한 해시 기반의 플래시 변환 계층

신재민, 정일보, 리샤오창, 김지홍

http://doi.org/10.5626/JOK.2020.47.8.717

SSD의 용량이 크게 증가하면서 SSD의 내부 데이터 관리를 위해 더 큰 용량의 DRAM이 필요하게 되었다. DRAM의 비용이 SSD의 전체적인 비용을 결정하는 중요한 요소이기 때문에 성능의 감소 없이 DRAM의 비용을 줄이는 것이 중요하다. 본 논문에서 우리는 이 목표를 달성하는 새로운 해시 기반의 기법을 제안한다. 기존의 해시 기반방식과는 다르게 우리의 기법은 논리주소의 연속성을 활용하여 garbage collection 오버헤드를 효과적으로 감소시키는 가상블록 테이블 기법을 제안한다. 실험 결과는 SEQhFTL이 평균적으로 PFTL의 39%에 해당하는 DRAM 사용량을 보이면서 PFTL과 비슷한 수준의 오버헤드를 갖도록 줄였다.

제한된 Copyback 사용을 통한 플래쉬 스토리지 성능 향상 기법

홍두원, 신슬기, 김지홍

http://doi.org/10.5626/JOK.2019.46.8.726

가비지 컬렉션의 수행 시간을 최소화하는 것은 SSD 성능 개선에 매우 중요하다. Copyback 명령을 사용하면 가비지 컬렉션 수행 시간을 최소화할 수 있지만 ECC에 의한 에러 정정을 수행하지 않아 데이터 신뢰성에 악영향을 끼치는 한계점이 있다. 본 논문에서는 copyback 수행 시 실제 NAND칩의 오류 전파 특성을 파악하여 데이터 신뢰성이 문제가 되지 않는 copyback 한계 횟수를 규명하고, 제한된 횟수까지만 copyback을 수행하는 rcopyback 모델을 활용한 FTL을 제안한다. 구현된 FTL에 호스트의 워크로드 부하에 따라 SSD 내부 데이터 이동을 수행할 때 copyback의 사용 여부를 결정하는 모듈을 추가하여 제한된 횟수의 copyback을 효율적으로 활용하도록 했다. 제안된 FTL은 데이터 신뢰성 문제를 일으키지 않고 가비지 컬렉션 과정의 DMA 비용을 최소화해서 copyback을 사용하지 않는 baseline 대비 평균 I/O 처리량이 45% 개선되었다.

qtar: 플래시 변환 계층 리매핑 기법을 이용한 최적화된 tar 명령어 구현

유정석, 한상욱, 김지홍

http://doi.org/10.5626/JOK.2018.45.1.9

tar는 여러 개의 파일들을 묶어 하나의 파일로 만들어주는 리눅스 명령어이다. 크기가 작은 여러 파일들을 하나의 파일로 만들면, 파일 압축 및 전송 시에 좋은 효율을 갖는다. 하지만, tar는 타겟 파일들의 크기가 작을수록 성능이 떨어지는 문제점이 있다. 본 논문에서는 이 성능 하락이 tar가 파일들의 데이터를 읽어오는 데에서 발생함을 보이고, 플래시 변환 계층 리매핑 기법을 통해 이 문제를 해결하여 qtar(quick tar)를 구현하였다. I/O 성능은 I/O 요청의 크기가 1 MB보다 작아질 경우 그 크기에 비례하여 떨어지게 되는데, tar의 경우 파일들의 데이터를 한 파일 단위로 읽어 각 파일의 크기가 작을수록 안 좋은 성능을 갖게 된다. 그러나, qtar의 경우 리매핑 기법을 활용하여 파일들의 데이터를 항상 최대 I/O 크기로 읽어 각 파일의 크기와 관계없이 좋은 성능을 갖는다. 실험 결과, qtar가 tar에 비해 최대 3.4배 빠르게 동작하는 것을 확인하였다.

MLC 낸드 플래시 기반 저장장치의 쓰기 성능 개선을 위한 계층 교차적 최적화 기법

박지성, 이성진, 김지홍

http://doi.org/10.5626/JOK.2017.44.11.1130

하나의 메모리 셀에 여러 비트의 정보를 저장하는 다치화 기법은 공정 미세화와 함께 낸드 플래시 메모리의 집적도를 크게 향상시켰지만, 그 반대급부로 MLC 낸드 플래시 메모리의 평균 쓰기 성능은 SLC 낸드 플래시 메모리 대비 두 배 이상 하락하였다. 본 논문에서는 MLC 낸드 플래시 기반 저장장치의 성능 향상을 위해 제안되었던 기존의 계층 교차적 최적화 기법들을 소개하고, 두 기법의 상호 보완성을 분석하여 해당 기법들의 한계점을 극복하는 새로운 통합 기법을 제안한다. MLC 낸드 플래시 디바이스에 존재하는 성능 비대칭성을 플래시 변환 계층 수준에서 최대한 활용함으로써, 제안하는 기법은 인가되는 다수의 쓰기 명령을 SLC 낸드 플래시 디바이스의 성능으로 처리하여 저장장치의 성능 향상을 도모한다. 실험 결과, 제안하는 기법은 기존 기법 대비 평균 39%의 성능 향상을 달성할 수 있음을 확인하였다.

클라우드 데이터베이스에서의 꼬리응답시간 감소를 위한 가비지 컬렉션 동기화 기법

한승욱, 한상욱, 김지홍

http://doi.org/10.5626/JOK.2017.44.8.767

클라우드 데이터베이스와 같은 분산 시스템 환경에서는 균일한 서비스 품질을 보장하기 위해 꼬리 응답시간을 짧게 유지하는 것이 중요하다. 본 논문에서는 카산드라 데이터베이스를 대상으로, 긴 꼬리 응답시간에 해당하는 지연이 메모리 공간 부족으로 인해 발생한다는 것을 보이며, 이러한 지연이 메모리 공간 확보를 위해 버퍼에 저장된 데이터를 저장장치에 완전히 내려쓸 때까지 카산드라가 사용자의 요청을 받지 않기 때문임을 밝힌다. 버퍼에 저장된 데이터를 내려쓰는데 걸리는 시간은 저장장치 성능에 따라 결정되므로 SSD의 가바지 컬렉션으로 인한 성능 저하가 꼬리 응답시간을 더 길게 만들고 있음을 관찰하였다. 우리는 자바가상기계에서의 가비지 컬렉션과 SSD에서의 가비지 컬렉션을 함께 수행하여 SSD의 가비지 컬렉션 비용을 숨기는, SyncGC 기법을 제안한다. 실험 결과, SyncGC 기법을 통해 꼬리 응답시간인 99.9th와 99.99th-percentile을 각각 31%, 36% 줄일 수 있었다.

AIOPro: 안드로이드 스마트폰을 위한 통합된 스토리지 I/O 분석도구

한상욱, 이인혁, 류동욱, 김지홍

http://doi.org/

사용자 경험이 중요한 스마트폰에서는 사용자의 입력에 대한 응용 프로그램의 반응 시간에 대한 분석이 필요하며 특히 사용자 반응 시간에 큰 영향을 주는 스토리지 I/O 성능의 분석은 사용자 경험최적화를 위한 중요한 요건이다. 사용자가 경험하는 반응 시간의 분석을 위해서는 입력을 받아들이는 최상위 계층에서 최하위 저장장치 계층을 수직적으로 아우르는 통합된 분석도구가 필요한데 기존의 도구들은 제한된 범위의 계층들에 맞추어 있어서 효과적인 사용자 경험 분석이 어려운 상황이다. 본 논문에서는 안드로이드 스마트폰을 대상으로 최상위 안드로이드 플랫폼, 리눅스 커널을 포함하는 전체 스토리지 I/O 계층의 I/O 동작을 측정하고, 이를 바탕으로 계층 통합적 분석을 통하여 각 계층간 I/O 동작을 연결하여 사용자 입력에 따른 스토리지 I/O가 미치는 영향의 분석이 가능한 도구인 AIOPro를 소개한다. 검증 실험을 통하여 AIOPro가 0.1% 미만의 동작부하로 정확히 분석할 수 있음을 확인하였다.

MADE (Minhash-Assisted Delta Compression Engine) : 델타 압축 기반의 낸드 플래시 저장장치 내구성 향상 기법

권혁준, 김도현, 박지성, 김지홍

http://doi.org/

본 연구에서는 쓰기 데이터양 감소를 통해 낸드 플래시 기반 저장장치의 수명향상을 도모할 수 있는 MADE(Min-hash Assisted Delta-compression Engine) 모듈을 제안한다. MADE 모듈은 델타압축기법(delta compression)을 통해 중복되는 데이터 패턴을 최소화하여 실제 낸드 플래시에 인가되는 쓰기 명령 횟수를 획기적으로 줄일 수 있을 뿐만 아니라, 중복제거기법(deduplication) 및 무손실압축기법(lossless compression)의 통합적용과 유사한 효과를 볼 수 있도록 설계되었다. 또한 델타압축기법 과정 중 필요한 참조 페이지 탐색 및 압축 기법을 최적화하여, 저장되는 데이터양을 최대한 줄이는 동시에 부가적인 오버헤드를 최소화 하였다. 시뮬레이션 결과, MADE가 적용된 플래시 변환계층(Flash Transition Layer, FTL)은 실제 낸드 플래시 칩에 저장되는 데이터를 최소 50% 줄일 수 있었으며, 순차적인 중복제거기법과 무손실압축기법을 단순 통합하여 적용한 경우에 비해 추가적으로 12%의 쓰기 데이터양을 감소시킬 수 있었다.


Search




Journal of KIISE

  • ISSN : 2383-630X(Print)
  • ISSN : 2383-6296(Electronic)
  • KCI Accredited Journal

사무국

  • Tel. +82-2-588-9240
  • Fax. +82-2-521-1352
  • E-mail. chwoo@kiise.or.kr