Hewlett Packard Enterprise HPE

HPE Persistent Memory ile Tabuları Yıkın

Sunucu ve Veri Depolama alanında teknoloji sürekli değişiyor ve yıllardan beri bizler de bu değişiklikleri yakalamaya çalışıyoruz. 2002 yılına kadar x86 mimarisinde çok çekirdekli sunucu görmemişken günümüzde soket başına 64 çekirdekleri konuşuyoruz. Zamanında GB “Gigabyte” disk alanı lüks iken TB “Terabyte” geçici bellekleri satıyoruz.

Yıllardır CPU-RAM-Disk-PCIe haberleşmesini Kuzey Köprüsü, Güney köprüsü, seri haberleşmeden paralele, paralelden seri haberleşmeye geçiriyoruz diye anlatıp tam da stabil hale geldiğini düşünürken aralarında Hewlett Packard Enterprise’ ın da bulunduğu 12 üye yepyeni bir PCIe iletişim mimarisinin temellerini attı. Gen-Z konsorsiyum adını verdiğimiz bu topluluğun üye sayısı 2019 itibari ile 60’ın üzerine çıktı. İlerleyen zamanlarda CPU ya bağlı RAM değil, RAM lere bağlı CPU lar görmeye başlayacağız. İşte bu yolculuğun ilk günlerinde RAM hızları, RAM kapasiteleri ciddi önem arz etmeye başladı.

İsmim Türker Ata 😊 15 yıllık Profesyonel iş hayatımda her zaman teknolojinin içerisinde yer almaya çalıştım, son 12 yıldır HPE “Hewlett Packard Enterprise” eğitmenliğini ve teknoloji danışmanlığını yapmaya çalışıyorum. Bu makalemde sizlere Intel® Optane™ persistent memory for HPE “Persistent Memory” ismini verdiğimiz teknolojiyi açıklamaya, Intel® Optane™ persistent memory for HPE ile sunucu konfigürasyonunu ve bu sunucudaki performans testlerini aktarmaya çalışacağım. Makalemi 3 bölüme ayırdım.

  1. Intel® Optane™ persistent memory teknolojisi nedir?
  2. Intel® Optane™ persistent memory takılma kuralları ve sunucu konfigürasyonu
  3. Intel® Optane™ persistent memory testleri

Sunucu veri katmanlarını hiyerarşik olarak hızlıdan yavaşa göre göstermek istesek işlemci cache katmanından mekanik disklere doğru bir piramit çizmiş oluruz. Haberleşme olarak incelediğimizde işlemci, ihtiyaç duyduğu veriyi kendi L1-L2-L3 katmanlarında arar; bu veriyi bulamadıkça en alta kadar iner. Bu piramidin en hızlı – pahalı- küçük kapasiteli olanları en yukarıda yer alır.

İşte tam da bu noktada olası en yüksek erişim hızına ve kapasitesine ihtiyaç duyduğumuz noktada Persistent Memory karşımıza çıkıyor. Persistent Memory, RAM slotlarına takılan özel DIMM lerin OS katmanına kalıcı disk olarak göründüğü, sunucu elektrik problemi yaşasa bile RAM lerde olan veri kaybını yaşamadığı yeni veri depolama teknolojisidir. Detaylarına daha sonra değineceğim fakat kabaca RAM slotlarına takılan ve RAM erişim hızında disk teknolojisi demektir.

Bu noktada olası kafa karışıklığını gidermeye çalışayım. Bu teknoloji Intel’e ait bir teknolojidir ve ismi “Intel® Optane™ persistent memory ” dir. HPE bu ürüne kendi sunucularında çalışabilecek haliyle güvenlik, performans, dayanıklılık özelliklerini katarak ismini “Intel® Optane™ persistent memory for HPE ” yapıp kendi ürün portföyünde kullanmıştır. Makalemin bundan sonraki kısımlarında Intel® Optane™ persistent memory for HPE  halini kullanacağım.

En alt 2 katmandan başlayacak olursak; diskler çeşitli performans ihtiyaçlarına göre çözüm sunmaktadır. Mesela bir kamera ya da yedekleme verisinde kapasite-fiyat oranına göre en makul disk tipini seçeriz. Günümüzde LFF disk tipinde 14TB lik disklerle bu iş yüküne çözüm buluyoruz. Düşük random io performansı verirken yüksek kapasite sağlıyoruz. Ancak yüksek performans ihtiyacı olduğunda çok detaylarına girmeyeceğim SSD ailesini tercih etmeye başlıyoruz.

