Fabric Attached Memory หน่วยความจำที่ไม่ใช่ RAM หรือแคชใน CPU

หน่วยความจำที่แนบมาด้วยผ้า

ความก้าวหน้าในสถาปัตยกรรมคอมพิวเตอร์ไม่เพียงแต่นำมาซึ่งการปรับปรุงในโปรเซสเซอร์เท่านั้น แต่ยังรวมถึงหน่วยความจำที่ใช้และฮาร์ดแวร์ประเภทใหม่ ๆ ถูกสร้างขึ้นหลายครั้ง หนึ่งในนั้นคือ Fabric Attached Memory ซึ่งเป็นประเภทของ แรม ซึ่งเป็นส่วนหนึ่งของกระบวนทัศน์ใหม่ของการประมวลผลในหน่วยความจำ มันคืออะไรและมีลักษณะอย่างไรหน่วยความจำประเภทนี้?

ก่อนเริ่มต้น จะต้องชี้แจงว่าคุณจะไม่พบ Fabric Attached Memory บนพีซีใดๆ ในตลาดในขณะที่เขียนบทความนี้ แม้ว่าเรากำลังพูดถึงเวิร์กสเตชัน HEDT ก็ตาม เหตุผล? Simple, FAM คือหน่วยความจำประเภทหนึ่งที่เกี่ยวข้องกับ High Performance Computing หรือ HPC วัตถุประสงค์ของการพัฒนาหน่วยความจำประเภทนี้? เกินกำลังการประมวลผลของ ExaFLOP และ ณ จุดนี้สถาปัตยกรรมหน่วยความจำของระบบมีความสำคัญมาก

หน่วยความจำที่ติดมากับผ้าคืออะไร?

หน่วยความจำที่แนบมาด้วยผ้า

เราเข้าใจดีในฐานะ Fabric Attached Memory (FAM) หรือ FAM ซึ่งเป็นหน่วยความจำประเภทหนึ่งที่สามารถเข้าถึงได้โดยโปรเซสเซอร์ตั้งแต่หนึ่งตัวขึ้นไป ซึ่งสามารถเป็นประเภทเดียวกันหรือประเภทอื่นได้ ต่างจากความทรงจำทั่วไปอย่างไร? ในความจริงที่ว่าสามารถเข้าถึงได้ผ่านอินเทอร์เฟซเครือข่ายและเนื่องจากโครงสร้างพื้นฐานการเชื่อมต่อโครงข่ายกำลังพัฒนาไปสู่สิ่งที่เรียกว่า เครือข่าย บนชิป อาจกล่าวได้ว่าหน่วยความจำนี้เชื่อมต่อกับอินเทอร์เฟซเป็นกุญแจสำคัญในการเร่งกระบวนการในซีพียูและ GPU แห่งอนาคต

เมื่อเราพูดถึง RAM เรามักจะนึกถึงหน่วยความจำภายนอกโปรเซสเซอร์ ซึ่งติดตั้งอยู่บนชิปแยกและเข้าถึงได้ผ่านอินเทอร์เฟซ ภายใต้คำจำกัดความนี้ เราสามารถคิดได้ว่าเราสามารถกำหนดเป็น FAM ได้ วงจร 3DIC ที่มีหน่วยความจำที่เชื่อมต่อในแนวตั้ง แต่ FAM ตามชื่อบ่งบอกว่าเป็นหน่วยความจำที่เชื่อมต่อโดยตรงกับสิ่งที่เราเรียกว่า "ผ้า" และเราหมายถึงอะไรในชื่อนั้น? Northbridge คืออะไรซึ่งเป็นองค์ประกอบที่สื่อสารโปรเซสเซอร์ต่าง ๆ ซึ่งกันและกันและสิ่งเหล่านี้กับ RAM

Fabric Attached Memory นั้นอยู่ใน Northbridge ดังนั้นก่อน RAM จึงเป็นที่มาของชื่อ

แนวคิดหน่วยความจำ Scratchpad

ไมโครสโคปี้แคช

