
FMS 2025 - 발표
원래 이 글은 P4800X 리뷰를 업로드하기 이전에 작성할 예정이었는데, 일이 꼬였습니다. 중간고사는 무사히 끝났지만, 과제가 산더미같이 많습니다. 제가 학교에 들어온 이후로 가장 바쁜 학기가 아닌가 싶을 정도입니다.
아무튼 본론으로 돌아와, 한국 시각으로 9월 10일에 FMS 2025의 자료들이 업로드 되었습니다. 양이 많아서 전부 다루는 것은 힘들고, 시간도 없기에 관심있는 부분에서도 극히 일부... 정말로 극소수에 한정해 어떤 주제가 있었는지 언급만 하고자 합니다. 발표 당 하나의 슬라이드만 제시할 생각으로 글을 시작하겠습니다. 전시에 대한 요약은 이전 글을 참고해주세요.
순서는 특정한 회사의 편애 같은 것이 아니라 그냥 무작위입니다. NAND 제조사들은 일부러 앞에 배치하긴 했습니다만, 기업의 순위를 나타내는 것은 아닙니다.
Samsung
Preferred I/O for High-Capacity SSDs

PostgreSQL 환경과 HC-SSD의 조합에 대해서 다루었습니다. HC-SSD의 특성 중 하나는 4k IU가 아니란 것인데, 이를 최근 도입된 LBS(Large Block Sizes)를 통해 SSD의 WAF를 줄이고 RMW 오버헤드를 줄여 해결할 수 있다는 것입니다.
Alignment가 제대로 수행될 수 있도록 하는 것이 핵심으로 보이네요.
SK hynix
Start New Game: HBS (High Bandwidth Storage/Solution)

이전에 언급한 친구입니다. 발표를 했었네요.

우선, 발표의 핵심 주제이기도 했던 HBS입니다. AP가 따로 까맣게 있어서 눈치채지 못할 수도 있지만, HBS Module과 AP가 함께 패키징되는 것을 확인할 수 있습니다. 그나저나, HBS Module에 LPWIO-NAND가 포함된 것이 보이시나요?

HBS에서 핵심이라고 할 수 있는 VFO package와 LPWIO-NAND(Low Power Wide-IO NAND)입니다.

HBS를 적용할 수 있는 여러 방법입니다. 적용 예시로는 Smartphone, CXL-hybrid Memory, Automotive, GPU를 언급하고 있습니다.
HBS가 약간 익숙하다면 아마 SanDisk의 HBF(High Bandwidth Flash)겠죠. 실제로 FMS 2025에서 SK hynix와 SanDisk가 HBF를 표준으로 만들기위해 손을 잡았다고 발표했습니다.
Micron
How EDSFF exceeds for PCIe 5.0 and 6.0

PCIe 5.0과 PCIe 6.0으로 넘어오며 신호는 굉장히 민감해졌습니다. 특히, 3-connector topology에선 어려움을 겪고있죠. 간단하게 U.2와 비교해 EDSFF의 장점을 나열해보면, card edge 방식의 채용으로 신호 전환의 지점이 적어, 무결성이 향상됩니다. 또한, U.2는 TX와 RX핀이 인접해있어 Crosstalk 문제가 발생합니다만, EDSFF는 그렇지 않죠.
이외에도 U.2보다 EDSFF(E3.S)가 에어플로우를 더 적게 필요로 합니다. 냉각 비용을 줄일 수 있다는 뜻이죠.
이러한 장점으로 U.2는 언젠가 퇴화되고 EDSFF가 자리잡게 될 것입니다. 제 생각이지만, EDSFF가 U.2를 완전히 대체할 때 까지 소모되는 시간은 꽤 길겠죠.
E2: A new high-capacity form factor

방금 EDSFF 이야기를 마무리했는데, 또 EDSFF입니다. 다만, 기존의 E1, E3와 다르게 E2라는 새로운 폼팩터를 소개합니다.
E2 폼팩터는 최대 64개의 NAND 패키지를 수용가능합니다. 예상할 수 있는대로, 고용량 SSD를 위한 폼팩터입니다. 현재, SNIA에서 SFF-TA-1042라는 이름으로 표준을 찾아볼 수 있습니다.
Pure Storage의 DFM(DirectFlash Module)이 생각날 수도 있겠습니다. 실제로 저는 이 E2 폼팩터가 Micron - Meta - Pure Storage가 중심이 되어 이끈 폼팩터라고 알고 있습니다.
Kioxia
Data Scrubbing and Rebuild Using Offload