İşte tam da bu noktadan sonra Intel® Optane™ persistent memory for HPE  testlerimiz başlayacak.

Sizler için en iyi PCIe NVME SSD yi HPE DL380Gen10 sunucuma taktım ve genel olarak herkesin adını duyduğu “iometer” http://www.iometer.org/doc/downloads.html ile aşağıdaki ayarlarda testler yapmaya başladım. Testleri %100 Random Read & %100 Random Write olarak 2 şekilde gerçekleştirdim.

Sonuç1: %100 Read Performansında Sunucu CPU’su %18 iken PCIe NVME SSD disk bize maksimum 507bin IOPS verebiliyor.

Sonuç2: %100 Write Performansında Sunucu CPU’su %18 iken PCIe NVME SSD bize maksimum 216bin IOPS veriyor.

Bu sonuçlar bize sahada disk başına alınabilecek en yüksek değerleri göstermektedir. Aynı testleri piyasadaki en iyi SAS disk ile de yaptım ve değerler 160bin e 120bin olarak geldi.

Standart şartlarda Intel® Optane™ persistent memory for HPE  öncesi alınabilecek en iyi değerleri yukarıda özetlemeye çalıştım.

  • Intel® Optane™ persistent memory for HPE Cascade Lake Silver 4215 & Gold & Platinum İşlemcilerle çalışan, 128GB-256GB-512GB lik 3 ayrı DIMM opsiyonu olarak kullanabileceğimiz bir teknolojidir.
  • Bu teknolojide Intel’in belirlediği CPU-RAM haberleşme kurallarına uymak zorundayız.
  • Sunucuya takılacak CPU modeline göre adresleyebilecek RAM miktarı dolayısı ile Intel® Optane™ persistent memory for HPE  miktarı değişiklik gösterecektir.
  • HPE PMEM, DRAM ile birlikte çalışmak zorundadır.
  • Her soket CPU için en az 1 adet RAM takılmalıdır ve CPU 6 kanaldır. Son jenerasyon DIMM mimarisi kullanmasına rağmen 2666MT/S hızında çalışmaktadır.

M-series 2nd Gen CPU (Örneğin;8280M)

  • 1 Soket 8280M CPU = 2048GB toplam RAM adresleyebilir, minimum 1, maksimum 12 adet RAM takılabilir.
  • 2 Soket 8280M CPU = 4096GB toplam RAM adresleyebilir, minimum 1, maksimum 12 adet RAM takılabilir.
  • 4 Soket 8280M CPU = 8192GB toplam RAM adresleyebilir, minimum 1, maksimum 12 adet RAM takılabilir.

L-series 2nd Gen CPU (Örneğin;8280L)

  • 1 Soket 8280L CPU = 4500GB toplam RAM adresleyebilir, minimum 2, maksimum 24 adet RAM takılabilir.
  • 2 Soket 8280L CPU = 9000GB toplam RAM adresleyebilir, minimum 2, maksimum 24 adet RAM takılabilir.
  • 4 Soket 8280L CPU = 18,000GB toplam RAM adresleyebilir, minimum 2, maksimum 24 adet RAM takılabilir.

Intel bu adresleme kurallarına ilave takılabilecek Intel® Optane™ persistent memory for HPE DIMM sayısını ve kapasitesini de belirledi.

1 İşlemcili sunucularda;

  • 1 adet Intel® Optane™ persistent memory for HPE  takabilmek için 6 adet RDIMM ya da LRDIMM takılmalıdır.
  • 2 adet Intel® Optane™ persistent memory for HPE  takabilmek için 4,6 ya da 8 adet RDIMM ya da LRDIMM takılmalıdır.
  • 4 adet Intel® Optane™ persistent memory for HPE  takabilmek için 6 adet RDIMM ya da LRDIMM takılmalıdır.
  • 6 adet Intel® Optane™ persistent memory for HPE  takabilmek için 6 adet RDIMM ya da LRDIMM takılmalıdır.

