0. 도입
Intel Optane DC Persisten Memory(Optane DCPM)은 SCM(Storage Class Memory)의 일종으로 DRAM과 같은 random access와 low latency를 제공하면서 non-volatile 한 특징을 가지고 있다. 지난 몇십 년간 이러한 메모리에 대한 활발한 연구가 진행되어 왔으며, PCM, STT-RAM과 같은 기술들이 등장하였다. 하지만 그중 가장 먼저 일반인(?)에게 상업적으로 제공된 제품이 바로 Intel Optane DC PM이다. 이 메모리는 PCIe로 연결되지 않고 DRAM과 마찬가지로 DIMM slot에 꽂혀 iMC를 통해 접근이 가능하다. 자세한 기술적 특징은 생략하고, 간단하게 말하면 Optane DC PM은 빠르고, 비휘발성의 특징을 가진다고 할 수 있다.
1. Optane DC PM의 두가지 mode
위에서 말한 특별한 특징 때문에 Optane DC PM은 두 가지 mode로 사용할 수 있다. 첫 번째 모드인 Memory mode는 기존의 DRAM을 cache로 사용하고 Optane메모리를 memory로 사용하는 기술이다. 여기서는 optane의 random access특징만을 사용하고 휘발성 메모리로 사용하게 된다. 다른 한 가지 모드는 APP DIRECT mode로 기존 메모리는 메모리로 사용하고 Optane메모리를 storage처럼 사용하는 방식이다. 이 경우에는 해당 Optane메모리를 관리하기 위한 NVM filesystem이 필요로 하게 된다.
2. APP DIRECT Mode로 설정하기
어떤 실험을 돌리느냐에 따라서 어떤 모드를 사용할지 정해질 것이다. NVM filesystem을 주로 공부했던 나는 APP DIRECT Mode로 실험을 진행했어야 되었다. 따라서 이 글은 APP DIRECT MODE로 설정하는 과정을 간단하게 정리해보았다. 인터넷에서는 ipmctl 명령어를 통해서 server내부에서 조정하는 방법도 제공하고 UEFI system setting 시에 조정하는 방법도 제공한다. 나는 ipmctl과정에서 계속 DIMM을 인식 못 하는 오류가 발생하여(custom kernel을 사용해서 그런 것 같다) UEFI system setting화면에서 설정해보았다.
해당 예시는, IPMI를 통해서 접속하여 IPMI기준으로 하였으며 직접 하는 것과 처음 도입만 다르고 나머지는 똑같다.
- BOOT시 [DEL] 키로 UEFI Setup 화면으로 접속하기
- "Advanced" → "Intel(R) Optane (TM) DC Persistent Memory Configuration"
- Region 설정해주기
- APP DIRECT MODE로 설정해준다.
- Memory Mode에 퍼센트를 늘리게 되면, Hybrid가 됨으로 이를 0%로 세팅한다.
- Interleaving을 선택해준다.
- 여러개의 Optance DIMM이 있다면, 이를 Interleaving 해줄지 설정할 수 있다. default가 interleaving이다.
- 이후 'create goal config'을 누르면, region이 설정된다.
- namespace를 설정해준다. 하지만 UEFI Setup에서는 안될 수 있다.
- namespace create에 들어가서 mode를 확인한다.
- NVM filesystem은 DAX(Direct Access)를 지원해야 성능이 제대로 나오는 경우가 대부분이다. 하지만 mode를 raw(None)또는 Sector로 하게 된다면 DAX를 지원할 수 없다. 따라서 namespace는 여기서 설정해주지 말고, boot이후에 설정해준다.
- F4를 눌러서 "SAVE&EXIT"을 한다.
- ndctl list --regions
- UEFI Setup 화면에서 생성했던 region들을 확인할 수 있다. ndctl create-namespace --mode fsdax -r [region name]
- fsdax 모드로 region당 namespace를 하나씩 생성한다.
- ndctl list --human
- 위의 명령어로 namespace생성을 확인할 수 있다.
- 이제 생성된 /dev/pmem0 와 /dev/pmem1로 mount를 하여 사용할 수 있다.
3. 참고 자료 + 추가 공부 자료
- An Empirical Guide to the Behavior and Use of Scalable Persisten Memory - FAST' 20
- Intel Optane DC Persistent Memory - quick start quide
'리눅스' 카테고리의 다른 글
socks5를 사용하여 IDRAC 접속하기 (0) | 2022.01.18 |
---|---|
Linux 사용자(user) 추가하기 (0) | 2021.11.26 |
IPMI ssh로 접속하기 (0) | 2021.09.23 |
Timer Management (0) | 2021.06.08 |
Kernel Memory Allocation (0) | 2021.06.08 |