DKU-StarLab / SolidStateSquad

This is a study group studying SSD, FTL, and FEMU in 2024.
8 stars 3 forks source link

6. MiDAS: Minimizing Write Amplification in Log-Structured Systems through Adaptive Group Number and Size Configuration #8

Closed 9seon closed 2 months ago

9seon commented 2 months ago

Motivation

기존의 GC 기술들은 워크로드의 특성을 효율적으로 반영하지 못해, 불필요한 데이터 이동과 높은 WAF를 초래한다. 따라서, 더 효율적인 GC 기술이 필요하다.

Proposal

데이터를 Age 기반으로 그룹화하여 데이터를 이동하는 비용을 최소화하고, UID(Uniformity Index Detector)와 MCAM(Memory Cost Adaptive Model)을 사용하여 그룹 구성을 동적으로 조정하는 방식인 MiDAS를 제안한다.

Results

MiDAS는 기존 기법들보다 평균 25%의 WAF 감소와 54%의 Throughput 향상을 달성하며, 메모리와 CPU 효율성에서도 뛰어난 성능을 보인다.

WIRYEFARMER commented 2 months ago

cold 데이터의 비중이 hot 데이터보다 더 큰 상황에서, 왜 비중이 큰 cold 데이터를 다른 그룹으로 이동시키는지 궁금합니다. 오히려 비중이 작은 hot 데이터를 이동시키는 것이 더 효율적일 수 있다고 생각하는데, cold 데이터를 이동시키는 이유가 무엇인가요?

kbskbs1102 commented 2 months ago

본 논문의 실험을 할 때 SSD의 빈 공간이 0.1% 이하가 되면 GC가 트리거되게 설정하였는데, 이 조건이 GC의 영향을 더 잘보이게 하기위한 조건인건지 궁금합니다.

min-seong-kim commented 2 months ago

그룹의 size와 count만 동적으로 작동하는 것이 아니라 세그먼트의 size(내부 블록의 개수)와 count도 동적으로 작동할 수 있을까요?

sujipark01 commented 2 months ago

cold 데이터의 비중이 hot 데이터보다 더 큰 상황에서, 왜 비중이 큰 cold 데이터를 다른 그룹으로 이동시키는지 궁금합니다. 오히려 비중이 작은 hot 데이터를 이동시키는 것이 더 효율적일 수 있다고 생각하는데, cold 데이터를 이동시키는 이유가 무엇인가요?

데이터 자체가 이동하는 것이 아닌 포인터 방식을 이용하기 때문에 큰 차이가 없다고 생각됩니다.

sujipark01 commented 2 months ago

본 논문의 실험을 할 때 SSD의 빈 공간이 0.1% 이하가 되면 GC가 트리거되게 설정하였는데, 이 조건이 GC의 영향을 더 잘보이게 하기위한 조건인건지 궁금합니다.

네, 트리거 조건을 더 극한으로 만들어 한번 GC를 진행할때의 효과를 더 극대화하려고 한것으로 사료됩니다.

Student5421 commented 2 months ago

Hot group과 WAF가 어떤 관계가 있나요?

yeojin5 commented 2 months ago

논문에서 memory 사용량을 줄이기 위한 해결책으로 0.01의 비율로 time stamp를 sampling 하는것이었는데, 이들의 정확도를 신뢰할 수 있나요?