สวัสดีผู้อ่าน Habr เราต้องการแบ่งปันข่าวดี ในที่สุดเราก็รอการผลิตแบบอนุกรมที่แท้จริงของโปรเซสเซอร์ Russian Elbrus 8C รุ่นใหม่ อย่างเป็นทางการ การผลิตแบบอนุกรมควรจะเริ่มต้นอย่างเร็วที่สุดในปี 2016 แต่ในความเป็นจริงแล้ว การผลิตจำนวนมากเริ่มขึ้นในปี 2019 เท่านั้น และมีการเปิดตัวโปรเซสเซอร์ประมาณ 4000 ตัวแล้ว
เกือบจะทันทีหลังจากเริ่มการผลิตจำนวนมาก โปรเซสเซอร์เหล่านี้ปรากฏใน Aerodisk ของเรา ซึ่งเราขอขอบคุณ NORSI-TRANS ที่กรุณาจัดหาแพลตฟอร์มฮาร์ดแวร์ Yakhont UVM ให้กับเรา ซึ่งสนับสนุนโปรเซสเซอร์ Elbrus 8C สำหรับการย้ายส่วนซอฟต์แวร์ของ ระบบจัดเก็บข้อมูล นี่คือแพลตฟอร์มสากลที่ทันสมัยซึ่งตรงตามข้อกำหนดทั้งหมดของ MCST ในขณะนี้ แพลตฟอร์มดังกล่าวถูกใช้โดยผู้บริโภคพิเศษและผู้ให้บริการโทรคมนาคมเพื่อให้แน่ใจว่าการดำเนินการตามที่กำหนดไว้ในระหว่างกิจกรรมการค้นหาการปฏิบัติงาน
ในขณะนี้ การพอร์ตเสร็จสมบูรณ์แล้ว และตอนนี้ระบบจัดเก็บข้อมูล AERODISK มีวางจำหน่ายแล้วในเวอร์ชันที่มีโปรเซสเซอร์ Elbrus ภายในประเทศ
ในบทความนี้ เราจะพูดถึงตัวโปรเซสเซอร์ ประวัติ สถาปัตยกรรม และแน่นอน การนำระบบจัดเก็บข้อมูลของเราไปใช้งานบน Elbrus
เรื่องราว
ประวัติของโปรเซสเซอร์ Elbrus ย้อนกลับไปในสมัยสหภาพโซเวียต ในปี พ.ศ. 1973 ที่สถาบันกลศาสตร์วิจิตรและวิศวกรรมคอมพิวเตอร์ได้รับการตั้งชื่อตาม ส. Lebedev (ตั้งชื่อตาม Sergei Lebedev คนเดียวกันซึ่งเคยเป็นผู้นำการพัฒนา MESM คอมพิวเตอร์โซเวียตเครื่องแรกและต่อมาคือ BESM) การพัฒนาระบบคอมพิวเตอร์หลายตัวประมวลผลที่เรียกว่า Elbrus เริ่มขึ้น Vsevolod Sergeevich Burtsev ดูแลการพัฒนาและ Boris Artashesovich Babayan ซึ่งเป็นหนึ่งในรองหัวหน้านักออกแบบก็มีส่วนร่วมในการพัฒนาเช่นกัน
Vsevolod Sergeyevich Burtsev
บอริส อาร์ทาเชโซวิช บาบายัน
ลูกค้าหลักของโครงการคือกองทัพของสหภาพโซเวียต และในที่สุดคอมพิวเตอร์ชุดนี้ก็ประสบความสำเร็จในการสร้างศูนย์คอมพิวเตอร์สั่งการและระบบการยิงสำหรับระบบป้องกันขีปนาวุธ ตลอดจนระบบวัตถุประสงค์พิเศษอื่นๆ .
คอมพิวเตอร์ Elbrus เครื่องแรกสร้างเสร็จในปี 1978 มีสถาปัตยกรรมแบบโมดูลาร์และอาจมีโปรเซสเซอร์ตั้งแต่ 1 ถึง 10 ตัวตามแผนการผสานรวมขนาดกลาง ความเร็วของเครื่องนี้สูงถึง 15 ล้านครั้งต่อวินาที จำนวน RAM ซึ่งเป็นเรื่องปกติสำหรับโปรเซสเซอร์ทั้ง 10 ตัวคือ 2 ถึง 20 กำลัง 64 ของคำเครื่องหรือ XNUMX MB
ต่อมาปรากฎว่าทั่วโลกมีการศึกษาเทคโนโลยีหลายอย่างที่ใช้ในการพัฒนา Elbrus และ International Business Machine (IBM) มีส่วนร่วมในพวกเขา แต่งานในโครงการเหล่านี้ไม่เหมือนกับงานใน Elbrus เสร็จสิ้นและไม่ได้นำไปสู่การสร้างผลิตภัณฑ์สำเร็จรูปในที่สุด
ตามที่ Vsevolod Burtsev วิศวกรโซเวียตพยายามใช้ประสบการณ์ขั้นสูงสุดของนักพัฒนาทั้งในและต่างประเทศ สถาปัตยกรรมของคอมพิวเตอร์ Elbrus ยังได้รับอิทธิพลจากคอมพิวเตอร์ของ Burroughs การพัฒนาของ Hewlett-Packard ตลอดจนประสบการณ์ของนักพัฒนา BESM-6
แต่ในขณะเดียวกันก็มีการพัฒนาหลายอย่างที่เป็นต้นฉบับ สิ่งที่น่าสนใจที่สุดเกี่ยวกับ Elbrus-1 คือสถาปัตยกรรม
ซูเปอร์คอมพิวเตอร์ที่สร้างขึ้นกลายเป็นคอมพิวเตอร์เครื่องแรกในสหภาพโซเวียตที่ใช้สถาปัตยกรรมซูเปอร์สเกลาร์ การใช้โปรเซสเซอร์ superscalar จำนวนมากในต่างประเทศเริ่มขึ้นในทศวรรษที่ 90 ของศตวรรษที่ผ่านมาเท่านั้น โดยมีการปรากฏตัวในตลาดของโปรเซสเซอร์ Intel Pentium ที่มีราคาย่อมเยา
นอกจากนี้ยังสามารถใช้โปรเซสเซอร์อินพุต-เอาต์พุตพิเศษเพื่อจัดระเบียบการถ่ายโอนข้อมูลระหว่างอุปกรณ์ต่อพ่วงและ RAM ในคอมพิวเตอร์ อาจมีโปรเซสเซอร์ดังกล่าวในระบบได้ถึงสี่ตัว พวกเขาทำงานควบคู่ไปกับโปรเซสเซอร์กลางและมีหน่วยความจำเฉพาะของตนเอง
เอลบรุส-2
ในปี 1985 Elbrus ได้รับความต่อเนื่องทางตรรกะ คอมพิวเตอร์ Elbrus-2 ถูกสร้างขึ้นและส่งเข้าสู่การผลิตจำนวนมาก ในแง่ของสถาปัตยกรรมมันไม่ได้แตกต่างจากรุ่นก่อน ๆ มากนัก แต่ใช้ฐานองค์ประกอบใหม่ซึ่งทำให้สามารถเพิ่มประสิทธิภาพโดยรวมได้เกือบ 10 เท่าจาก 15 ล้านครั้งต่อวินาทีเป็น 125 ล้านครั้ง จำนวน RAM ของคอมพิวเตอร์ เพิ่มขึ้นเป็น 16 ล้านคำ 72 บิต หรือ 144 MB แบนด์วิดท์สูงสุดของช่อง I / O ของ Elbrus-2 คือ 120 MB / s
"Elbrus-2" ถูกใช้อย่างแข็งขันในศูนย์วิจัยนิวเคลียร์ใน Chelyabinsk-70 และใน Arzamas-16 ใน MCC ในระบบป้องกันขีปนาวุธ A-135 รวมถึงสิ่งอำนวยความสะดวกทางทหารอื่น ๆ
การสร้าง Elbrus ได้รับการชื่นชมอย่างถูกต้องจากผู้นำของสหภาพโซเวียต วิศวกรหลายคนได้รับคำสั่งและเหรียญรางวัล นักออกแบบทั่วไป Vsevolod Burtsev และผู้เชี่ยวชาญอีกหลายคนได้รับรางวัลจากรัฐ และ Boris Babayan ได้รับรางวัล Order of the October Revolution
รางวัลเหล่านี้สมควรได้รับมากกว่า Boris Babayan กล่าวในภายหลังว่า:
“ในปี 1978 เราสร้างเครื่อง Superscalar เครื่องแรก Elbrus-1 ตอนนี้ในตะวันตกพวกเขาสร้าง superscalar ของสถาปัตยกรรมนี้เท่านั้น ซูเปอร์สเกลาร์ตัวแรกปรากฏในตะวันตกในปี 92 ของเราในปี 78 ยิ่งไปกว่านั้น รุ่นของซูเปอร์สเกลาร์ที่เราสร้างขึ้นนั้นคล้ายคลึงกับ Pentium Pro ที่ Intel ผลิตในปี 95”
คำพูดเหล่านี้เกี่ยวกับความเหนือกว่าทางประวัติศาสตร์ได้รับการยืนยันในสหรัฐอเมริกาเช่นกัน Keith Diefendorff ผู้พัฒนา Motorola 88110 ซึ่งเป็นหนึ่งในโปรเซสเซอร์ superscalar ตะวันตกตัวแรกเขียนว่า:
“ในปี พ.ศ. 1978 เกือบ 15 ปีก่อนที่โปรเซสเซอร์ superscalar ของเวสเทิร์นตัวแรกจะปรากฏขึ้น Elbrus-1 ใช้โปรเซสเซอร์โดยออกคำสั่งสองชุดในหนึ่งรอบ เปลี่ยนลำดับการดำเนินการคำสั่ง เปลี่ยนชื่อรีจิสเตอร์ และดำเนินการตามสมมติฐาน”
เอลบรุส-3
ในปีพ.ศ. 1986 และเกือบจะในทันทีหลังจากเสร็จสิ้นการทำงานใน Elbrus ที่สอง ITMiVT เริ่มพัฒนาระบบ Elbrus-3 ใหม่โดยใช้สถาปัตยกรรมโปรเซสเซอร์ใหม่โดยพื้นฐาน Boris Babayan เรียกวิธีการนี้ว่า "หลังซูเปอร์สเกลาร์" เป็นสถาปัตยกรรมนี้ซึ่งต่อมาเรียกว่า VLIW / EPIC ซึ่งในอนาคต (กลางทศวรรษที่ 90) โปรเซสเซอร์ Intel Itanium เริ่มใช้ (และในสหภาพโซเวียตการพัฒนาเหล่านี้เริ่มต้นในปี 1986 และสิ้นสุดในปี 1991)
ในคอมเพล็กซ์คอมพิวเตอร์นี้ แนวคิดของการควบคุมอย่างชัดเจนของความขนานของการดำเนินการด้วยความช่วยเหลือของคอมไพเลอร์ถูกนำมาใช้เป็นครั้งแรก
ในปี 1991 คอมพิวเตอร์ Elbrus-3 เครื่องแรกและเครื่องเดียวได้รับการปล่อยตัวซึ่งไม่สามารถปรับเปลี่ยนได้อย่างเต็มที่และหลังจากการล่มสลายของสหภาพโซเวียตก็ไม่มีใครต้องการมันและการพัฒนาและแผนยังคงอยู่ในกระดาษ
ภูมิหลังของสถาปัตยกรรมใหม่
ทีมงานที่ทำงานที่ ITMiVT ในการสร้างซูเปอร์คอมพิวเตอร์ของโซเวียตไม่ได้เลิกรากัน แต่ยังคงทำงานเป็นบริษัทแยกต่างหากภายใต้ชื่อ MCST (Moscow Center for SPARK-Technologies) และในช่วงต้นทศวรรษที่ 90 ความร่วมมืออย่างแข็งขันระหว่าง MCST และ Sun Microsystems ได้เริ่มต้นขึ้น โดยทีม MCST ได้มีส่วนร่วมในการพัฒนาไมโครโปรเซสเซอร์ UltraSPARC
ในช่วงเวลานี้เองที่โครงการสถาปัตยกรรม E2K เกิดขึ้นซึ่งเดิมได้รับทุนจาก Sun ต่อมา โปรเจ็กต์กลายเป็นอิสระอย่างสมบูรณ์และทรัพย์สินทางปัญญาทั้งหมดยังคงอยู่กับทีม MCST
“ถ้าเรายังคงทำงานร่วมกับซันในด้านนี้ ทุกอย่างก็จะเป็นของซัน แม้ว่างานจะเสร็จไป 90% ก่อนที่ซันจะเข้ามา” (บอริส บาบายัน)
สถาปัตยกรรม E2K
เมื่อเราพูดถึงสถาปัตยกรรมของโปรเซสเซอร์ Elbrus บ่อยครั้งที่เราได้ยินข้อความต่อไปนี้จากเพื่อนร่วมงานของเราในอุตสาหกรรมไอที:
"Elbrus เป็นสถาปัตยกรรม RISC"
"Elbrus เป็นสถาปัตยกรรม EPIC"
"Elbrus คือสถาปัตยกรรม SPARC"
อันที่จริง ไม่มีข้อความใดที่เป็นจริงทั้งหมด หรือถ้าจริง ก็จริงเพียงบางส่วนเท่านั้น
สถาปัตยกรรม E2K เป็นสถาปัตยกรรมโปรเซสเซอร์ดั้งเดิมที่แยกออกมา คุณสมบัติหลักของ E2K คือประสิทธิภาพการใช้พลังงานและความสามารถในการปรับขนาดที่ยอดเยี่ยม ซึ่งทำได้โดยการระบุการทำงานแบบคู่ขนานที่ชัดเจน สถาปัตยกรรม E2K ได้รับการพัฒนาโดยทีม MCST และใช้สถาปัตยกรรมหลังซูเปอร์สเกลาร์ (a la EPIC) โดยได้รับอิทธิพลบางส่วนจากสถาปัตยกรรม SPARC (ซึ่งมีอดีต RISC) ในเวลาเดียวกัน MCST มีส่วนร่วมโดยตรงในการสร้างสถาปัตยกรรมพื้นฐานสามในสี่แบบ (Superscalars, Post-Superscalars และ SPARC) โลกใบเล็กจริงๆ
เพื่อหลีกเลี่ยงความสับสนในอนาคต เราได้วาดไดอะแกรมอย่างง่ายที่แม้ว่าจะทำให้เรียบง่าย แต่แสดงให้เห็นรากเหง้าของสถาปัตยกรรม E2K ได้อย่างชัดเจน
ตอนนี้เพิ่มเติมเล็กน้อยเกี่ยวกับชื่อของสถาปัตยกรรมที่เกี่ยวข้องกับความเข้าใจผิด
ในแหล่งข้อมูลต่างๆ คุณจะพบชื่อต่อไปนี้สำหรับสถาปัตยกรรมนี้: "E2K", "Elbrus", "Elbrus 2000", ELBRUS ("ExpLicit Basic Resources Utilization Scheduling" เช่น การวางแผนอย่างชัดเจนสำหรับการใช้ทรัพยากรพื้นฐาน) ชื่อทั้งหมดนี้พูดถึงสิ่งเดียวกัน - เกี่ยวกับสถาปัตยกรรม แต่ในเอกสารทางเทคนิคอย่างเป็นทางการ เช่นเดียวกับฟอรัมทางเทคนิค ชื่อ E2K ใช้เพื่อกำหนดสถาปัตยกรรม ดังนั้นในอนาคต หากเรากำลังพูดถึงสถาปัตยกรรมโปรเซสเซอร์ เราใช้คำว่า "E2K" และถ้าเกี่ยวกับโปรเซสเซอร์เฉพาะ เราจะใช้ชื่อ "Elbrus"
คุณสมบัติทางเทคนิคของสถาปัตยกรรม E2K
ในสถาปัตยกรรมดั้งเดิม เช่น RISC หรือ CISC (x86, PowerPC, SPARC, MIPS, ARM) โปรเซสเซอร์จะได้รับสตรีมของคำสั่งที่ออกแบบมาสำหรับการดำเนินการตามลำดับ โปรเซสเซอร์สามารถตรวจจับการทำงานอิสระและรันแบบขนาน (ซูเปอร์สเกลาร์) และแม้แต่เปลี่ยนลำดับการทำงาน (ไม่อยู่ในลำดับ) อย่างไรก็ตาม การวิเคราะห์การพึ่งพาแบบไดนามิกและการสนับสนุนสำหรับการดำเนินการนอกคำสั่งมีข้อจำกัดในแง่ของจำนวนคำสั่งที่เรียกใช้และวิเคราะห์ต่อรอบ นอกจากนี้ บล็อกที่สอดคล้องกันภายในโปรเซสเซอร์ใช้พลังงานจำนวนมาก และการใช้งานที่ซับซ้อนที่สุดบางครั้งก็นำไปสู่ปัญหาด้านความเสถียรหรือความปลอดภัย
ในสถาปัตยกรรม E2K คอมไพเลอร์จะทำหน้าที่หลักในการวิเคราะห์การพึ่งพาและปรับลำดับการดำเนินการให้เหมาะสม โปรเซสเซอร์ได้รับสิ่งที่เรียกว่า คำสั่งแบบกว้าง ซึ่งแต่ละคำสั่งจะเข้ารหัสคำสั่งสำหรับอุปกรณ์บริหารโปรเซสเซอร์ทั้งหมดที่ต้องเปิดใช้งานในรอบสัญญาณนาฬิกาที่กำหนด โปรเซสเซอร์ไม่จำเป็นต้องวิเคราะห์การขึ้นต่อกันระหว่างตัวถูกดำเนินการหรือสลับการทำงานระหว่างคำสั่งแบบกว้าง: คอมไพเลอร์ทำทั้งหมดนี้โดยอิงจากการวิเคราะห์ซอร์สโค้ดและการวางแผนทรัพยากรของโปรเซสเซอร์ เป็นผลให้ฮาร์ดแวร์โปรเซสเซอร์สามารถใช้งานได้ง่ายและประหยัดมากขึ้น
คอมไพเลอร์สามารถแยกวิเคราะห์ซอร์สโค้ดได้อย่างละเอียดมากกว่าฮาร์ดแวร์ RISC/CISC ของโปรเซสเซอร์ และค้นหาการทำงานที่เป็นอิสระมากกว่า ดังนั้นสถาปัตยกรรม E2K จึงมีหน่วยดำเนินการแบบขนานมากกว่าสถาปัตยกรรมแบบดั้งเดิม
คุณสมบัติปัจจุบันของสถาปัตยกรรม E2K:
- 6 แชนเนลของหน่วยตรรกะเลขคณิต (ALU) ทำงานแบบขนาน
- ไฟล์ลงทะเบียนของการลงทะเบียน 256 บิต 84 รายการ
- การสนับสนุนฮาร์ดแวร์สำหรับรอบ รวมถึงรอบที่มีการวางท่อ เพิ่มประสิทธิภาพการใช้ทรัพยากรโปรเซสเซอร์
- prepump ข้อมูลแบบอะซิงโครนัสที่ตั้งโปรแกรมได้พร้อมช่องสัญญาณแยก ช่วยให้คุณซ่อนความล่าช้าจากการเข้าถึงหน่วยความจำและใช้งาน ALU ได้อย่างเต็มที่
- รองรับการคำนวณเชิงเก็งกำไรและเพรดิเคตแบบหนึ่งบิต ช่วยให้คุณลดจำนวนการเปลี่ยนและดำเนินการหลาย ๆ ส่วนของโปรแกรมพร้อมกัน
- คำสั่งแบบกว้างที่สามารถระบุการดำเนินการได้สูงสุด 23 รายการในรอบสัญญาณนาฬิกาหนึ่งรอบพร้อมการบรรจุสูงสุด (มากกว่า 33 การดำเนินการเมื่อบรรจุตัวถูกดำเนินการลงในคำสั่งเวกเตอร์)
การจำลอง x86
แม้ในขั้นตอนการออกแบบสถาปัตยกรรม นักพัฒนาเข้าใจถึงความสำคัญของการสนับสนุนซอฟต์แวร์ที่เขียนขึ้นสำหรับสถาปัตยกรรม Intel x86 ด้วยเหตุนี้ จึงมีการนำระบบมาใช้สำหรับการแปลรหัสไบนารี x86 แบบไดนามิก (เช่น ระหว่างการดำเนินการโปรแกรม หรือ “ทันทีทันใด”) เป็นรหัสตัวประมวลผลสถาปัตยกรรม E2K ระบบนี้สามารถทำงานได้ทั้งในโหมดแอปพลิเคชัน (ในลักษณะของ WINE) และในโหมดที่คล้ายกับไฮเปอร์ไวเซอร์ (จากนั้นจึงเป็นไปได้ที่จะเรียกใช้ระบบปฏิบัติการเกสต์ทั้งหมดสำหรับสถาปัตยกรรม x86)
ด้วยการเพิ่มประสิทธิภาพหลายระดับ จึงเป็นไปได้ที่จะได้รับโค้ดที่แปลด้วยความเร็วสูง คุณภาพของการจำลองสถาปัตยกรรม x86 ได้รับการยืนยันโดยการเปิดตัวระบบปฏิบัติการมากกว่า 20 ระบบปฏิบัติการ (รวมถึง Windows หลายเวอร์ชัน) และแอปพลิเคชันหลายร้อยรายการบนระบบคอมพิวเตอร์ Elbrus
โหมดการทำงานของโปรแกรมที่ได้รับการป้องกัน
หนึ่งในแนวคิดที่น่าสนใจที่สุดที่สืบทอดมาจากสถาปัตยกรรม Elbrus-1 และ Elbrus-2 คือการดำเนินการโปรแกรมที่ปลอดภัยที่เรียกว่า สาระสำคัญคือเพื่อให้แน่ใจว่าโปรแกรมทำงานเฉพาะกับข้อมูลเริ่มต้นเท่านั้น เพื่อตรวจสอบการเข้าถึงหน่วยความจำทั้งหมดว่าเป็นของช่วงที่อยู่ที่ถูกต้องหรือไม่ เพื่อให้มีการป้องกันระหว่างโมดูล (เช่น เพื่อป้องกันโปรแกรมที่เรียกจากข้อผิดพลาดในไลบรารี) การตรวจสอบทั้งหมดนี้ดำเนินการในฮาร์ดแวร์ สำหรับโหมดป้องกัน มีคอมไพเลอร์และไลบรารีสนับสนุนรันไทม์เต็มรูปแบบ ในเวลาเดียวกันควรเข้าใจว่าข้อ จำกัด ที่กำหนดไว้นำไปสู่ความเป็นไปไม่ได้ในการดำเนินการเช่นรหัสที่เขียนด้วย C ++
แม้ในโหมดการทำงานปกติของโปรเซสเซอร์ Elbrus ที่ "ไม่มีการป้องกัน" ยังมีคุณสมบัติที่เพิ่มความน่าเชื่อถือของระบบ ดังนั้น กองข้อมูลที่เชื่อมโยง (ห่วงโซ่ของที่อยู่ผู้ส่งสำหรับการเรียกขั้นตอน) จึงแยกออกจากกองข้อมูลผู้ใช้ และไม่สามารถเข้าถึงการโจมตีดังกล่าวซึ่งใช้ในไวรัสเป็นการปลอมแปลงที่อยู่ผู้ส่ง
ได้รับการออกแบบในช่วงหลายปีที่ผ่านมา ไม่เพียงตามทันและมีประสิทธิภาพสูงกว่าสถาปัตยกรรมคู่แข่งในแง่ของประสิทธิภาพและความสามารถในการปรับขนาดในอนาคต แต่ยังให้การป้องกันข้อบกพร่องที่รบกวน x86/amd64 บุ๊กมาร์กเช่น Meltdown (CVE-2017-5754), Spectre (CVE-2017-5753, CVE-2017-5715), RIDL (CVE-2018-12126, CVE-2018-12130), Fallout (CVE-2018-12127), ZombieLoad (CVE-2019-11091) และอื่นๆ
การป้องกันสมัยใหม่ต่อช่องโหว่ที่พบในสถาปัตยกรรม x86/amd64 อิงตามแพตช์ที่ระดับระบบปฏิบัติการ นั่นคือเหตุผลที่ประสิทธิภาพที่ลดลงของโปรเซสเซอร์รุ่นปัจจุบันและรุ่นก่อนหน้าของสถาปัตยกรรมเหล่านี้จึงสังเกตเห็นได้ชัดเจนและอยู่ในช่วงตั้งแต่ 30% ถึง 80% เราในฐานะผู้ใช้ที่ใช้งานโปรเซสเซอร์ x86 รู้เรื่องนี้ เราประสบและ "กินต้นกระบองเพชร" ต่อไป แต่การมีอยู่ของวิธีแก้ปัญหาเหล่านี้ในตาสำหรับเรา (และเป็นผลให้ลูกค้าของเรา) เป็น ประโยชน์ที่ไม่ต้องสงสัยโดยเฉพาะอย่างยิ่งหากวิธีแก้ปัญหาเป็นภาษารัสเซีย
Техническиехарактеристики
ด้านล่างนี้เป็นคุณสมบัติทางเทคนิคอย่างเป็นทางการของโปรเซสเซอร์ Elbrus ในอดีต (4C) ปัจจุบัน (8C) ใหม่ (8CB) และอนาคต (16C) เมื่อเปรียบเทียบกับโปรเซสเซอร์ Intel x86 ที่คล้ายกัน
แม้แต่การมองคร่าว ๆ ที่ตารางนี้ก็แสดงให้เห็น (และนี่ก็เป็นที่น่าพอใจมาก) ว่างานในมือทางเทคโนโลยีของโปรเซสเซอร์ในประเทศซึ่งดูเหมือนจะผ่านไม่ได้เมื่อ 10 ปีที่แล้วดูเหมือนจะค่อนข้างเล็กและในปี 2021 ด้วยการเปิดตัว Elbrus-16C (ซึ่งในหมู่ สิ่งอื่น ๆ จะรองรับการจำลองเสมือน) จะลดลงเป็นระยะทางต่ำสุด
SHD AERODISK บนโปรเซสเซอร์ Elbrus 8C
เราผ่านจากทฤษฎีสู่การปฏิบัติ ในฐานะที่เป็นส่วนหนึ่งของพันธมิตรเชิงกลยุทธ์ของ MCST, Aerodisk, Basalt SPO (เดิมคือ Alt Linux) และ NORSI-TRANS ระบบจัดเก็บข้อมูลได้รับการพัฒนาและนำไปใช้งาน ซึ่งในขณะนี้หากยังไม่ดีที่สุดในแง่ของความปลอดภัย ฟังก์ชันการทำงาน ในความเห็นของเรา ต้นทุนและประสิทธิภาพ เป็นโซลูชันที่คุ้มค่าอย่างปฏิเสธไม่ได้ซึ่งสามารถรับประกันความเป็นอิสระทางเทคโนโลยีในระดับที่เหมาะสมของมาตุภูมิของเรา
รายละเอียดตอนนี้...
ส่วนฮาร์ดแวร์
ส่วนฮาร์ดแวร์ของระบบจัดเก็บข้อมูลถูกนำมาใช้บนพื้นฐานของแพลตฟอร์มสากล Yakhont UVM ของ บริษัท NORSI-TRANS แพลตฟอร์ม Yakhont UVM ได้รับสถานะของอุปกรณ์โทรคมนาคมที่มาจากรัสเซียและรวมอยู่ในการลงทะเบียนแบบรวมของผลิตภัณฑ์วิทยุและอิเล็กทรอนิกส์ของรัสเซีย ระบบประกอบด้วยตัวควบคุมหน่วยเก็บข้อมูลแยกกันสองตัว (แต่ละตัวมี 2U) ซึ่งเชื่อมต่อกันด้วยอีเทอร์เน็ตแบบ 1G หรือ 10G รวมถึงชั้นวางดิสก์ที่ใช้ร่วมกันโดยใช้การเชื่อมต่อ SAS
แน่นอนว่ามันไม่สวยงามเท่ากับรูปแบบ "คลัสเตอร์ในกล่อง" (เมื่อติดตั้งคอนโทรลเลอร์และดิสก์ที่มีแบ็คเพลนทั่วไปในแชสซี 2U เดียว) ที่เรามักจะใช้ แต่ในอนาคตอันใกล้ก็จะพร้อมใช้งานเช่นกัน สิ่งสำคัญที่นี่คือใช้งานได้ดี แต่เราจะคิดถึง "คันธนู" ในภายหลัง
ภายใต้ประทุน คอนโทรลเลอร์แต่ละตัวมีมาเธอร์บอร์ดที่มีโปรเซสเซอร์ตัวเดียวพร้อมสล็อต RAM สี่ช่อง (DDR3 สำหรับโปรเซสเซอร์ 8C) นอกจากนี้ บนบอร์ดคอนโทรลเลอร์แต่ละตัวยังมีพอร์ตอีเธอร์เน็ต 4G 1 พอร์ต (ซึ่งซอฟต์แวร์ AERODISK ENGINE ใช้เป็นบริการสองพอร์ต) และสล็อต PCIe สามช่องสำหรับอะแดปเตอร์ Back-end (SAS) และ Front-end (Ethernet หรือ FibreChannel)
ในฐานะดิสก์สำหรับบูต เราใช้ดิสก์ Russian SATA SSD จาก GS Nanotech ซึ่งเราได้ทดสอบและใช้ในโครงการต่างๆ ซ้ำแล้วซ้ำเล่า
เมื่อเราพบแพลตฟอร์มครั้งแรก เราตรวจสอบอย่างละเอียด เราไม่มีคำถามเกี่ยวกับคุณภาพของการประกอบและการบัดกรี ทุกอย่างเรียบร้อยและเชื่อถือได้
ระบบปฏิบัติการ
เวอร์ชันของ OS Alt 8SP สำหรับการรับรองใช้เป็นระบบปฏิบัติการ ในอนาคตอันใกล้นี้ เราวางแผนที่จะสร้างที่เก็บข้อมูลที่เสียบได้และอัปเดตอย่างต่อเนื่องสำหรับ Alt OS ด้วยซอฟต์แวร์พื้นที่เก็บข้อมูล Aerodisk
การแจกจ่ายเวอร์ชันนี้สร้างขึ้นบนเคอร์เนล Linux 4.9 เวอร์ชันปัจจุบันที่เสถียรสำหรับ E2K (สาขาที่มีการสนับสนุนระยะยาวโดยผู้เชี่ยวชาญ MCST) เสริมด้วยแพตช์สำหรับการทำงานและความปลอดภัย แพ็คเกจทั้งหมดใน Alt OS สร้างขึ้นโดยตรงบน Elbrus โดยใช้ระบบสร้างธุรกรรมดั้งเดิมของโครงการ ALT Linux Team ซึ่งทำให้สามารถลดต้นทุนแรงงานสำหรับการถ่ายโอนและให้ความสำคัญกับคุณภาพของผลิตภัณฑ์มากขึ้น
การเปิดตัว Alt OS สำหรับ Elbrus ใด ๆ สามารถขยายได้อย่างมากในแง่ของการทำงานโดยใช้พื้นที่เก็บข้อมูลที่มีอยู่ (จากประมาณ 6 แพ็คเกจแหล่งที่มาสำหรับรุ่นที่แปดถึงประมาณ 12 สำหรับรุ่นที่เก้า)
ทางเลือกนี้เกิดขึ้นเนื่องจาก Basalt SPO ซึ่งเป็นผู้พัฒนา Alt OS กำลังทำงานร่วมกับนักพัฒนาซอฟต์แวร์และอุปกรณ์รายอื่นบนแพลตฟอร์มต่างๆ เพื่อให้แน่ใจว่ามีการโต้ตอบที่ราบรื่นภายในระบบฮาร์ดแวร์และซอฟต์แวร์
ระบบจัดเก็บข้อมูลซอฟต์แวร์
เมื่อย้ายพอร์ต เราละทิ้งความคิดที่จะใช้การจำลอง x2 ที่รองรับใน E86K ทันที และเริ่มทำงานกับโปรเซสเซอร์โดยตรง (โชคดีที่ Alt มีเครื่องมือที่จำเป็นสำหรับสิ่งนี้อยู่แล้ว)
เหนือสิ่งอื่นใด โหมดการดำเนินการแบบเนทีฟให้การรักษาความปลอดภัยที่ดีกว่า (ชุดฮาร์ดแวร์สามชุดเดิมแทนที่จะเป็นหนึ่งชุด) และประสิทธิภาพที่เพิ่มขึ้น (ไม่จำเป็นต้องจัดสรรหนึ่งหรือสองแกนจากแปดแกนเพื่อให้ตัวแปลไบนารีทำงาน และคอมไพเลอร์ก็ทำหน้าที่ของมัน งานดีกว่า JIT)
ในความเป็นจริง การใช้งาน E2K ของ AERODISK ENGINE รองรับฟังก์ชันการจัดเก็บที่มีอยู่ส่วนใหญ่ที่พบใน x86 AERODISK ENGINE เวอร์ชันปัจจุบัน (A-CORE เวอร์ชัน 2.30) ถูกใช้เป็นซอฟต์แวร์ระบบจัดเก็บข้อมูล
โดยไม่มีปัญหาใดๆ บน E2K ฟังก์ชันต่อไปนี้ได้รับการแนะนำและทดสอบเพื่อใช้ในผลิตภัณฑ์:
- ความทนทานต่อความผิดพลาดสำหรับคอนโทรลเลอร์สูงสุดสองตัวและ I/O หลายพาธ (mpio)
- บล็อกและเข้าถึงไฟล์ด้วยบางวอลุ่ม (RDG, DDP pools; FC, iSCSI, NFS, SMB protocols รวมทั้งการรวม Active Directory)
- ระดับ RAID ต่างๆ สูงถึงพาริตี้สามเท่า (รวมถึงความสามารถในการใช้ตัวสร้าง RAID)
- ที่เก็บข้อมูลแบบไฮบริด (รวม SSD และ HDD ภายในพูลเดียวกัน เช่น แคชและการจัดระดับ)
- ตัวเลือกการประหยัดพื้นที่ด้วยการขจัดข้อมูลซ้ำซ้อนและการบีบอัดข้อมูล
- ROW สแน็ปช็อต โคลน และตัวเลือกการจำลองแบบต่างๆ
- และฟีเจอร์เล็กๆแต่มีประโยชน์อื่นๆ เช่น QoS, global hotspare, VLAN, BOND เป็นต้น
ในความเป็นจริงบน E2K เราจัดการเพื่อให้ได้ฟังก์ชันการทำงานทั้งหมดของเรา ยกเว้นตัวควบคุมหลายตัว (มากกว่าสองตัว) และตัวกำหนดตารางเวลา I / O แบบมัลติเธรดซึ่งทำให้เราสามารถเพิ่มประสิทธิภาพของพูลแฟลชทั้งหมดได้ 20-30% .
แต่แน่นอนว่าเราจะเพิ่มฟังก์ชันที่มีประโยชน์เหล่านี้เข้าไปด้วย อีกไม่นาน
เล็กน้อยเกี่ยวกับประสิทธิภาพ
หลังจากผ่านการทดสอบฟังก์ชันพื้นฐานของระบบจัดเก็บข้อมูลเรียบร้อยแล้ว เราก็เริ่มทำการทดสอบโหลด
ตัวอย่างเช่น บนระบบจัดเก็บข้อมูลแบบคอนโทรลเลอร์คู่ (2xCPU E8C 1.3 Ghz, 32 GB RAM + 4 SAS SSD 800GB 3DWD) ซึ่งแคช RAM ถูกปิดใช้งาน เราสร้างพูล DDP สองตัวที่มีระดับ RAID-10 หลักและ 500G สองตัว LUN และเชื่อมต่อ LUN เหล่านี้ผ่าน iSCSI (10G Ethernet) กับโฮสต์ Linux และทำหนึ่งในการทดสอบพื้นฐานรายชั่วโมงกับบล็อกการโหลดตามลำดับขนาดเล็กโดยใช้โปรแกรม FIO
ผลลัพธ์แรกค่อนข้างเป็นบวก
โหลดของโปรเซสเซอร์โดยเฉลี่ยอยู่ที่ระดับ 60% เช่น นี่คือระดับพื้นฐานที่สตอเรจสามารถทำงานได้อย่างปลอดภัย
ใช่ สิ่งนี้ยังห่างไกลจากการโหลดสูง และเห็นได้ชัดว่าไม่เพียงพอสำหรับ DBMS ประสิทธิภาพสูง แต่จากแนวทางปฏิบัติของเราพบว่า คุณลักษณะเหล่านี้เพียงพอสำหรับ 80% ของงานทั่วไปที่ใช้ระบบจัดเก็บข้อมูล
อีกไม่นาน เราวางแผนที่จะกลับมาพร้อมกับรายงานโดยละเอียดเกี่ยวกับการทดสอบโหลดของ Elbrus ในฐานะแพลตฟอร์มจัดเก็บข้อมูล
อนาคตที่สดใส
ดังที่เราได้เขียนไว้ข้างต้น การผลิตจำนวนมากของ Elbrus 8C เพิ่งเริ่มขึ้นเมื่อต้นปี 2019 และในเดือนธันวาคมมีการเปิดตัวโปรเซสเซอร์ประมาณ 4000 ตัวแล้ว สำหรับการเปรียบเทียบ Elbrus 4C รุ่นก่อนหน้ามีการผลิตโปรเซสเซอร์เพียง 5000 ตัวตลอดระยะเวลาการผลิตดังนั้นจึงมีความคืบหน้า
เป็นที่ชัดเจนว่านี่คือการลดลงของมหาสมุทรแม้แต่ในตลาดรัสเซีย แต่ถนนจะถูกควบคุมโดยคนเดิน
มีการวางแผนเปิดตัวโปรเซสเซอร์ Elbrus 2020C หลายหมื่นตัวในปี 8 และนี่เป็นตัวเลขที่ร้ายแรงแล้ว นอกจากนี้ ในช่วงปี 2020 ทีมงาน MCST ควรนำโปรเซสเซอร์ Elbrus-8SV ไปผลิตจำนวนมาก
แผนการผลิตดังกล่าวเป็นแอปพลิเคชันสำหรับส่วนแบ่งที่สำคัญมากของตลาดโปรเซสเซอร์เซิร์ฟเวอร์ภายในประเทศทั้งหมด
เป็นผลให้ที่นี่และตอนนี้เรามีโปรเซสเซอร์รัสเซียที่ดีและทันสมัยพร้อมกลยุทธ์การพัฒนาที่ชัดเจนและถูกต้องตามความเห็นของเราซึ่งมีระบบจัดเก็บข้อมูลที่ผลิตในรัสเซียที่ปลอดภัยและได้รับการรับรองมากที่สุด (และใน อนาคต ระบบเวอร์ชวลไลเซชันบน Elbrus-16C) ระบบของรัสเซียทำได้เท่าที่เป็นไปได้ในสภาพปัจจุบัน
เรามักจะเห็นในข่าวเกี่ยวกับความล้มเหลวครั้งยิ่งใหญ่ของบริษัทที่เรียกตนเองว่าผู้ผลิตชาวรัสเซียอย่างภาคภูมิ แต่ในความเป็นจริงกลับติดฉลากใหม่โดยไม่เพิ่มมูลค่าให้กับผลิตภัณฑ์ของผู้ผลิตต่างประเทศ ยกเว้นการมาร์กอัป โชคไม่ดีที่ บริษัท ดังกล่าวสร้างเงาให้กับนักพัฒนาและผู้ผลิตชาวรัสเซียที่แท้จริงทั้งหมด
ในบทความนี้ เราต้องการแสดงให้เห็นอย่างชัดเจนว่าในประเทศของเรามี เป็น และจะเป็นบริษัทที่สร้างระบบไอทีที่ทันสมัยและซับซ้อนอย่างจริงจังและมีประสิทธิภาพ และกำลังพัฒนาอย่างแข็งขัน และการทดแทนการนำเข้าในไอทีไม่ใช่เรื่องหยาบคาย แต่เป็นความจริงที่ เราทุกคนมีชีวิตอยู่ คุณไม่สามารถรักความเป็นจริงนี้ คุณสามารถวิจารณ์ หรือทำงานและทำให้ดีขึ้นได้
การล่มสลายของสหภาพโซเวียตในคราวเดียวทำให้ทีมผู้สร้าง Elbrus กลายเป็นผู้เล่นที่โดดเด่นในโลกของโปรเซสเซอร์และบังคับให้ทีมต้องหาเงินทุนสำหรับการพัฒนาในต่างประเทศ พบแล้ว งานเสร็จสิ้น และทรัพย์สินทางปัญญาได้รับการช่วยเหลือ ซึ่งฉันอยากจะขอบคุณคนเหล่านี้อย่างมาก!
นั่นคือทั้งหมดสำหรับตอนนี้ โปรดเขียนความคิดเห็น คำถาม และคำวิจารณ์ของคุณ เรามีความสุขเสมอ
นอกจากนี้ ในนามของบริษัท Aerodisk ทั้งหมด ฉันต้องการแสดงความยินดีกับชุมชนไอทีของรัสเซียทั้งหมดในวันปีใหม่และคริสต์มาสที่กำลังจะมาถึง ขอให้มีเวลาทำงาน 100% - และการสำรองข้อมูลนั้นจะไม่มีประโยชน์สำหรับทุกคนในปีใหม่)))
วัสดุที่ใช้
บทความที่มีคำอธิบายทั่วไปเกี่ยวกับเทคโนโลยี สถาปัตยกรรม และบุคลิกภาพ:
ประวัติโดยย่อของคอมพิวเตอร์ภายใต้ชื่อ "Elbrus":
บทความทั่วไปเกี่ยวกับสถาปัตยกรรม e2k:
บทความนี้เกี่ยวกับรุ่นที่ 4 (Elbrus-8S) และรุ่นที่ 5 (Elbrus-8SV, 2020):
ข้อมูลจำเพาะของโปรเซสเซอร์รุ่นที่ 6 ถัดไป (Elbrus-16SV, 2021):
คำอธิบายอย่างเป็นทางการของสถาปัตยกรรมของ Elbrus:
แผนของผู้พัฒนาแพลตฟอร์มฮาร์ดแวร์และซอฟต์แวร์ "Elbrus" เพื่อสร้างซูเปอร์คอมพิวเตอร์ที่มีประสิทธิภาพสูงสุด:
เทคโนโลยี Elbrus ของรัสเซียสำหรับคอมพิวเตอร์ส่วนบุคคล เซิร์ฟเวอร์ และซูเปอร์คอมพิวเตอร์:
บทความเก่าโดย Boris Babayan แต่ยังคงมีความเกี่ยวข้อง:
บทความเก่าโดย Mikhail Kuzminsky:
งานนำเสนอ MCST ข้อมูลทั่วไป:
ข้อมูลเกี่ยวกับ Alt OS สำหรับแพลตฟอร์ม Elbrus:
ที่มา: will.com