Offload는 호스트 시스템의 자원 사용을 줄일 수 있습니다. 기존 방식의 Data Scrubbing이나 RAID Array의 Rebuild는 시스템 자원을 꽤 잡아먹는 프로세스입니다. 당장 대규모 Array를 가정할 때, 데이터의 이동량을 고려하면 쉽지 않은 일이죠. 이를 Offload로 해결합니다.
참고로, 슬라이드는 Rebuild에 대해서만 담았습니다.
High IOPS SSDs for AI Use Cases

AI와 관련된 많은 Use Case들을 제시합니다. GPU Memory Extension, Near-GPU Caching, KV Caching. 결국 높은 IOPS가 필요하고, 이를 효과적으로 적은 수의 SSD로 해결하기 위한 방법으로 Kioxia는 XL-FLASH라는 포트폴리오를 보유하고 있습니다. AI를 바라보고 준비한 것은 아닐 거라고 생각하지만, 현재가 중요한 법이죠. 참고로, CXL Interface와 관련된 XL-FLASH의 발표는 "Memory Expansion with CXL Interface with Low-latency Flash"에서 확인할 수 있습니다.
이러니 저러니 Optane과 Z-NAND는 죽었고, 발표에서는 XL-FLASH를 하이엔드 TLC 제품과 비교합니다.
Kioxia는 1세대 XL-FLASH의 개별 판매도 진행했지만, 자체적으로 FL6라는 SSD를 만들기도 했습니다. 2세대 XL-FLASH도 Innogrit 등을 통해 여러 시제품이 공개된 적이 있죠. 개인적으로 알게된 루머입니다만, Kioxia는 자체적으로 2세대 XL-FLASH를 사용한 FL7(추정)을 만들 생각은 없다고 합니다. 루머이지만요.
FL6는 올해 중으로 리뷰를 업로드 할 수 있을 것 같습니다. 기다려주세요.
Enabling Higher Capacity Storage with QLC UFS

많은 사람들이 그닥 좋아하지 않는 QLC. 왜 스마트폰에서도 봐야할까요? 우선, Kioxia는 On-device AI와 Lower Carbon Footprint에 초점을 두고 있습니다. 아마 전자의 이유가 더 크겠죠.
우려하는대로 QLC를 UFS에 도입하기엔 문제점이 여럿 존재합니다. 그중 가장 알기 쉬운 부분은 성능, 안정성입니다. Kioxia는 이번 발표로 최소한 성능에 대해서 해결책(?)을 제시했습니다. WriteBooster라는 이름의 SLC 캐시입니다.
이전부터 도입되었던 기술인데, 굳이 여기서 부각을 하는 이유는 잘 모르겠습니다. UFS에는 비교적 관심이 덜해서 말이죠. 일반적으로 아는 SSD의 SLC 캐시와 비교하자면, IDLE Time에 돌입해야 Flush가 일어난다는 것이 핵심입니다. UFS가 적용되는 기기들을 생각하면 현명한 판단이죠.
그러고보니 제 노트북도 UFS를 메인 저장장치로 사용하는데, 리눅스가 설치되지 않아 벤치마크를 하기는 애매하겠네요.
Mixed Mode SSD

Kioxia가 좀 많죠? 마지막입니다. 개인적으로 기대했던 발표였습니다. QLC SSD 내부에 pSLC 영역을 만드는 것입니다. cSSD의 SLC 캐시와 똑같은 것 아니냐는 질문을 할 수도 있는데, 작동방식이 좀 다릅니다. 애초에 이쪽의 SLC 영역은 개별 네임스페이스로 성립합니다.
이점은 여러가지 있습니다. 특히, 16k IU의 SSD라면 4k RND Write를 가할 때 SLC영역으로 받아 상당한 성능 향상이 가능할 것입니다. 위에 제시한 슬라이드도 이점을 나타냅니다. 추가로, SLC SSD가 별도로 존재하면 네트워크나 PCIe lane등이 불균형해지기 마련이지만, 여기선 그렇지 않죠.
자세한 것은 생략하고, FDP를 접목한다는 아이디어도 있습니다. 흥미롭지 않나요?
SanDisk
Transparent Host Memory Buffer (THMB)

기존의 HMB와 다른 점을 나타내는 슬라이드입니다. 자세한 설명은 언젠가 SSD를 전체적으로 다룰 때, DRAMless SSD도 다루게 될텐데, 그 때 이야기 하도록 하겠습니다. 진짜 언젠가...
흥미롭기도 하고, HMB의 작동방식에 대해 자세히 파악할 수 있는 발표인만큼, 한 번 살펴보시는 것도 좋을 것 같습니다.
Adaptive Link Speed Management Benchmarking

