คำถามที่เกิดซ้ำๆ เกิดขึ้นจากผู้อ่านตั้งแต่การเปิดตัวโปรเซสเซอร์ Intel 13th Gen Core”Raptor Lake”เมื่อเร็ว ๆ นี้คือการที่ยังคงคุ้มค่าที่จะใช้งานกับเคอร์เนล Linux แบบ”mitigations=off”ตัวเลือกในการปิดใช้งานการลดความปลอดภัยของ CPU ที่ควบคุมด้วยซอฟต์แวร์เพื่อเพิ่มประสิทธิภาพ สำหรับระบบการผลิตที่ไม่แนะนำเนื่องจากความเสี่ยงด้านความปลอดภัย แต่สำหรับผู้ที่สงสัย ต่อไปนี้คือภาพรวมคร่าวๆ ของสถานการณ์การลดผลกระทบใน Raptor Lake ด้วย Core i9 13900K รุ่นเรือธง
Raptor Lake มีการบรรเทาฮาร์ดแวร์ (หรือมีภูมิคุ้มกัน) ในการเปิดเผยความปลอดภัยของ CPU ส่วนใหญ่ ทำในช่วงไม่กี่ปีที่ผ่านมา แต่เมื่อพูดถึงการบรรเทาที่เกี่ยวข้องกับซอฟต์แวร์ซึ่งยังคงเกี่ยวข้องกับ CPU เดสก์ท็อป Intel รุ่นล่าสุดนี้ จะมี Speculative Store Bypass Disable (SSBD) ผ่านอินเทอร์เฟซ prctl() สำหรับ Spectre V4 (Speculative Store Bypass), อุปสรรค usercopy/swapgs และตัวชี้ผู้ใช้ การฆ่าเชื้อสำหรับ Spectre V1 และสำหรับ Spectre V2 มีการปรับปรุง IBRS (Indirect Branch Restricted Speculation)/บัฟเฟอร์สแต็คส่งคืนแบบมีเงื่อนไข (RSB) ที่เติมสำหรับ Indirect Branch Predictor Barrier (IBPB)/การลดลำดับซอฟต์แวร์สำหรับ EIBRS Post-barrier Return Stack ที่เพิ่งเปิดเผย บัฟเฟอร์ (PBRSB). สิ่งเหล่านี้คือการบรรเทาผลกระทบที่ยังคงใช้งานอยู่สำหรับซีพียู Raptor Lake บนเคอร์เนลของ Linux และอย่างน้อยก็ไม่ซับซ้อนเท่าภูมิทัศน์การลดผลกระทบเหมือนเมื่อหลายปีก่อน
สำหรับผู้ที่อยากรู้เกี่ยวกับผลกระทบที่ควบคุมโดยซอฟต์แวร์จากการบรรเทาผลกระทบ ฉันได้รันเบนช์มาร์กบน Linux 6.1 Git ในลักษณะที่พร้อมใช้งานทันที (โดยมีการลดค่าดีฟอลต์ที่ระบุไว้ด้านบน) จากนั้นทำการทดสอบซ้ำด้วยการตั้งค่าพารามิเตอร์”mitigations=off”สำหรับตัวเลือกเคอร์เนล ระบบ Intel Core i9 13900K เดียวกันนี้ถูกนำมาใช้สำหรับการวัดประสิทธิภาพเดสก์ท็อป Intel Linux ใหม่ทั้งหมด
สำหรับภาระงานมากมายในทุกวันนี้ ซึ่งก่อนหน้านี้ได้รับประโยชน์จากการปิดใช้งานการลดความปลอดภัยของซอฟต์แวร์ ไม่มีความแตกต่างเพียงเล็กน้อยกับ Raptor Lake.
การบรรเทา=ปิดประโยชน์ของโปรเซสเซอร์ Intel รุ่นล่าสุดยังคงลดลงอย่างมากด้วยการปรับปรุงความปลอดภัยของฮาร์ดแวร์ที่เพิ่มขึ้น
สำหรับปริมาณงานส่วนใหญ่ คุณจะไม่พบความแตกต่างที่วัดได้เมื่อใช้ Raptor Lake mitigations=off mode
Apache Spark เป็นหนึ่งในพื้นที่ที่มีความแตกต่างสำหรับการกำหนดค่าการทดสอบบางอย่าง
แม้ในปริมาณงานของฐานข้อมูลก็มีแนวโน้มที่จะแตกต่างกันเล็กน้อยโดยรวม
เกณฑ์มาตรฐานสังเคราะห์ของ Stress-NG ที่เน้นประสิทธิภาพการสลับบริบทแสดงค่าใช้จ่ายที่นั่น แต่ไม่ได้สัมพันธ์โดยตรงกับปริมาณงานในโลกแห่งความเป็นจริงใดๆ
ในการกำหนดค่า Apache HBase บางรายการมีเล็กน้อย ความได้เปรียบ s ที่จะรันด้วย mitigations=off บน Raptor Lake แต่มันคุ้มกับความเสี่ยงด้านความปลอดภัยหรือไม่
ในท้ายที่สุดจากการทดสอบ 198 ครั้งที่รันด้วยการเปรียบเทียบการเปิด/ปิด mitigation สำหรับ Core i9 13900K มีเพียง การทดสอบจำนวนหนึ่งที่มีความแตกต่างที่วัดได้ไม่ว่าจะทางใดทางหนึ่ง และบางการทดสอบอาจมีสัญญาณรบกวนด้วย
ในการทดสอบไม่กี่ครั้ง เช่น Apache HBase และ Apache Spark มักจะได้รับประโยชน์ที่วัดได้จากการเรียกใช้ Intel Raptor Lake ในโหมด mitigations=off ของ Linux หรือการทดสอบการสลับบริบทสังเคราะห์… แต่ส่วนใหญ่แล้ว การบรรเทาที่เกี่ยวข้องกับซอฟต์แวร์ซึ่งยังคงเกี่ยวข้องกับ Raptor Lake นั้นสามารถเปิดทิ้งไว้ได้โดยไม่มีความแตกต่างอย่างมีนัยสำคัญต่อประสิทธิภาพ
ใช้ค่าเฉลี่ยเรขาคณิตของทั้งหมด การทดสอบ 198 ครั้งแสดงให้เห็นว่าประสิทธิภาพโดยรวมไม่เปลี่ยนแปลง ผู้ที่ต้องการดูเกณฑ์มาตรฐานแต่ละรายการทั้งหมดสามารถทำได้ผ่านหน้าผลลัพธ์นี้ โดยรวมแล้วมันก็น่าเบื่อ–และนั่นเป็นสิ่งที่ดี