Skip to content

โหมดเกม AMD Ryzen Threadripper 1950X, เกณฑ์มาตรฐาน

    1645560003

    การทดสอบ Infinity Fabric & Memory Subsystem ของ Ryzen

    อินฟินิตี้ผ้าแฝงและแบนด์วิดธ์

    คานประตู Infinity Fabric 256 บิตเชื่อมโยงทรัพยากรภายในเรือเหาะเข้าด้วยกัน แม้ว่าการยึด Zeppelin ตัวที่สองเพื่อสร้าง Threadripper จะแนะนำชั้นผ้าอีกชั้นหนึ่ง การเข้าถึงแคชจะยังคงอยู่ในแต่ละ CCX แต่หน่วยความจำจำนวนมาก, I/O และการรับส่งข้อมูลแบบเธรดต่อเธรดยังคงไหลผ่านเลเยอร์ที่สองนั้น

    ผู้ที่ชื่นชอบใช้เวลาไม่นานในการค้นหาว่า Infinity Fabric ของ AMD เชื่อมโยงกับโดเมนความถี่เดียวกันกับตัวควบคุมหน่วยความจำ ดังนั้นการโอเวอร์คล็อกหน่วยความจำจึงช่วยลดเวลาแฝงและเพิ่มแบนด์วิดท์ผ่านคานขวาง ส่งผลให้ประสิทธิภาพในแอปพลิเคชันที่มีความหน่วงแฝง (เช่น เกม) ดีขึ้น

    การทดสอบประสิทธิภาพโปรเซสเซอร์ Multi-Core ของ SiSoftware Sandra ช่วยให้เราสามารถแสดงประสิทธิภาพของ Infinity Fabric เราใช้เมตริกแบบหลายเธรดพร้อมการตั้งค่า “การจับคู่ที่ดีที่สุด” (เวลาแฝงต่ำสุด) ยูทิลิตีนี้วัดเวลา ping ระหว่างเธรดเพื่อหาปริมาณเวลาแฝงของแฟบริกในทุกการกำหนดค่าที่เป็นไปได้

    การวัดเวลาแฝงภายในคอร์แสดงถึงการสื่อสารระหว่างเธรดลอจิคัลสองเธรดที่อยู่ในฟิสิคัลคอร์เดียวกัน และดังที่เราเห็น การปิดใช้งาน SMT จะกำจัดการวัดนั้นโดยสิ้นเชิง สำหรับการตั้งค่าที่เหลือ การปรับจูนจะลดเวลาในการตอบสนองลงสองสามนาโนวินาที แต่นี่เป็นผลมาจากอัตรานาฬิกาที่สูงขึ้น ดังที่เราได้เห็นในอดีต ความถี่หน่วยความจำที่เพิ่มขึ้นมีผลเพียงเล็กน้อยต่อเวลาแฝงภายในคอร์

    การวัด Intra-CCX หาปริมาณเวลาแฝงระหว่างเธรดบน CCX เดียวกันที่ไม่ได้อยู่บนคอร์เดียวกัน การเพิ่มอัตราสัญญาณนาฬิกาทำให้เวลาในการตอบสนองลดลง ~ 6ns มากขึ้น

    Cross-CCX หาปริมาณเวลาแฝงระหว่างเธรดที่อยู่ใน CCX สองอันแยกจากกัน และเราเห็นการลดลงที่คล้ายกันเนื่องจากการโอเวอร์คล็อก โดยเฉพาะอย่างยิ่ง Ryzen 7 1800X มีคุณสมบัติแฝง Cross-CCX ต่ำกว่า Threadripper แบบสต็อกและการกำหนดค่าโอเวอร์คล็อกส่วนใหญ่ อาจเป็นเพราะรูปแบบการจัดเตรียมบางอย่าง ซึ่งอาจอยู่ในอัลกอริธึมการตั้งเวลาสำหรับชั้นผ้าเพิ่มเติมของ Threadripper

    ดังที่เราเห็นแล้วว่า Threadripper CPU ที่โอเวอร์คล็อกในโหมดเกมซึ่งไม่มีแฟบริกลิงก์ไปยังไดย์อื่น ๆ มีเวลาแฝง Cross-CCX ต่ำที่สุด

    Die-To-Die วัดการสื่อสารระหว่าง Zeppelin ทั้งสองที่แยกจากกัน โหมดเกมจะปิดใช้งาน Zeppelin die ตัวที่สองอย่างมีประสิทธิภาพที่ระดับระบบปฏิบัติการ ขจัดความหน่วงแฝงของได-ทู-ไดโดยสิ้นเชิง uncore ของดายที่สองยังคงทำงานอยู่ ซึ่งจำเป็นเพื่อให้แน่ใจว่า I/O และตัวควบคุมหน่วยความจำยังคงสามารถเข้าถึงได้

    โหมดผู้สร้างต้องทนทุกข์กับเวลาแฝงที่แย่ที่สุด แต่การปรับจูนลดเวลาลงอย่างมาก ตัวเลือก SMT ทั้งสองแบบ (เปิดและปิด) ได้รับการลดลงอย่างมากจากความพยายามในการโอเวอร์คล็อกของเราเช่นกัน

    ยูทิลิตี้นี้วัดแบนด์วิดท์ของแฟบริกด้วย ซึ่งเป็นสิ่งสำคัญสำหรับประสิทธิภาพ เนื่องจากการดึงข้อมูลจากหน่วยความจำระยะไกลก็ไหลผ่านแฟบริคเช่นกัน ด้วยเหตุนี้ AMD จึงจัดสรรระบบย่อยแฟบริกและหน่วยความจำมากเกินไปเพื่อเพิ่มประสิทธิภาพสถาปัตยกรรมหน่วยความจำแบบกระจาย

    ทั้งโหมดผู้สร้างและการกำหนดค่า Local/SMT มีแบนด์วิดท์แฟบริกที่ดีที่สุด เพลิดเพลินกับการโอเวอร์คล็อกอย่างมาก Ryzen 7 1800X อยู่ตรงกลางของแผนภูมิควบคู่ไปกับโหมดเกมของ Threadripper ซึ่งสมเหตุสมผลเมื่อพิจารณาว่าทั้งคู่เป็นโปรเซสเซอร์ 8C/16T ที่มีประสิทธิภาพ การปิดใช้งาน SMT แต่ปล่อยให้ดายทั้งสองทำงานอยู่ (ปิดเฉพาะที่/SMT) ให้โปรไฟล์ที่ไม่ซ้ำซึ่งให้ประสิทธิภาพที่สูงขึ้นด้วยการเข้าถึงที่ใหญ่กว่าและประสิทธิภาพที่ต่ำกว่าด้วยการเข้าถึงที่น้อยกว่า

    แคชและหน่วยความจำแฝง

    เราทดสอบกับหน่วยความจำ DDR4-2666 ที่การตั้งค่าสต็อก และเพิ่มเป็น DDR4-3200 สำหรับการกำหนดค่าโอเวอร์คล็อกของเรา

    Translation Look Aside Buffer เป็นแคชที่ลดเวลาในการเข้าถึงโดยการจัดเก็บที่อยู่หน่วยความจำที่เข้าถึงล่าสุด เช่นเดียวกับแคชทั้งหมด TLB มีความจุที่จำกัด ดังนั้นคำขอที่อยู่ใน TLB ที่อยู่ใน TLB คือ “hits” ในขณะที่คำขอที่อยู่นอกแคชคือ “misses” แน่นอนว่า Hit นั้นเป็นที่ต้องการมากกว่า และประสิทธิภาพการดึงข้อมูลล่วงหน้าที่มั่นคงจะทำให้อัตราการโจมตีสูงขึ้น

    รูปแบบการเข้าถึงตามลำดับได้รับการดึงข้อมูลล่วงหน้าเกือบทั้งหมดใน TLB ดังนั้นการทดสอบตามลำดับจึงเป็นตัววัดประสิทธิภาพที่ดีของตัวดึงข้อมูลล่วงหน้า การทดสอบแบบสุ่มในหน้าจะวัดการเข้าถึงโดยสุ่มภายในหน้าหน่วยความจำเดียวกัน นอกจากนี้ยังวัดประสิทธิภาพ TLB และแสดงประสิทธิภาพสุ่มกรณีที่ดีที่สุด (นี่คือผู้ขายการวัดที่ใช้สำหรับแผ่นข้อมูลจำเพาะอย่างเป็นทางการ) การทดสอบแบบสุ่มเต็มรูปแบบประกอบด้วยการตีและพลาดของ TLB โดยมีโอกาสพลาดอย่างมาก ดังนั้นจึงหาปริมาณเวลาแฝงในกรณีที่เลวร้ายที่สุด

    โดยไม่คำนึงถึงรูปแบบการเข้าถึงหน่วยความจำ ส่วนข้อมูลที่เล็กที่สุดจะพอดีกับแคช L1 และเมื่อขนาดของข้อมูลเพิ่มขึ้น ก็จะเติมแคชที่ใหญ่ขึ้น

    L1L2L3หน่วยความจำหลัก

    พิสัย
    2KB – 32KB
    32KB – 512KB
    512KB – 8MB
    8MB – 1GB

    Threadripper 1950X มี L2 และ L3 latency ที่ดีกว่า Ryzen 7 1800X ในทุกรูปแบบการเข้าถึง นอกจากนี้ เราสังเกตเห็นการลดเวลาแฝงที่โดดเด่นผ่านการโอเวอร์คล็อกสำหรับแคช L1, L2 และ L3 ของ Threadripper

    ที่เปลี่ยนไปเมื่อปริมาณงานไหลออกไปยังหน่วยความจำหลัก โหมดผู้สร้างของ Threadripper (การตั้งค่าเริ่มต้น) มีเวลาแฝงสูงสุดในทุกรูปแบบการเข้าถึง นี่เป็นผลโดยตรงของการเข้าถึงหน่วยความจำที่เชื่อมโยงไปถึงหน่วยความจำระยะไกล การวัดในหน้าของเราสะท้อนข้อกำหนด 86.9ns ของ AMD แต่การเข้าถึงแบบสุ่มแบบเต็มในกรณีที่แย่ที่สุดคือเกิน 120ns การโอเวอร์คล็อกโปรเซสเซอร์และหน่วยความจำช่วยลดเวลาแฝง แต่โหมดผู้สร้างยังคงไม่แซงการกำหนดค่าที่เราเปรียบเทียบ 

    การเปลี่ยนเป็นโหมด NUMA ด้วยการตั้งค่า Local ช่วยเพิ่มการเข้าถึงหน่วยความจำหลักอย่างมากสำหรับการกำหนดค่าอื่นๆ เราวัดค่า ~60ns สำหรับการเข้าถึงหน่วยความจำในหน้าใกล้ อีกครั้งตามข้อกำหนดของ AMD ในขณะที่เวลาแฝงในกรณีที่เลวร้ายที่สุดจะมีน้ำหนักที่ 100ns

    แบนด์วิดท์แคช

    CCX แต่ละตัวมีแคชของตัวเอง ดังนั้น Threadripper CPU จึงมีคลัสเตอร์ที่แตกต่างกันสี่กลุ่มของหน่วยความจำ L1, L2 และ L3 เกณฑ์มาตรฐานแบนด์วิดท์ของเราแสดงให้เห็นถึงประสิทธิภาพโดยรวมของระดับเหล่านี้ 

    ในระหว่างการทดสอบแบบเธรดเดียว Ryzen 7 1800X แสดงให้เห็นถึงปริมาณงานที่ต่ำกว่าโปรเซสเซอร์ Threadripper การกำหนดค่าอื่นๆ รวมกันเป็นกลุ่มที่คุ้นเคยและกลุ่มโอเวอร์คล็อก

    การทดสอบแบบมัลติเธรดนั้นน่าสนใจยิ่งขึ้น เราเห็น Ryzen 7 1800X และโหมดเกม Threadripper สองโหมดอยู่ด้านล่างสุดของแผนภูมิ เนื่องจากโหมดเกมปิดใช้งานคอร์บนไดย์เดียว จึงใช้แคชที่เกี่ยวข้องออกจากค่าคอมมิชชันได้อย่างมีประสิทธิภาพ

    0 0 votes
    Rating post
    Subscribe
    Notify of
    guest
    0 comments
    Inline Feedbacks
    View all comments
    0
    Would love your thoughts, please comment.x
    ()
    x