PCIe PHY가 Gen5로 동작할 때, 평균적으로 1.5W, 최대 3W까지 소모합니다. 이는 SSD 전체 소모전력의 3할 정도를 차지하는 것으로, 이전 세대에 비하면 상당한 비중입니다.
그래서 유휴상태일 때는 link speed를 변경하는 것, 그것이 Adaptive Link Speed Management입니다. 위 슬라이드는 ALSM의 적용 여부에 따른 테스트 결과를 나타냅니다. PCM10 기준으로 50% 가까이 전력을 절감할 수 있었지만, 점수도 20% 가량 낮아졌음을 알려 줍니다.
ALSM에는 Queue에 있는 명령의 수에 따라 최적화를 수행하는Queue-depth adjusted thresholds와 대역폭의 요구량이 임계지점을 초과하면 Link Speed를 바로 끌어올리는 Early Saturation detection의 옵션이 존재합니다. 위의 결과는 후자의 설정입니다.
현재는 Vendor에 귀속된 고유한 기능이지만, 향후 표준화의 가능성이 있다고 시사합니다. 참고로, 비슷한 것이 Windows에도 존재합니다. 아래를 보시죠.
Microsoft
NVM express (NVMe) Innovations in Windows

24H2부터 도입된 DLRM(Dynamic Link Rate Management)입니다. NVMe 드라이버는 3가지 모드를 지원하며, Default balanced power mode, Best performance power mode, Best power efficiency power mode가 있습니다. SanDisk의 ALSM과 상당히 비슷하죠?

또한, Windows는 현재 적극적으로 NVMe stack을 Redesign 중 입니다. 이미 조금은 알려진 사실이긴하죠. 슬라이드에 적힌대로 Insider program을 통한 Windows Server 2025에서 사용할 수 있다고 하는데, 나중에 테스트하도록 하겠습니다.
이외에도 NVMe-oF, DSM(Dataset Management) Hints, Boot Partiton 등의 새로운 기능을 예정에 두고 있다고 합니다.
Solution for Excessive Memory Overheads: RAIDDR ECC code

SSD에 관한 것이 아닙니다. DRAM이죠. FMS가 새롭게 구성되었지만, 제 주(主) 관심사인 SSD만 들고오려다가 이 발표는 들고오지 않을 수가 없었습니다. ECC! 제가 참 좋아하는 기술인데요, IBM의 Chipkill도 정말 좋아합니다.
현재 DDR5 DIMM 아키텍쳐, 10x4 DIMM과 5x8 DIMM을 소개하고 문제점을 2가지 지적합니다. 첫 번째는 ECC의 Overhead가 너무 크다는 것, 두 번째는 DDR5 x8이나 LPDDR5X x8 아키텍쳐는 수용 불가능한 AFR/AIR을 초래해 안정성이 낮다는 것입니다.
그렇게 제시된 것이 RAIDDR입니다. RAID for DDR. 쉽게 보면 10x4 구성을 9x4 구성으로 변경하는 것과 동일하다고 볼 수 있겠습니다. 자세한 작동방식과 이점은 첨부한 슬라이드를 읽어보면 파악할 수 있을 것입니다.
Silicon Motion
An Ultra-low-power LDPC Decoder Application in SLC Mode

기존의 LDPC Decoder는 오류율이 낮은 SLC 모드에서도 input, output, LDPC용으로 총 3개의 Memory Block이 필요합니다. 데이터가 입력되면 LDPC block과 Decoding Logic을 왕복하며 ECC 작업을 수행하는데, SLC 모드는 오류율이 낮아 이러한 반복이 1 ~ 2회만 필요합니다. 그렇기 때문에 SLC 모드에서는 데이터 전송에만 총 60%의 전력이 소모됩니다.
Silicon Motion은 여기서 ULPBF(Ultra-low power bit flipping) Decoder를 제시합니다. ULPBF Decoder는 LDPC Decoder에 비해 굉장히 제한적인 ECC를 수행할 수 있는데, SLC 모드에선 이 정도로 충분한 것이죠. 이러한 과정을 거치게되면 데이터의 입출력이 간소화되며, LDPC Decoder를 거칠 필요가 없으니까 소모되는 전력이 줄어듭니다. 발표에서는 Logic에서 33%, Memory에서 45%, 총 40%가 줄어든다고 주장합니다.
Optimizing SSD Performance for Edge AI NVMe Dataset Management Insights

Windows 이야기를 할 때도 나왔던 DSM(Dataset Management)입니다. 이건 요약하기가 좀 애매하네요. 기존에 잘 알려진 ZNS, FDP와 비교한 표가 담긴 슬라이드를 첨부합니다.
요점은 Hot data는 SLC block에 유지되어 읽기 요청을 빠르게 처리 가능하며, GC는 score table을 이용해 source block을 선택할 수 있다는 것 입니다. 최대한 적은 양의 데이터만 이동하게 하여 WAF를 줄일 수 있는 것이 장점이죠. 여기서 Hot data를 구분하는 방법이 바로 Windows에 도입예정인 DSM Hint입니다.
이것도 ZNS나 FDP를 다룰 때 한 번 정리해보겠습니다. 글을 쓰고 있는데, 어째서 할 일이 더 늘어나는 걸까요?
A Distributed Controller for Flexible Applications in the AI Era

