검색 : [ keyword: flash memory ] (10)

분산학습 클러스터의 동적 스케일링 중 발생하는 학습 중단 원인 분석과 이의 완화 기법

임영훈, 유준열, 서의성

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

GPU 클러스터의 자원을 효율적으로 관리하기 위해 동적으로 스케일링하는 것이 중요하다. 체크포인트 기반의 중지 후 재개 스케일링이 널리 사용되어 왔지만, 최근 프레임워크는 학습된 모델을 런타임 환경에서 새로운 GPU로 전송하는 체크포인트 없는 접근 방식을 제공한다. 그러나 이 방법은 새로운 GPU를 추가할 때마다 기존의 학습이 중단되며 비효율적인 방식으로 학습 상태를 동기화한다. 이러한 문제를 해결하기 위해 본 논문은 스케일링 중 학습을 이어나가는 오버래핑 기법과 동기화 과정에서 발생하는 불필요한 중복된 학습 상태 전달을 제거하며 GPU들의 토폴로지를 고려하는 병렬적 브로드캐스트 기법을 제안한다. 제안하는 기법은 Elastic Horovod에 구현하여 성능평가를 수행하였고, 스케일링 과정의 72.8%의 시간을 학습 시간으로 대체하여 활용할 수 있으며 학습 상태 동기화의 성능이 최대 31.7% 향상시킴을 확인하였다.

ESP: Subpage 단위의 쓰기 명령어를 활용한 대용량 3D 플래시 메모리 기반 저장장치의 성능 및 수명 개선

김명석

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

최근 대용량 3D NAND 플래시 메모리는 지속적으로 물리적인 페이지의 크기를 증가시키고 있다. 큰 크기의 페이지는 플래시 메모리의 용량을 늘리는 데는 유용하지만 작은 크기의 쓰기 요청이 지배적인 대부분의 응용에서 스토리지 시스템의 성능과 수명을 심각하게 저하시킨다. 본 논문은 작은 크기의 쓰기 요청을 처리하기 위해 동일한 페이지에 대하여 여러 번 순차적으로 쓰기 동작을 수행할 수 있는 ESP(Ease-Free Sub-Page Programming)라고 하는 새로운 NAND 쓰기 방식을 제안한다. ESP 방식은 데이터의 에러 특성을 활용하여 데이터 손실 없이 서브페이지 단위의 쓰기 동작을 구현함으로써 작은 쓰기로 인한 내부 단편화를 제거하여 스토리지 시스템의 가비지컬렉션 오버헤드를 줄일 수 있다. ESP를 지원하는 FTL(subFTL)을 구현하여 개선 효과를 검증한 결과 subFTL은 플래시 기반 저장장치 시스템의 IOPS와 수명을 각각 최대 74%와 177%까지 향상시켰다.

멀티테넌트 환경에서 SSD 내부 채널 간섭 완화를 위한 데이터베이스 튜닝 기법

오승진, 박종혁, 이상원

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

멀티테넌트 환경에서 다수의 테넌트들은 단일 SSD를 저장장치로 공유한다. IO의 특성이 상이한 멀티테넌트는 SSD 내부 채널 수준의 간섭이 발생한다. 본 논문에서는 SSD 내부 채널 수준의 병렬성을 충분히 활용하기 위한 두 가지 튜닝 기법인 페이지 크기 정렬 기법과 Readahead 크기 증가 기법을 제안하고, 도커 컨테이너 기반 환경에서 Linkbench와 TPC-H를 동시 수행하여 트랜잭션 처리량 및 응답(수행)시간 성능을 평가한다. 성능평가 결과, 페이지 크기 정렬 기법은 SSD 내부에서 불필요한 데이터 패딩/분할 작업의 오버헤드를 줄이고, IO 요청의 불필요한 채널점유를 방지하기 때문에 내부 간섭을 완화시켜, Linkbench와 TPC-H 모두 성능이 향상되었다. 하지만, Readahead 크기 증가 기법은 순차 읽기 요청의 SSD 내부 채널 점유율을 높여, Linkbench의 비교적 작은 크기의 임의 IO 요청에 의한 간섭을 줄이기 때문에, TPC-H의 성능만 향상되었다.