เมื่อเราพูดถึงหน่วยความจำ Scratchpad เราหมายถึง RAM ทางเลือกอื่น ซึ่งแยกจากหน่วยความจำแบบธรรมดาที่เกี่ยวกับการกำหนดแอดเดรส ดังนั้นนี่หมายความว่าทุกระบบที่มีหน่วยความจำ Scratchpad ต้องใช้ระบบดักจับข้อมูลสองระบบ . แน่นอน เราลืมบอกไปว่าปกติแล้ว Scratchpad Memory ไม่ได้พบนอกโปรเซสเซอร์ แต่อยู่ภายในโปรเซสเซอร์ ซึ่งมีข้อดีหลายประการ:

  • โปรแกรมที่ทำงานภายใน Scratchpad Memory จะทำงานเร็วขึ้นเนื่องจากระยะห่างจากโปรเซสเซอร์ต่ำและใช้พลังงานน้อยลง
  • เนื่องจากอยู่ใกล้กับโปรเซสเซอร์ ระบบแคชจึงไม่ได้ใช้เพื่อเข้าถึงหน่วยความจำดังกล่าว

หน่วยความจำประเภทนี้ถูกใช้มาเป็นเวลาหลายทศวรรษแล้ว และในปัจจุบันนี้ เราสามารถพบหน่วยความจำประเภทนี้ได้ในหน่วย shader ของ GPU ดังนั้นจึงไม่ใช่สิ่งแปลกใหม่ เกี่ยวข้องกับ Fabric Attached Memory อย่างไร? ความจริงที่ว่า FAM เป็นหน่วยความจำประเภท Scratchpad แต่การใช้อินเทอร์เฟซเครือข่ายในการสื่อสารทำให้การเข้าถึงแตกต่างกันโดยสิ้นเชิง

Fabric Attached Memory เป็นระดับก่อนลำดับชั้นที่สัมพันธ์กับ RAM แต่การเข้าถึงทำได้เหมือนกับที่ทำใน NoC ซึ่งองค์ประกอบต่างๆ ทำงานเป็นเครือข่ายที่เชื่อมต่อถึงกันโดยมี NoC ในส่วนกลาง และแต่ละองค์ประกอบมีเราเตอร์ของคุณ . นั่นคือ ในการเข้าถึง FAM จำเป็นต้องเรียกที่อยู่เครือข่ายเท่านั้น และนี่คือสิ่งที่องค์ประกอบทั้งหมดของระบบสามารถทำได้

หน่วยความจำเป็นคอขวดที่ใหญ่ที่สุดสำหรับการประมวลผล

วิวัฒนาการ cuello botella ความทรงจำ

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

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

มัลติโปรเซสเซอร์หน่วยความจำที่แนบมากับผ้า

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

FAM เป็นส่วนหนึ่งของอนาคตใน PC

ซีพียู ชิปเล็ต ซีพียู GPU AMD Intel

ในตอนต้นของบทความ เราได้เขียนข้อความที่ตั้งชื่อหัวข้อนี้ แต่ทุกข้อความยังคงเป็นคำตอบสำหรับคำถามที่ตอบสนองต่อเหตุผล และนี่ไม่ใช่ใครอื่นนอกจากในพีซีทั่วไป ปริมาณ FAM ที่จำเป็นต่อการใช้โปรเซสเซอร์จะถูกจำกัด ดังนั้น ทางออกที่ดีที่สุดคือระบบที่ใช้ชิปเล็ตโดยที่ Northbridge ถูกตัดการเชื่อมต่อจากส่วนที่เหลือของระบบ เช่นเดียวกับกรณีใน เอเอ็มดีซีพียู Ryzen 3000 และ Ryzen 5000 ของ

FAM โดยธรรมชาติแล้วในลำดับชั้นของหน่วยความจำจะต้องมีความจุมากกว่าแคชที่เร็วที่สุด แต่น้อยกว่าหน่วยความจำ RAM ด้วย Northbridge บนชิปที่แยกจากกัน คุณสามารถรวม Fabric Attached Memory เข้ากับชิปได้ แต่ในชิป 2D จะทำได้ยาก ในทางกลับกัน มันเป็นชิป 3D ที่ประกอบด้วยหลายระดับ โดยที่ Northbridge ของระบบอยู่ที่ระดับหนึ่งและหน่วยความจำ FAM ในอีกระดับหนึ่ง ด้วยเหตุนี้ ส่วนที่ดีของกระบวนการและแม้แต่เธรดที่รันโปรเซสเซอร์แบบขนานและในลักษณะที่ประสานกันจะถูกเร่ง ดังนั้นจึงหลีกเลี่ยงปัญหาคอขวดขนาดใหญ่ที่เกี่ยวข้องกับ RAM แบบเดิม

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