NAND 산업에는 아직도 여러가지 도전과제가 많이 남아있습니다. AI 워크로드부터 시작해 성능 병목이나 신호 품질 등이 해당되는데, 컨트롤러의 개선을 통해 해결할 수 있는 부분도 많습니다.
Silicon Motion은 분산형 컨트롤러의 디자인을 제안합니다. DPU와 FPU로 나뉘어진 디자인으로, FPU는 오류 재시도, 미디어 건강상태 관리를 맡으며, 소위 NAND의 "dirty works"를 처리한다고 합니다. 이외에도 물리 주소의 접근도 도와주는데, 자세한 역할의 분담은 제시한 슬라이드에 나와있습니다. 분산형 디자인으로 얻게되는 이점도 나와있는데, 유연성과 전력절감 등 많은 것을 확인할 수 있습니다. 슬라이드에는 나와있지 않지만, 신호 무결성 개선도 제시되었습니다.
실제로 ONFI Interface를 2개 실장한 FPU 칩을 25년 연말까지 검증할 예정이라고 합니다. 2배의 대역폭을 확보한다는 것인데, 결과가 궁금하네요.
기존에 특정 코어를 FTL 관리 전용으로 사용하거나, big.LITTLE을 채용하는 컨트롤러는 많았습니다. 심지어 ARM과 RISC-V 코어를 동시에 활용한 사례도 있죠. 이번에 제시된 것은 완전히 별도의 FPU 칩을 제안하는 것 같은데, 꽤 재밌어보이지 않나요?
University of Virginia
A Second Life for Flash With Page Isolation

NAND를 더 오래 쓸 수 있는 방법을 제시한 논문의 발표입니다. 원본이 되는 페이퍼는 IIRW 2024에 게시되었습니다. 의외로 이런 연구는 꽤 많아, 여러 종류를 본 기억이 있습니다.
여기선 Page Isolation을 통해 진행했으며, 기본적인 내용은 첨부한 슬라이드와 같습니다. 일부 page를 격리 용도로 사용해 page의 간섭과 읽기 방해를 완화하는 것이며, 이 방법의 장점은 우측의 다이어그램에 나와있습니다.
일반적으로 사용하다가 수명 한계에 도달하면 1-page Isolation을 통해 수명을 연장, 이후 다시 수명 한계에 도달하면 2-page Isolation을 통해 수명을 연장... 반복되는 거죠.
FTL에 추가로 구현하기도 쉽고, 실험 결과도 괜찮아보입니다. 다만, 우리가 일반적으로 생각하는 3D NAND에서는 Page Isolation의 이점이 더 적습니다. 물리적인 한계에 따른 것이긴 하지만요.
Closing
작년부터 FMS는 Flash Memory Summit이 아닌, the Future of Memory and Storage로 탈바꿈했습니다. Flash Memory 시장의 대다수를 차지하는 NAND 제조사 중 대형 3사가 DRAM 제조사이기도 하며, 최근에 세분화되고 있는 Storage Hierarchy를 생각해본다면 당연한 일이긴 합니다. 여러 가지를 다루기엔 진짜 너무 양이 많아져, 최대한 간추려서 요약해보았습니다.
제가 정리한 발표 이외에도 FDP를 Video Recording에 적용시킨 Client Case, Quarch Technology의 PCIe 6.0 L0p, Phison의 읽기 성능 개선 방법 등 SSD에만 한정하더라도 재미있는 것은 많았습니다. 최대한 글을 빠르게 작성하기 위해서 쳐낼 것은 쳐냈습니다만, 조금 아쉽기도 하네요.
이번 FMS에서는 SanDisk의 발표 하나를 기대하고 있었는데, 자료가 남아있지 않아 아쉬웠습니다. Sprandom(SanDisk Pseudo-Random) Pre-Conditioning에 관한 이야기였는데, 놀랍게도(?) FIO에 통합되었습니다. 자세한 것은 FIO GitHub을 통해 확인할 수 있으며, 함께 링크된 OCP Storage Tech Talk에서 발표를 했던 기록이 있어 시청을 할 수도 있죠. 자세한 원리나 방법에 대해서는 이후에 다시 소개해보겠습니다. 직접 적용할 일이 있다면 더욱 좋겠는데 말이죠.
그럼, FMS 2026을 기대하며 제 개인 리뷰를 준비하도록 하겠습니다. 일부 관심있는 학회들은 계속 모니터링하지만, 이런식으로 크게 요약 정리할 일은 드물 것 같네요.
읽어주셔서 감사합니다.



Comments