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주차 최종 발표 이상선, 최성준 조겨리 이상선