2 İşlemcili sunucularda;

  • 2 adet Intel® Optane™ persistent memory for HPE  takabilmek için 12 adet RDIMM ya da LRDIMM takılmalıdır.
  • 4 adet Intel® Optane™ persistent memory for HPE  takabilmek için 8,12 ya da 16 adet RDIMM ya da LRDIMM takılmalıdır.
  • 8 adet Intel® Optane™ persistent memory for HPE  takabilmek için 12 adet RDIMM ya da LRDIMM takılmalıdır.
  • 12 adet Intel® Optane™ persistent memory for HPE  takabilmek için 12 adet RDIMM ya da LRDIMM takılmalıdır.

Soket başına 6 adet 512GB lik PMEM takılabiliyorsa ki bu 3TB alanı persistent olarak kullanabiliriz anlamına geliyor.

Ben testlerimde 2 adet 128GB lik Intel® Optane™ persistent memory for HPE  kullandım.

  • Intel® Optane™ persistent memory for HPE  nin 2 çalışma modu var.

Memory Mode ve App Direct Mode. Fiziksel olarak RAM ve Intel® Optane™ persistent memory for HPE  ler taktıktan sonra sunucumuzu ilgili modelar için yapılandırmak zorundayız.

                Memory Mode (Bellek Modu): L Kodlu bir CascadeLake işlemci “8280L” soket başına 4.5TB adresleyebiliyorken hali hazırda satılan 128GB DRAM ile 12 x 128 GB Maksimum 1.5TB RAM adresleyebiliyoruz. Ancak 6 x 512GB PMEM + 4 x 128GB DRAM ile 4.5TB RAM alanını CPU yönetebiliyor.

Bellek modunda, Intel® Optane™ persistent memory for HPE kapasitesi, sistem bellek kapasitesi olarak sunulur ve DRAM önbellek olarak kullanılır. DRAM önbelleği ve Intel® Optane™ persistent memory for HPE  arasındaki veri hareketi bellek denetleyicisi tarafından yönetilir ve işletim sistemi ve uygulama için şeffaftır. Aşağıdaki resimde bunu basitleştirerek anlatmaya çalıştım. Data Intel® Optane™ persistent memory for HPE  den okunur, DRAM’ de cache lenir. Bir sonraki alımda DRAM den cevap verilir.

Sisteme eklenmiş Intel® Optane™ persistent memory for HPE’ lerin tamamını RAM olarak kullanmak istersek örnek komut;

# ipmctl create –goal MemoryMode=100

App-Direct Mode (Disk Modu): L Kodlu bir CascadeLake işlemci “8280L” soket başına 4.5TB adresleyebiliyorken hali hazırda satılan 128GB DRAM ile 12 x 128 GB Maksimum 1.5TB RAM adresleyebiliyoruz. Ancak 6 x 512GB PMEM + 4 x 128GB DRAM ile 4.5TB RAM alanını CPU yönetebiliyor.

Bellek modunda, Intel® Optane™ persistent memory for HPE’nin kapasitesi, sistem bellek kapasitesi olarak sunulur ve DRAM önbellek olarak kullanılır. DRAM önbelleği ve PMEM arasındaki veri hareketi bellek denetleyicisi tarafından yönetilir ve işletim sistemi ve uygulama için şeffaftır.

Aşağıdaki resimde Linux sistemde AppDirect ve Direct Access path lerini basitleştirerek anlatmaya çalıştım.

Sisteme eklenmiş Intel® Optane™ persistent memory for HPE’ lerin tamamını Linux bir sistemde Persistent Disk olarak kullanmak istersek örnek komut;

# ipmctl create –goal PersistentMemoryType=AppDirectNotInterleaved

# ndctl create–namespace

# mkfs –t xfs /dev/pmem0

# mkdir /mnt/pmem0

# mount –o dax /dev/pmem0 /mnt/pmem0

Günümüzde Intel® Optane™ persistent memory for HPE takılı sunucuları birden fazla iş yüklerinde farklı modlarda görmeye başlayacağız. Aşağıdaki tabloda iş yüklerine göre önerilen çalışma modunu ve faydalarını göstermeye çalıştım

