ในขณะที่บางส่วน ผู้ที่ชื่นชอบลีนุกซ์แนะนำให้ผู้ใช้บูตระบบด้วยพารามิเตอร์เคอร์เนล”mitigations=off”สำหรับการปิดใช้งานรันไทม์ของการบรรเทาความปลอดภัยของ CPU ที่เกี่ยวข้องต่างๆ สำหรับ Spectre, Meltdown, L1TF, TAA, Retbleed และผองเพื่อน ด้วย AMD Ryzen 7000″Zen ใหม่ โปรเซสเซอร์ 4″ในขณะที่ยังคงต้องการการบรรเทาปัญหาซอฟต์แวร์อยู่บ้าง ส่วนใหญ่จะเร็วกว่าอย่างน่าประหลาดใจ โดยส่วนใหญ่ปล่อยให้การบรรเทาที่เกี่ยวข้องเปิดใช้งานอยู่
ด้วยโปรเซสเซอร์ AMD Zen 4 และการเปิดเผยข้อมูลด้านความปลอดภัยสาธารณะในปัจจุบัน Linux 6.0 บนซีพียู Ryzen 7000 series มีการปิดใช้งาน Speculative Store Bypass ผ่าน prctl สำหรับการลด SSBD/Spectre V4 และการลด Spectre V1 ของ usercopy/SWAPGS อุปสรรคและ __user ฆ่าเชื้อตัวชี้ จากนั้นสำหรับ Spectre V2 จะมี Retpolines, Indirect Branch Predictor Barriers แบบมีเงื่อนไข (IBPB), เฟิร์มแวร์ IBRS, Single Threaded Indirect Branch Predictors (STIBP) แบบเปิดตลอดเวลา และ return stack buffer (RSB) สิ่งเหล่านี้เป็นเพียงการบรรเทาความปลอดภัยของซอฟต์แวร์ที่เกี่ยวข้องกับ Zen 4 ในเวลานี้ โดยที่ CPU ใหม่จะไม่เสี่ยงต่อช่องโหว่ที่รู้จักอื่นๆ ที่ส่งผลกระทบต่อ CPU ที่แตกต่างกัน
สถานะการลดผลกระทบของ Zen 4 บน Linux 6.0
ด้วย Zen 4 คุณยังคงสามารถบูตเคอร์เนลได้ด้วยการบรรเทา=ปิด เพื่อปิดใช้งานการบรรเทา SSB, Spectre V1 และ Spectre V2 ที่ใช้ขณะออกจาก ระบบอยู่ในสถานะ”เสี่ยง”ในขณะที่หลายเส้นทางสู่การบรรเทา=ปิดเพื่อหลีกเลี่ยงการลงโทษด้านประสิทธิภาพที่มาจากการบรรเทาผลกระทบที่แตกต่างกัน ในกรณีของ AMD Zen 4 บน Ryzen 9 7950X มันไม่มีประโยชน์จริง ๆ
ที่น่าแปลกใจมากคือ สถานะเริ่มต้น/ออกจากกล่องพร้อมการควบคุมการบรรเทาปัญหานั้นโดยทั่วไปจะเร็วกว่าการเริ่มระบบด้วยการบรรเทาปัญหา=ปิด ต่อไปนี้คือเกณฑ์มาตรฐานที่มีความแตกต่างที่วัดได้ไม่ว่าจะด้วยวิธีใด:
การทำงานด้วยการบรรเทาปัญหา=ปิดเร็วขึ้นสำหรับเกณฑ์มาตรฐานสังเคราะห์บางอย่าง เช่น Stress-NG, OSBench, Sockperf และอื่นๆ แต่การรักษาให้อยู่ในสถานะการบรรเทาที่เป็นค่าเริ่มต้นนั้นนำไปสู่ผลประโยชน์ที่เห็นได้ชัดเจนสำหรับการวัดประสิทธิภาพเว็บเบราว์เซอร์, Stargate DAW, ปริมาณงาน OpenJDK ต่างๆ และปริมาณงานอื่นๆ ที่มักจะได้รับผลกระทบด้านประสิทธิภาพจากการบรรเทาความปลอดภัยที่แตกต่างกันในช่วง 4 ปีที่ผ่านมา
การรักษาให้อยู่ในสถานะการลดขนาดเริ่มต้นนั้นเร็วขึ้นสำหรับการเปรียบเทียบส่วนใหญ่ที่ทดสอบ
หรือสำหรับช่วงกว้างของการวัดประสิทธิภาพที่แตกต่างกัน 190 แบบ การรักษาตามค่าเริ่มต้นจะลดความเร็วโดยรวมได้ประมาณ 3% เมื่อเทียบกับการรันด้วย mitigations=off โดยทั่วไปแล้วจะตรงกันข้ามกับสิ่งที่เรามักเห็นกับโปรเซสเซอร์รุ่นเก่าอื่น ๆ เหตุใดการเปิดใช้การบรรเทาปัญหาตามค่าเริ่มต้นจึงทำให้ Ryzen 9 7950X เร็วขึ้นเป็นคำถามที่ดี (ปกติแล้วจะตรงกันข้าม!) แต่อย่างใดอย่างหนึ่งที่ฉันไม่ได้ใส่ใจที่จะขุดลึกลงไป แต่ด้วยการทำโปรไฟล์ระบบเนื่องจากข้อ จำกัด ด้านเวลาและท้ายที่สุดก็ไม่เป็นเช่นนั้น สำคัญเกินไป เนื่องจากสำหรับระบบการผลิต คุณควรปฏิบัติตามคำแนะนำด้านความปลอดภัยที่เป็นค่าเริ่มต้น
ผู้ที่ต้องการเจาะลึกการวัดประสิทธิภาพทั้งหมด 190 รายการสามารถดูข้อมูลทั้งหมดของฉันได้ที่นี่ เรื่องยาวโดยย่อ ดูเหมือนว่า AMD Zen 4 จะไม่คุ้มกับการบูทด้วย”mitigations=off”แต่อันที่จริงแล้วอาจส่งผลเสียต่อปริมาณงานในโลกแห่งความเป็นจริง