제한된 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% 줄일 수 있었다.

로그 구조 파일 시스템의 파일 단편화 해소를 위한 클리닝 기법

박종규, 강동현, 서의성, 엄영익

http://doi.org/

로그 구조 파일 시스템에서는 쓰기 작업을 처리할 때 새로운 블록들이 순차적으로 할당된다. 그러나, 다수의 프로세스가 번갈아가며 동기적 쓰기 작업을 요청할 경우, 파일 시스템 상에서는 각 프로세스가 생성한 파일이 단편화될 수 있다. 이 파일 단편화는 읽기 요청을 처리할 때 다수의 블록 I/O를 발생시키기 때문에 읽기 성능을 저하시킨다. 게다가, 미리 읽기 기능은 한 번에 요청되는 데이터의 양을 증가시킴으로써 성능 저하를 더욱 심화시킨다. 이에, 본 논문에서는 파일 단편화 문제를 해결하기 위해 로그구조 파일 시스템의 새로운 클리닝 기법을 제안한다. 제안 기법은 로그 구조 파일 시스템의 클리닝 과정 중 유효 데이터 블록을 아이노드 번호 순으로 정렬함으로써 한 파일의 데이터 블록들을 인접하게 재배치한다. 실험 결과, 제안한 클리닝 기법이 클리닝 전에 비해 약 60%의 파일 단편화를 제거하였고, 그 결과로 미리 읽기 기능을 적용했을 때 읽기 성능을 최고 21%까지 향상시키는 것을 확인하였다.

이중 쓰기 버퍼를 활용한 SSD의 성능 향상 및 수명 연장 기법

한세준, 강동현, 엄영익

http://doi.org/

본 논문에서는 NVRAM과 DRAM으로 구성된 SSD의 쓰기 버퍼 구조 및 제안된 쓰기 버퍼구조에 적합한 이중 쓰기 버퍼 알고리즘을 제안한다. 읽기/쓰기 작업이 혼합된 일반적인 워크로드에서 저장 장치의 성능을 향상시키기 위해서 읽기 작업에 의해 참조되는 페이지 또한 고려하였다. 그리고, NVRAM에 저장되는 쓰기 작업에 의해 참조된 페이지를 효율적으로 관리하여 낸드 플래시 메모리에서 발생하는 삭제 연산의 횟수를 감소시켜 SSD의 수명을 연장하였다. 우리는 실험을 통해 제안하는 쓰기 버퍼 알고리즘이 버퍼 적중률을 최대 116.51% 향상시켰으며, 낸드 플래시 메모리에서의 삭제 연산의 횟수를 최대 56.66% 감소시킬 수 있었다.

비휘발성 캐시를 사용하는 플래시 메모리 SSD의 데이터베이스 로깅 성능 분석

홍대용, 오기환, 강운학, 이상원

http://doi.org/

데이터베이스 시스템에서, 트랜잭션이 수행한 변경 사항은 커밋 전 2차 저장장치에 보존되어야 한다. 일반적 2차 저장장치는 비휘발성 미디어의 처리 지연을 보완하기 위해 휘발성 DRAM 캐시를 가지고 있다. 그러나 휘발성 DRAM에만 쓰여지는 로그들은 영구성을 보장할 수 없으므로, DRAM 캐시에서 저장매체로 로그를 쓰는 지연 시간을 감출 수 없다. 최근 이러한 단점 극복을 목적으로 DRAM 캐시에 커패시터를 장착한 플래시 SSD가 등장하였다. 이러한 비휘발성 캐시를 가지는 저장 장치는 DRAM 캐시에 로그를 쓰고 즉시 커밋 가능하므로, 커밋 대기를 줄이고 트랜잭션 처리량을 증가시킬 것이다. 본 논문은 커패시터 백업 캐시를 사용한 SSD를 로그 저장소로 사용한 경우 데이터베이스의 트랜잭션 처리 성능에 대해 실험 및 분석 한다. 로그를 낸드 플래시에 저장하지 않고 DRAM 캐시에 저장한 직후 커밋 함으로써, 3배 이상의 처리량 향상이 가능하다. 또한 적절한 튜닝을 거친 후 이상적 로그 성능의 73% 이상을 보인다.


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