Workload Use Case Mode Benefits
SAP HANA* Extension Node (access more warm data) AD 25% More Data
SAP HANA* Analytics Scale Up to Scale Out AD 100% More Data, 35%Less Cost
SAP HANA SAP Consolidation AD 100% More Capacity, 35%Less Cost
SQL Server* Multi-Tenant DBaaS on bare metal MM Up to 50% node condolidation, Up to 41% lower estimated TCO
SQL Server/ Hyper-V* Multi-Tenant DBaaS on Hyper-V MM Up to 33% more memory, 36% more VM’s per node, 26% lower HW cost per VM
Azure Stack HCI Azure Stack HCI Virtualization MM 33% more memory, 35% more VM’s per node, 26% lower HW cost per VM
Content Delivery Network Live Linear (video streaming) MM Up to 34% Less Memory cost
SAS* Viya* SAS Viya platform (Analytics) MM Up to 34% Less Memory cost
Spark SQL Spark SQL Decision Support Workload AD Up to 8x High Performance
VMWare ESXI/VSphere VMWare VMmark MM 33% more memory, 25% more VM’s per node, 19% lower HW cost per VM
VMWare vSAN VMWare Vmmark on VMWare vSAN MM 33% more memory, 33% more VM’s per node, 23% lower HW cost per VM
VMWare VDI VMWare VDI Virtualization MM 33% more memory, 22% more VM’s per node, 14% lower HW cost per VM
KVM and Redis KVM Virtualization with Redis MM 4x Memory per Server, 4x Sessions Per Server, Up to 53% cost reduction per VM
Redis Enterprise Redis Enterprise MM Up to 34% Less Memory cost
Memcached Memcached and Yahoo Cloud Server MM 33% more memory, 31% larger DB Instance
Aerospike Aerospike Enterprise Consolidation AD Up to 33% node consolidation, 33 % more data capacity per system, 24% lower cost
SaaS – Java/Web App SaaS – Java/Web Application Server MM Up to 71% node condolidation, Up to 12% lower estimated HW Cost

Denemeleri yaptığım DL380Gen10 sunucu bilgilendirmelerini, DRAM&Intel® Optane™ persistent memory for HPE takılmalarını resimsel olarak anlatmaya çalışayım.

  • RAM lerin hangi şekilde takıldığını resimden görebilirsiniz. Sistemim UEFI modunda çalışıyor ve aşağıdaki BIOS ayarlarını bu iş özelinde yapılandırmak zorundayız.
  • Memory Controller Interleaving—Auto
    • Maximum Memory Bus Frequency—Auto
    • Memory Patrol Scrubbing—Enabled
    • Memory Remap—No Action
    • Persistent Memory Address Range Scrub—Enabled.
    • Memory mode—Select X %.
    • App Direct mode—Select Y %.
    • Persistent Memory Interleaving—Enabled or Disabled
    • Security Freeze Lock—Disabled.

– Performance Setting:  

*Bandwidth Optimized (default)

*Latency Optimized

İhtiyacımıza göre Bandwidth ya da Latency özelinde seçim yapabiliriz.

– Quality of Service:

*Disabled (default)

*Profile1 (6 and 4 Intel® Optane™ persistent memory for HPE modules per socket optimized)

*Profile2 (2 Intel® Optane™ persistent memory for HPE modules per socket optimized)

*Profile3 (1 Intel® Optane™ persistent memory for HPE  modules per socket optimized)

Read operasyonlarında etkisi olmayan ama write işlemlerinde DRAM ile birlikte kullanımda fark yaratacak olan seçeneklerdir.

-FastGo Configuration: 3 opsiyon olarak gelir;

*Auto (default)

*Enabled

*Disabled

Intel® Optane™ persistent memory for HPE wirite iş yüklerine ihtiyacımız olduğu senaryoda yüksek bandwidth ihtiyacımız olduğunda Enabled yapmamız gereken özelliktir. Varsayılan olarak Auto yani bu özellik kullanım dışı gelir.

Snoopy Mode for App Direct:

*Disabled (default)

*Enabled

