Transcript Mid Sample

J – 이상선, 조겨리, 최성준

Disksim with SSD Extension에
hot/cold separation 구현
◦ 1. 기존 방법(1) : 크기에 따른 분류
◦ 2. 기존 방법(2) : LRU Count
◦ 3. ADIVIM : 주소 분할 관리 기법

Hot
Cold
주소 분할 관리 기법 :
◦ I/O request를 분석하여 한 파일은 한 섹션으로 분류.
◦ 한 파일은 통째로 hot이거나 cold일 가능성 높음.

SSD Architecture with ADIVIM
◦ ssd > element > plane > block > page의 구조
Host
Device Driver
Bus
SSD
Host Interface
FTL
주소 매핑
ADIVIM
Separator
플래시 메모리 관리
Chip
Chip
...
...
Flash Memory Chips
Chip
ADIVIM
Module
Chip
Chip
Chip
Chip
Chip
…

Current Write Request Control Flow
host
blk no 전달
ssd
apn =
ssd_request_arrive (ssd.c)
ssd_media_access_request
ssd_media_access_request_element
choose_element (ssd_timing.c) - request가 들어갈 element 결정
ssd_activate_elem (ssd.c)
e0
e1
e7
apn = 8k+i
lpn = k
…
apn
blk no
page size
8k+0
8k+1
8k+7

Current Write Request Control Flow
◦ inside an element
ssd_compute_access_time (ssd_timing.c)
ssd_issue_overlapped_ios
ssd_pick_parunits
-request가 들어갈 plane 결정
가장 free block이 많은 plane 선택
_ssd_write_page_osr
-update lba_table (lpn -> ppn)
element
page0
plane0
page64
block0
page63
plane1
plane7
block1
block7
page127
…

Revised Control Flow (hot/cold seperation)
host
ssd
blk no 전달
ADIVIM
hot
blk no
page size
cold
기존 page mapping
e0
apn =
주소분할관리를 통한
hot/cold 결정
e1
e7
block mapping을 위한
block number 설정
e0
e1
…
h_apn
8k+0
8k+1
e7
…
8k+7
c_abn
8k+0
8k+1
c_abn = c_apn / 64
= 8k + i
c_lbn = k
c_lba_table : clbn -> pbn
8k+7

I/O Request의 hot/cold 구분 logic

ADIVIM 고유의 data structure
◦ choose_element (ssd_timing.c)
◦
◦
◦
◦
◦

Element Metadata – hot/cold active page
Element 안의 h_lba_table / c_lba_table 구분
Block Metadata – hot/cold block
Free hot/cold_lpn list
Free block list
Garbage Collection 수정
◦ ssd_clean_block_fully (ssd_clean.c)
- Cold block의 page move 방지

다음 요소들에 대해 각 방법의 성능 비교
◦ 1. Write Amplification Factor
data written to the flash memory
data written by the host
- 직접 구현
◦ 2. SSD Lifetime
- 모든 page가 invalid 된 block을 지울 때마다 감소
- SSD Extension output : Average lifetime
◦ 3. I/O Latency
- SSD Extension output : Average response time
기간
내용
담당
11월 1주차
기존 방법(1) 구현
조겨리
11월 2주차
기존 방법(2) 구현
최성준
11월 3주차
ADIVIM 구현
11월 4주차
ADIVIM 구현
12월 1주차
성능 비교 및 ADIVIM 개선
12월 2주차
보고서 작성
기업 담당자와의 데모
12월 3주차
최종 발표
이상선, 최성준
조겨리
이상선