SNU/논문리뷰

[Storage] Improving I/O Performance via AddressRemapping in NVMe Interface; IEEE Access

아나엘 2023. 1. 3. 16:29

Main Points

1. What is the problem that the paper wants to solve? Why is it difficult?

While NVMe SSDs provide high I/O performance, they have a higher cost per GB compared with other storage devices->tiered storage devices with heterogeneous devices to improve the cost efficiency of the systems. HDD가 storage로 쓰이고 NVMe같은 고성능 스토리지장치는 빈번한 랜덤 write다루는데 쓰임. db 시스템 등에.. HPC.. 액세스 패턴 다양한 많은 응용들의 I/O요청 다루는 데 사용됨. SSD특성 잘 알고 그게 성능에 어떻게 영향 미치나 알아야 함. ㄹㄴ덤쓰기 성능은 SSD에서 시퀀셜이 많으면 느려짐. 또한 어떤 제약조건이 뭐에 영향 미치는지.. 그래서 업데이트때는 ssd가 free page에 업데이트된 내용을 쓴다..이건 많은 유효하지 않은 페이지를 만든다. 가비지컬렉션 수행 시 전체 victim block 읽고 엠티블록에 복사하고 그 빅틈블록을 지움. 많은 페이지복사 오버헤드 발생. 

 시퀀셜 쓰기때 싱글블록에 비슷한 수명주기로 쓰므로 싱글operation만에 삭제. 이는 랜덤보다 garbage collection효율성 높여줌. 

 previous studies (to improve the perf. of SSDs by addressing I/O access patterns)

 - F2FS: 플래시베이스 스토리지 장치를 위한 파일시스템. append only logging 이용해 성능 높임

 - SHRD: 랜덤쓰기를 시퀀셜로 바꿔주고 예약된 로그스페이스에 데이터를 저장. 

 - ReSSD: 작은 랜덤쓰기를 식별해 가상블럭장치레벨에서 시퀀셜로 바꿔줌.

 

 

2. What is the solution? What is the main idea?

여기서도 랜덤쓰기를 시퀀셜로로 만들긴 하는데 대신 랜덤쓰기 주소를 시퀀셜쓰기 주소로 리매핑.. (NVMe장치 드라이버레이어에서) . 주소리매핑 스키마 제안. 요청이 쓰기인지 확인 후 블럭주소를 시퀀셜주소로 바꾸고 원래주소와 변환된 주소는 리매핑 테이블에 기록. 이 방식의 장점 1) 디바이스 드라이버만 수정하므로 여러 스토리지 시스템에 쉽게적용가능. 2) 헤테로지니어스 계층 스토리지시스템의  개별 장치(특성 각각 다름)에 적용가능. 

 

3. What is the result?

NVMe SSD에서 I/O operation 분석

리매핑 스키마 설계 및 구현

기존 파일시스템 대비 성능향상 증명. 

 

Strengths

1. What is the main novelty that enabled the solution? 

랜덤쓰기->시퀀셜로 바꿀 때 I/O request 블록주소를 NVMe 디바이스드라이버 내에서 바꾸는 것. 이층이 시스템 내 전체 장치에 영향 주므로.. 다른 타입의 장치엔 영향 없음. 기존은 어플리케이션에서 issue된 요청이 층을 지나고..~ submission된 후 컴플리션 큐에 들어가고.. 호스트가 요청이 잘 처리됐음을 알수 있음. 제안하는 방법은 submission이전 리매핑. pair, intercepting struct which is used for carrying info(add, size 등)

2. What are the good aspects of the paper? Did you learn something from the paper?

remapping table-pair로 저장. 탐색속도 빠름. 쓰기 변환뿐 아니라 그때 발생가능한 overwrite, cleaning, crash consistency 까지 고려. 안정성을 높인 점. 완성도가 높다. 여러 파일시스템에 대해 기존 스키마/제안스키마 실험결과 비교한 것 이 좋았음. read에 영향 미치는지 추가 실험한 것. 

3. What is the impact of the paper?

.

 

Future Improvements

1. Are there weaknesses parts in the paper? How can you improve it?

제안하는 방법으로 바꾸게 된 논리적 이유없음. 왜 더 좋은지?

existing scheme를 기존 것 한 가지만 사용한 것이 아쉽다. 새로나온 다른게 있다면 그것도 비교가능.

읽기성능에 영향이 있다는 점. 일일이 찾아야 하므로.

관련연구가 맨 아래 있기는 한데.. introductions와 겹치기도 하고 이거랑 비교 안한 점이 아쉽다.

2. How can you extend the paper?

전체성능은 향상시켰어도 읽기성능오버헤드 증가. 읽기성능 오버헤드가 작기는 해도, 더 줄일 수 있는 방향 찾아보기

관련연구의 다른 scheme과도 비교

3. How can you apply the technique to other data/problem?

 
반응형