ในบริบทนี้ (อุปกรณ์สำหรับผู้บริโภคที่มีงบประมาณ จำกัด ) Optane ค่อนข้างชัดเจนเพียงอ้างถึง SSD ขนาดเล็กที่เชื่อมต่อ NVMe โดยใช้หน่วยความจำ 3D XPoint (แทนที่จะเป็นแฟลช NAND) ทำให้มีความทนทานในการเขียนสูงมาก (ดังนั้นมันจะไม่เสื่อมสภาพหากใช้เป็นพื้นที่สว็อป)
สิ่งนี้ยังคงถูกดูดสำหรับปริมาณงานจำนวนมากเนื่องจากมันยังคงใช้หน้าเพจผิดพลาดและไมโครวินาทีจำนวนมากในการเข้าถึงเทียบกับ~ 70 นาโนวินาทีสำหรับการเข้าถึง DRAM (แคชมิส) ; มันไม่ได้แม็พหน่วยความจำโดยตรงบนบัสหน่วยความจำของ CPU นอกจากนี้ออกจากการดำเนินการสั่งซื้อ / HW prefetch / อื่น ๆหน่วยความจำที่สามารถเก็บความเท่าเทียม ~ 10 แคชในเที่ยวบินต่อหลักทางกายภาพ แต่ผิดหน้าจะ serializing ไม่มีงานที่มีประโยชน์เกิดขึ้น (ในเธรดนี้) ในขณะที่ระบบปฏิบัติการกำลังให้บริการข้อบกพร่องของหน้าเว็บดังนั้นจึงไม่มีโอกาสที่ OoO exec จะซ่อนการหน่วงข้อบกพร่องของหน้ากระดาษใด ๆ (แต่แม้กระทั่ง 70ns นั้นยาวเกินกว่าจะซ่อนตัวได้อย่างเต็มที่อย่างไรก็ตามการที่พลาดไปหลายครั้งในการบินไปยังสายต่าง ๆ ก็จะช่วยบรรเทาผลกระทบจากภาระงานบางอย่างได้)
การใช้ RAM ในปริมาณน้อยมากและขึ้นอยู่กับ SSD ที่รวดเร็วสำหรับการสลับพื้นที่ / เพจไฟล์ไม่ใช่เพียงกรณีใช้งานสำหรับ Optane ประเภทนี้เท่านั้น (และอาจไม่ใช่กรณีใช้งานที่ดี) ในฐานะที่เป็นhttps://www.tweaktown.com/articles/8119/intel-optane-memory-matters/index.htmlอธิบายมันเป็นกรณีการใช้งานหลักเป็นแคชโปร่งใสสำหรับฮาร์ดไดรฟ์แม่เหล็ก ฉันคิดว่า Intel ให้ไดรเวอร์ Windows เพื่อให้สิ่งนี้เกิดขึ้น คุณสามารถซื้อฮาร์ดไดรฟ์ SATA ที่มีที่เก็บแม่เหล็กแบบหมุนได้พร้อมแฟลชในตัวบางตัวเป็นบัฟเฟอร์ / แคชสำหรับส่วนที่เข้าถึงได้บ่อยของดิสก์ Optane HW + ไดรเวอร์สามารถทำเช่นนี้กับดิสก์ใดก็ได้
Optane NVMe มีประสิทธิภาพการอ่านแบบสุ่มที่ดีมากที่ระดับความลึกคิวต่ำ (รอให้การอ่านเสร็จก่อนที่จะเริ่มต้นอีกครั้งซึ่งน่าเสียดายที่เกิดขึ้นเมื่อโปรแกรมต้องอ่านหนึ่งบล็อกก่อนที่จะสามารถคิดได้ว่าจะทำอย่างไรต่อไป ไม่ช่วย) ดังนั้นมันควรจะดีในการเร่งเวลาเริ่มโปรแกรมและการบูต
ไม่น่าประหลาดใจโดยเฉพาะอย่างยิ่งสำหรับการเขียนไฟล์ขนาดใหญ่ที่ต่อเนื่องกัน หวังว่าซอฟต์แวร์ไดรเวอร์จะรู้วิธีเลี่ยงแคช Optane และตรงไปยังดิสก์แม่เหล็กพื้นฐานสำหรับสิ่งนั้น หน้า Optane หลักของ Intel เชื่อมโยงกับhttps://www.intel.ca/content/www/ca/en/products/memory-storage/optane-memory/optane-16gb-m-2-80mm.htmlซึ่งแสดง 16GB M ของพวกเขา .2 Optane มีการอ่านตามลำดับ 900MB / s แต่มีการเขียนตามลำดับ 145MB / s เท่านั้น รุ่น 32GB เร็วกว่าที่ 1350 MB / s อ่าน 290 MB / s การเขียน แต่นั่นไม่ใช่สิ่งที่ Optane ดีที่สุด มันเป็นลำดับและการอ่านแบบสุ่ม IOPS มีทั้ง 240k IOPS โดยมีเวลาในการอ่าน 7 .s
Intel มีสิ่งที่เรียกว่า IMDT (เทคโนโลยีหน่วยความจำของ Intel)ซึ่งเป็นไฮเปอร์ไวเซอร์ที่สร้างภาพลวงตาของพื้นที่ที่อยู่หน่วยความจำหลักที่ใหญ่กว่าสำหรับระบบปฏิบัติการ บางหน้าจะถูกแมปกับหน่วยความจำหลัก DRAM จริงในขณะที่หน้าอื่นจะถูกแมปกับหน่วยความจำ SSD เมื่อมีการเข้าถึงหน้าเว็บที่แมปกับ SSD จะเกิดข้อผิดพลาดหน้าขึ้นโดย IMDT ซึ่งจะทำให้หน้านั้นถูกนำจาก SSD ไปยังหน่วยความจำหลัก (อาจทำให้หน้ากระดาษจากหน่วยความจำไปยัง SSD) IMDT จะพยายามดึงหน้าเว็บเข้าสู่ DRAM เพื่อลดแบนด์วิดท์และเวลาแฝงของ SSD ให้ต่ำลง นอกจากนี้ยังพยายามเก็บเพจที่ร้อนแรงที่สุดไว้ในหน่วยความจำหลักเพื่อให้สามารถเข้าถึงได้โดยมีการลงโทษน้อยที่สุด (การลงโทษเพียงอย่างเดียวอาจมาจากชั้นการเพจเพิ่มเติมเนื่องจากการจำลองเสมือน) ระบบปฏิบัติการส่วนใหญ่จะหลงลืมการทำแผนที่นี้ ระบบหน่วยความจำประเภทนี้เรียกว่าหน่วยความจำที่กำหนดโดยซอฟต์แวร์ (SDM) ที่ดีบทความเรื่อง "การประเมินประสิทธิภาพของเทคโนโลยีหน่วยความจำ Intel ไดรฟ์สำหรับแอปพลิเคชันวิทยาศาสตร์" ให้การประเมินประสิทธิภาพของ IMDT และเปรียบเทียบกับระบบที่มีหน่วยความจำหลัก DRAM จำนวนเท่ากัน ฉันไม่ได้อ่านบทความอย่างละเอียด แต่ปรากฏว่า IMDT สามารถย้ายหน้าระหว่างโหนด NUMA เพื่อให้เข้าใกล้โหนดที่พวกเขาต้องการมากที่สุด
ที่กล่าวว่า IMDT รองรับเฉพาะโปรเซสเซอร์ของ Intel ที่อยู่ในเกรดเซิร์ฟเวอร์ มีวัตถุประสงค์เพื่อสร้างเซิร์ฟเวอร์ที่ประหยัดพลังงานและประหยัดพลังงานโดยมีผลกระทบเล็กน้อยต่อประสิทธิภาพ
http://www.lmdb.tech/bench/optanessd/imdt.htmlมีการวัดประสิทธิภาพด้วย Optane DC P4800X SSD (รุ่นศูนย์ข้อมูลระดับสูงไม่ใช่ของผู้บริโภคความสามารถในการเขียนที่สูงขึ้นอย่างมาก)
ฉันไม่ได้มองเรื่องนี้ดังนั้นฉันไม่แน่ใจว่ามันเกี่ยวข้องกับทุกเรื่องเกี่ยวกับวิธีที่ Windows สามารถใช้ประโยชน์จาก Optane SSD สำหรับผู้บริโภคได้หรือไม่
ชื่อแบรนด์ Optane (ค่อนข้างสับสน) ยังใช้สำหรับสิ่งแปลกใหม่ที่น่าสนใจมากกว่า:
3D XPoint DIMM แบบไม่ลบเลือนหรือที่รู้จักกันในนาม "Optane DC Persistent Memory" https://www.anandtech.com/show/12828/intel-launches-optane-dimms-up-to-512gb-apache-pass-is-here Apache Pass เป็นชื่อของ Optane DC PM รุ่นแรก อ้างถึงสิ่งนี้สำหรับข้อมูลเกี่ยวกับลูกหลานในอนาคต
Intel มีหน้าการตลาดส่วนใหญ่เป็นของตนเองที่นี่พร้อมลิงก์ไปยังรายละเอียดด้านเทคนิค "DC" ย่อมาจาก Data-Centric
นี่คือที่จัดเก็บข้อมูลแบบไม่ลบเลือนที่เสียบเข้ากับช่องเสียบ DDR4 DIMM และปรากฏเป็นหน่วยความจำกายภาพจริง เห็นได้ชัดว่ามันรองรับอย่างเต็มที่โดย Xeons รุ่นต่อไปเท่านั้น (ไม่ใช่ Skylake-X Skylake Scalable Processor series ปัจจุบัน)
มี NVDIMM ประเภทอื่นเช่น DRAM ปกติที่ใช้แบตเตอรีสำรอง (มีทางเลือกพร้อมแฟลชเพื่อถ่ายโอนข้อมูลไปยังเพื่อปิดไฟในระยะยาวดังนั้นพวกเขาต้องการเพียง supercapacitor แทนที่จะเป็นแบตเตอรี่เคมี) https://en.wikipedia.org/wiki/NVDIMMมีรายละเอียดบางอย่าง
https://www.electronicdesign.com/industrial-automation/why-are-nvdimms-suddenly-hotมีข้อมูลทั่วไปเพิ่มเติมเกี่ยวกับ NVDIMM (และมาตรฐาน JEDEC ของพวกเขาและวิธีที่แอปพลิเคชัน OS + สามารถร่วมมือเพื่อให้แอปพลิเคชันพูดคุยโดยตรงกับ พื้นที่ของหน่วยความจำที่ถูกแมปหน่วยความจำ NV ประเด็นหลักคือพวกเขาเบลอเส้นแบ่งระหว่าง RAM และที่เก็บข้อมูล (ในแง่ของสถาปัตยกรรมคอมพิวเตอร์ไม่ใช่ในแง่ของการตลาดอย่างเข้มงวดของโฆษณาแล็ปท็อปที่หลอกลวงที่คุณเห็นซึ่งอ้างว่ามีความจุ 4+ 16GB)
ระบบปฏิบัติการสามารถปล่อยให้กระบวนการแมปหน่วยความจำกายภาพไม่ลบเลือนนี้ลงในพื้นที่ที่อยู่เสมือนของพวกเขาเองเพื่อให้พวกเขาสามารถเข้าถึงที่เก็บข้อมูลโดยตรงกับพื้นที่ที่ผู้ใช้โหลดและจัดเก็บไปยังที่อยู่หน่วยความจำโดยไม่มีการเรียกระบบใด ๆ ดำเนินการสั่งซื้อในขณะที่มีความโดดเด่นอ่าน (มีห้องสมุดซอฟต์แวร์เพื่อให้นักพัฒนาใช้ประโยชน์จากสิ่งนี้รวมถึงความสามารถflush()
และตรวจสอบให้แน่ใจว่าข้อมูลถูกเขียนลงในหน่วยความจำถาวรอย่างแท้จริง
การแมปนี้สามารถแคชเขียนกลับได้ดังนั้นการใช้ประโยชน์ของข้อมูลอย่างเต็มที่จากแคช L3 / L2 / L1d จนกว่าจะถึงเวลาเขียนข้อมูลกลับ (ถ้าแก้ไข) สำหรับข้อมูลที่อ่านเป็นส่วนใหญ่Optane ชนิดนี้อาจเรียกได้ว่าแรม 4 + 16GB (แน่นอนว่าปัจจุบันศูนย์ข้อมูลกรณีการใช้งานสำหรับ Optane NVDIMMs จะใช้มาก DIMMs ขนาดใหญ่เช่น 512GB.)
(มันไม่เหมือนmmap
ไฟล์ ed บนดิสก์ปกติที่คุณเพิ่งแมปแคชเพจของระบบปฏิบัติการสำหรับไฟล์และระบบปฏิบัติการจะทำ I / O ในพื้นหลังเพื่อซิงค์หน้า RAM สกปรกกับอุปกรณ์เก็บข้อมูล)
ตรวจสอบให้แน่ใจว่าข้อมูลบางอย่างได้มาถึงที่จัดเก็บข้อมูล NV จริงก่อนอื่น ด้วยสายระบบนี้เป็นที่ที่คุณต้องการใช้ POSIX หรือfsync
fdatasync
แต่เนื่องจากแอปพลิเคชันมีหน่วยความจำที่แมปจริงนี่คือที่มาของฟังก์ชั่นห้องสมุดเข้ามา
ใน x86 asm เรากำลังเข้าถึงหน่วยเก็บข้อมูลที่มีการโหลด / ร้านค้าปกติ แต่เราใส่ใจว่าเมื่อข้อมูลถูกเขียนกลับไปยัง NVDIMM จริง ๆ (ซึ่งปลอดภัยจากการสูญเสียพลังงาน) ไม่ใช่เมื่อมันปรากฏให้เห็นกับแกนอื่นหรือแคช DMA ที่สอดคล้องกัน (ทันทีที่คอมมิตจากบัฟเฟอร์การจัดเก็บไปยังแคช L1d) ดังนั้นกฎการสั่งซื้อหน่วยความจำปกติของ x86 จะไม่ดูแลทุกสิ่งอย่างสมบูรณ์ เราต้องการคำแนะนำพิเศษเพื่อล้างข้อมูลแคชที่เลือกจากแคชของ CPU (สำหรับใช้โดยไลบรารีหน่วยเก็บข้อมูล NV)
clflush
คำแนะนำ asm มีชีวิตอยู่ในขณะที่ แต่การจัดเก็บ NV เป็นเหตุผลสำคัญว่าทำไม Intel เพิ่มclflushopt
ใน Skylake (แม้ว่ามันจะมีการใช้งานในกรณีอื่น ๆ ด้วย) และจะเพิ่มclwb
ในทะเลสาบน้ำแข็ง (เขียนกลับโดยไม่ต้องขับไล่)
Dan Luu เขียนบทความที่น่าสนใจเมื่อไม่นานมานี้เกี่ยวกับประโยชน์ของการนำระบบปฏิบัติการออกไปให้พ้นจากการเข้าถึงพื้นที่เก็บข้อมูลโดยมีรายละเอียดแผนของ Intel ณ จุดนั้นสำหรับclflush
/ clwb
และความหมายของหน่วยความจำ มันถูกเขียนขึ้นในขณะที่ Intel ยังวางแผนที่จะต้องการคำสั่งที่เรียกว่าpcommit
(persistent commit) ซึ่งเป็นส่วนหนึ่งของกระบวนการนี้ แต่ภายหลัง Intel ตัดสินใจที่จะลบคำสั่งนั้น: การยกเลิกการสอน PCOMMITมีข้อมูลที่น่าสนใจเกี่ยวกับสาเหตุและสิ่งต่างๆ .
(นี่เป็นวิธีปิดหัวข้อในรายละเอียดระดับต่ำของที่จัดเก็บข้อมูล x86 NV ฉันควรหาที่อื่นที่จะโพสต์ส่วนใหญ่ของส่วนนี้ แต่ฉันคิดว่ามัน)
นอกจากนี้ยังมีOptane DC SSDsเป็นการ์ด PCIe x4 หรือ 2.5 "รุ่น 750GB ทำได้สูงสุด 2,500 MB / s การอ่านตามลำดับ, การเขียนตามลำดับ 2200 MB / s และการอ่านหรือเขียนแบบสุ่ม 550000 IOPS อ่าน latency น้อยกว่าเล็กน้อย M.2 NVMe ที่ 10 .s
นี่คือสิ่งที่คุณต้องการหากคุณใช้เซิร์ฟเวอร์ฐานข้อมูลหรือบางสิ่ง (ถ้าคุณไม่สามารถใช้ NVDIMM) ได้ แต่มันจะไม่ทำให้แล็ปท็อปขนาด 4GB ของคุณเร็วขึ้นมาก (สำหรับกรณีการใช้งานทั่วไป) กว่า 16GB Optane ที่ขาย การสลับพื้นที่การ thrashing มักจะสร้างการอ่านจำนวนมากเนื่องจากเพจต้องถูกเพจและเข้าถึงก่อนโค้ดที่เพจที่มีข้อบกพร่องสามารถดำเนินการต่อในสิ่งที่มันจะทำต่อไป หากหน่วยความจำแน่นจริง ๆ ระบบปฏิบัติการไม่มีหน้าว่างในการดึงข้อมูลล่วงหน้าอย่างจริงจังดังนั้นคุณคาดหวังความลึกคิวต่ำซึ่ง Optane ของผู้บริโภคได้รับการปรับให้เหมาะสม (เวลาแฝงต่ำ)
Intel Optane SSD นำเสนอการลดต้นทุนประสิทธิภาพการทำงานที่ดี SSD นั้นไม่กินไฟเมื่อไม่ได้ใช้งาน ในทางตรงกันข้ามการใช้พลังงานแบบคงที่ (ส่วนใหญ่เกิดจากการรีเฟรช) ในชิป DRAM นั้นมีความสำคัญ ดังนั้นปริมาณของ DRAM ในระบบจึงควรตรงกับชุดการทำงานของปริมาณงานทั่วไป ระบบที่คุณซื้อถูกออกแบบมาสำหรับปริมาณงานทั่วไปที่ต้องการหน่วยความจำหลักประมาณ 4GB หรือน้อยกว่า ในกรณีนี้หากระบบมีหน่วยความจำหลัก 8GB แต่ก็ไม่จำเป็นที่จะต้องกินไฟมากกว่าซึ่งจะทำให้อายุการใช้งานของแบตเตอรี่ลดลง อย่างไรก็ตาม SSD Optane ช่วยให้คุณสามารถเรียกใช้เวิร์กโหลดเป็นครั้งคราวซึ่งต้องการหน่วยความจำหลักเพิ่มขึ้นเล็กน้อยโดยมีประสิทธิภาพการทำงานลดลงเล็กน้อย (เทียบกับ SSD หรือ HDD ที่ใช้ NAND)
หน่วยความจำ DRAM ปัจจุบันมีราคาประมาณ 4.5 เหรียญสหรัฐต่อ 1GB ในขณะที่ Intel Optane SSD ราคาประมาณ 2 เหรียญสหรัฐต่อ 1GB ดังนั้น 16GB Optane SSD จึงแพงกว่าโมดูล 4GB DRAM แต่ราคาถูกกว่า 8GB DRAM โมดูล ดังนั้นถ้าคุณนำ Optane SSD ออกและเพิ่มหน่วยความจำ 4GB ให้มากขึ้นคุณจะได้รับระบบที่ถูกกว่าซึ่งเร็วกว่าโดยเฉลี่ยสำหรับปริมาณงานทั่วไปที่มีชุดการทำงานขนาดใหญ่กว่า 4GB แต่การจัดการข้อผิดพลาดของฮาร์ดเพจการดึงหน้าล่วงหน้าและการสลับหน้าจะช้าลงจาก HDD นั่นเป็นสาเหตุที่ระบบ 8GB อาจช้ากว่าระบบ 4GB DRAM + 16GB Optane SSD หากปริมาณงานทั่วไปต้องการหน่วยความจำน้อยกว่า (หรือประมาณ) 4GB
แล็ปท็อปของคุณยอดเยี่ยมถ้าคุณเพิ่งใช้เพื่อท่องอินเทอร์เน็ตหรือแก้ไขข้อความ Optane SSD ช่วยในการบูทเวลาให้การเข้าถึงไฟล์ที่เข้าถึงบ่อยที่สุดอย่างรวดเร็วและสามารถใช้เป็นที่เก็บข้อมูลสำรองเพิ่มเติมได้ ดังนั้นแม้ว่าคุณจะจ่าย 16GB Optane SSD มากกว่า DRAM 4GB แต่คุณจะได้รับประโยชน์ที่แน่นอนและไม่เหมือนใคร แต่แอพพลิเคชั่นอื่น ๆ ที่คุณพูดถึงเช่น RStudio นั้นต้องการหน่วยความจำ 4GB ต่ำสุด หากโดยทั่วไปแล้วคุณจะใช้เบราว์เซอร์และ RStudio ในเวลาเดียวกัน (และอาจเป็นแอพอื่น ๆ ) คุณควรจะได้รับระบบที่มีหน่วยความจำอย่างน้อย 8GB Optane SSD ยังดีอยู่ดี