NUMA optimize edilmemiş uygulamalarda Intel® Optane™ persistent memory for HPE  okuma performansını iyileştirir.

  • Ben fiziksel testlerim için AppDirect Mode u tercih ettim çünkü bu mode söylediğimiz oranlarda PMEM in disk olarak çalışabilmesini sağlıyor. Memory mode cache gibi kullanılıyorken AppDirect Mode Disk alanı olarak görülecek. Bu yapılandırmayı 3 farklı kategoride yapabiliriz.
  • Embedded tools UEFI System Utilities HPE Persistent Memory Management UtilityIpmctl tool (under the UEFI Shell)
    • REST/iLO-based tools
      • HPE iLO RESTful API
      • RESTful Interface Tool
    • OS-based tools
      • Windows PowerShell cmdlets
      • Ipmctl tool (in Linux)

Ben makalemde ipmctl tool tercih ettim. Bu araç Windows üzerine kurulabilen küçük bir software olarak download edilebiliyor “https://software.intel.com/en-us/articles/configure-manage-and-profile-intel-optane-dc-persistent-memory-modules

BIOS ayarlarını yapmadan önce download ettiğimiz software üzerinden aşağıdaki komutu çalıştırdığımızda Intel® Optane™ persistent memory for HPE’ nin işlevsel olmadığını görebilirsiniz.

Yukarıda bahsi geçen ayarları doğru yapılandırdıktan sonra tekrar çalıştırdığımızda aşağıdaki gibi bir fark oluyor.

Aşağıdaki parametreler Intel® Optane™ persistent memory for HPE’ nin hangi modda çalıştırmak istediğimize ya da hangi oranlarda disk&cache kullanmak istediğimize göre seçilecek

Komut Açıklama
ipmctl create -goal Defaults to 100% interleaved persistent memory
ipmctl create -goal MemoryMode=0 Reserved=100 100% unconfigured
ipmctl create -goal MemoryMode=100 100% volatile memory
ipmctl create -goal MemoryMode=0 PersistentMemoryType=AppDirect 100% interleaved persistent memory
ipmctl create -goal MemoryMode=0 PersistentMemoryType=AppDirectNotInterleaved 100% non-interleaved persistent memory
ipmctl create -goal MemoryMode=80 PersistentMemoryType=AppDirect 80% volatile memory 20% interleaved persistent memory

Artık Disk Management da takılı olan Intel® Optane™ persistent memory for HPE’ leri disk olarak görebiliyoruz.

Standart OS’ ye ekleme ve formatlama işlemlerinden sonra testlerimizi yapabiliriz. Hangi parametrelerde yaptığımızı ve hangi sonuçlar aldığımızı hatırlayalım.

Sizler için en iyi PCIe NVME SSD yi HPE DL380Gen10 sunucuma taktım ve genel olarak herkesin adını duyduğu “iometer” http://www.iometer.org/doc/downloads.html ile aşağıdaki ayarlarda testler yapmaya başladım. Testleri %100 Random Read & %100 Random Write olarak 2 şekilde gerçekleştirdim.

Sonuç1: %100 Read Performansında Sunucu CPU’su %18 iken PCIe NVME SSD disk bize maksimum 507bin IOPS verebiliyor.

Sonuç2: %100 Write Performansında Sunucu CPU’su %18 iken PCIe NVME SSD bize maksimum 216bin IOPS veriyor.

Bu sonuçlar bize sahada disk başına alınabilecek en yüksek değerleri göstermektedir. Aynı testleri piyasadaki en iyi SAS disk ile de yaptım ve değerler 160bin e 120bin olarak geldi.

İnanılır gibi değil, sunucumun CPU’su disk alanının limitini ölçemedi. %100 CPU kullanımında 0 ms Reponse Time’da 2 Milyon IOPS sınırını gördük ve daha fazlasını CPU isteyemedi 😊

Write testlerimiz yine CPU’ya takıldı ama 0 ms Response Time ‘da 400 bin IOPS üzerine çıkabildik.

Özetle bu makalemdeIntel® Optane™ persistent memory teknolojisini, Intel® Optane™ persistent memory for HPE’ nin fiziksel konfigürasyonunu yaparak diğer disk teknolojileri ile performans bakımından kıyaslamaya çalıştım. Bir sonraki aşamada farklı kullanım senaryoları üzerinden Intel® Optane™ persistent memory for HPE  makalelerime devam edeceğim.

Türker Ata

İlgili Makaleler

Bir Yorum

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu