SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Xin chào độc giả Habr. Chúng tôi muốn chia sẻ một số tin tức rất tốt. Cuối cùng, chúng tôi đã chờ đợi quá trình sản xuất hàng loạt thực sự của thế hệ bộ xử lý Elbrus 8C mới của Nga. Về mặt chính thức, việc sản xuất hàng loạt được cho là bắt đầu vào đầu năm 2016, nhưng trên thực tế, việc sản xuất hàng loạt chỉ bắt đầu vào năm 2019 và khoảng 4000 bộ vi xử lý đã được xuất xưởng.

Gần như ngay lập tức sau khi bắt đầu sản xuất hàng loạt, các bộ xử lý này đã xuất hiện trong Aerodisk của chúng tôi, chúng tôi muốn cảm ơn NORSI-TRANS, công ty đã vui lòng cung cấp cho chúng tôi nền tảng phần cứng Yakhont UVM, hỗ trợ bộ xử lý Elbrus 8C, để chuyển phần mềm của hệ thống lưu trữ. Đây là một nền tảng phổ quát hiện đại đáp ứng tất cả các yêu cầu của MCST. Hiện tại, nền tảng này được sử dụng bởi người tiêu dùng đặc biệt và nhà khai thác viễn thông để đảm bảo thực hiện các hành động đã thiết lập trong các hoạt động tìm kiếm hoạt động.

Hiện tại, quá trình chuyển đổi đã được hoàn tất thành công và hiện tại hệ thống lưu trữ AERODISK đã có sẵn phiên bản với bộ xử lý Elbrus nội địa.

Trong bài viết này, chúng tôi sẽ nói về bản thân các bộ xử lý, lịch sử, kiến ​​trúc của chúng và tất nhiên là việc chúng tôi triển khai các hệ thống lưu trữ trên Elbrus.

Câu chuyện

Lịch sử của bộ vi xử lý Elbrus bắt nguồn từ thời Liên Xô. Năm 1973, tại Viện Cơ khí và Kỹ thuật máy tính mang tên SA Lebedev (được đặt theo tên của cùng một Sergei Lebedev, người trước đây đã lãnh đạo sự phát triển của máy tính Liên Xô đầu tiên MESM, và sau đó là BESM), sự phát triển của các hệ thống máy tính đa bộ xử lý có tên Elbrus đã bắt đầu. Vsevolod Sergeevich Burtsev giám sát quá trình phát triển và Boris Artashesovich Babayan, một trong những phó giám đốc thiết kế, cũng tham gia tích cực vào quá trình phát triển.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C
Vsevolod Sergeevich Burtsev

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C
Boris Artashesovich Babayan

Tất nhiên, khách hàng chính của dự án là các lực lượng vũ trang của Liên Xô, và loạt máy tính này cuối cùng đã được sử dụng thành công trong việc tạo ra các trung tâm điện toán chỉ huy và hệ thống bắn cho các hệ thống phòng thủ tên lửa, cũng như các hệ thống chuyên dụng khác .

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Máy tính Elbrus đầu tiên được hoàn thành vào năm 1978. Nó có kiến ​​trúc mô-đun và có thể bao gồm từ 1 đến 10 bộ xử lý dựa trên sơ đồ tích hợp trung bình. Tốc độ của cỗ máy này đạt 15 triệu phép tính/giây. Dung lượng RAM, phổ biến cho cả 10 bộ xử lý, lên tới 2 lũy thừa 20 của từ máy hoặc 64 MB.

Sau đó, hóa ra nhiều công nghệ được sử dụng trong quá trình phát triển Elbrus đã được nghiên cứu đồng thời trên thế giới và International Business Machine (IBM) đã tham gia vào chúng, nhưng không làm việc trong các dự án này, không giống như làm việc trên Elbrus. đã được hoàn thành và cuối cùng không dẫn đến việc tạo ra một sản phẩm hoàn chỉnh.

Theo Vsevolod Burtsev, các kỹ sư Liên Xô đã cố gắng áp dụng kinh nghiệm tiên tiến nhất của các nhà phát triển trong và ngoài nước. Kiến trúc của máy tính Elbrus cũng bị ảnh hưởng bởi máy tính Burroughs, sự phát triển của Hewlett-Packard, cũng như kinh nghiệm của các nhà phát triển BESM-6.

Nhưng đồng thời, nhiều sự phát triển là nguyên bản. Điều thú vị nhất về Elbrus-1 là kiến ​​trúc của nó.

Siêu máy tính được tạo ra đã trở thành máy tính đầu tiên ở Liên Xô sử dụng kiến ​​​​trúc siêu vô hướng. Việc sử dụng hàng loạt bộ xử lý siêu khối ở nước ngoài chỉ bắt đầu từ những năm 90 của thế kỷ trước với sự xuất hiện của bộ xử lý Intel Pentium giá cả phải chăng trên thị trường.

Ngoài ra, các bộ xử lý đầu vào-đầu ra đặc biệt có thể được sử dụng để tổ chức truyền các luồng dữ liệu giữa các thiết bị ngoại vi và RAM trong máy tính. Có thể có tới bốn bộ xử lý như vậy trong hệ thống, chúng hoạt động song song với bộ xử lý trung tâm và có bộ nhớ riêng.

Elbrus-2

Năm 1985, Elbrus nhận được sự tiếp nối hợp lý, máy tính Elbrus-2 được tạo ra và đưa vào sản xuất hàng loạt. Về kiến ​​​​trúc, nó không khác nhiều so với người tiền nhiệm nhưng sử dụng cơ sở phần tử mới, giúp tăng hiệu suất tổng thể lên gần 10 lần - từ 15 triệu thao tác mỗi giây lên 125 triệu. tăng lên 16 triệu từ 72 bit hoặc 144 MB. Băng thông tối đa của các kênh I / O Elbrus-2 là 120 MB / s.

"Elbrus-2" được sử dụng tích cực tại các trung tâm nghiên cứu hạt nhân ở Chelyabinsk-70 và Arzamas-16 ở MCC, trong hệ thống phòng thủ tên lửa A-135, cũng như tại các cơ sở quân sự khác.

Việc tạo ra Elbrus đã được các nhà lãnh đạo Liên Xô đánh giá cao. Nhiều kỹ sư đã được trao lệnh và huy chương. Nhà thiết kế chung Vsevolod Burtsev và một số chuyên gia khác đã nhận được giải thưởng nhà nước. Và Boris Babayan đã được trao tặng Huân chương Cách mạng Tháng Mười.

Những giải thưởng này rất xứng đáng, Boris Babayan sau đó đã nói:

“Năm 1978, chúng tôi chế tạo cỗ máy siêu vô hướng đầu tiên, Elbrus-1. Bây giờ ở phương Tây, họ chỉ tạo ra các siêu thanh của kiến ​​trúc này. Siêu vô hướng đầu tiên xuất hiện ở phương Tây vào năm 92, của chúng ta vào năm 78. Hơn nữa, phiên bản siêu vô hướng mà chúng tôi tạo ra tương tự như Pentium Pro mà Intel sản xuất năm 95.”

Keith Diefendorff, nhà phát triển Motorola 88110, một trong những bộ xử lý siêu vô hướng đầu tiên của phương Tây, đã viết:

“Vào năm 1978, gần 15 năm trước khi bộ xử lý siêu vô hướng đầu tiên của phương Tây xuất hiện, Elbrus-1 đã sử dụng bộ xử lý, với việc ban hành hai lệnh trong một chu kỳ, thay đổi thứ tự thực hiện lệnh, đổi tên các thanh ghi và thực thi theo giả định.”

Elbrus-3

Đó là năm 1986, và gần như ngay lập tức sau khi hoàn thành công việc trên Elbrus thứ hai, ITMiVT bắt đầu phát triển hệ thống Elbrus-3 mới sử dụng kiến ​​trúc bộ xử lý mới về cơ bản. Boris Babayan gọi cách tiếp cận này là “hậu siêu vô hướng”. Chính kiến ​​​​trúc này, sau này được gọi là VLIW / EPIC, trong tương lai (vào giữa những năm 90) bộ vi xử lý Intel Itanium đã bắt đầu sử dụng (và ở Liên Xô, những phát triển này bắt đầu vào năm 1986 và kết thúc vào năm 1991).

Trong tổ hợp máy tính này, ý tưởng kiểm soát rõ ràng tính song song của các hoạt động với sự trợ giúp của trình biên dịch lần đầu tiên được triển khai.

Năm 1991, chiếc máy tính đầu tiên và thật không may, chiếc máy tính Elbrus-3 duy nhất được phát hành, không thể điều chỉnh hoàn toàn, và sau sự sụp đổ của Liên Xô, không ai cần đến nó, và các phát triển và kế hoạch vẫn nằm trên giấy.

Bối cảnh cho kiến ​​trúc mới

Nhóm làm việc tại ITMiVT về việc tạo ra các siêu máy tính của Liên Xô đã không tan rã mà tiếp tục hoạt động như một công ty riêng biệt dưới tên MCST (Trung tâm Công nghệ SPARK-Moscow). Và vào đầu những năm 90, sự hợp tác tích cực giữa MCST và Sun Microsystems đã bắt đầu, nơi nhóm MCST tham gia phát triển bộ vi xử lý UltraSPARC.

Chính trong giai đoạn này, dự án kiến ​​trúc E2K đã nảy sinh, ban đầu được tài trợ bởi Sun. Sau đó, dự án trở nên hoàn toàn độc lập và tất cả tài sản trí tuệ dành cho nó vẫn thuộc về nhóm MCST.

“Nếu chúng tôi tiếp tục hợp tác với Sun trong lĩnh vực này, thì mọi thứ sẽ thuộc về Sun. Mặc dù 90% công việc đã được hoàn thành trước khi Sun xuất hiện.” (Boris Babayan)

kiến trúc E2K

Khi chúng ta thảo luận về kiến ​​trúc của bộ xử lý Elbrus, chúng ta thường nghe những lời phát biểu sau đây từ các đồng nghiệp trong ngành CNTT:

"Elbrus là một kiến ​​trúc RISC"
"Elbrus là kiến ​​trúc EPIC"
"Elbrus là kiến ​​trúc SPARC"

Trên thực tế, không có câu nào trong số này là hoàn toàn đúng, hoặc nếu có thì cũng chỉ đúng một phần.

Kiến trúc E2K là một kiến ​​trúc bộ xử lý gốc riêng biệt, các phẩm chất chính của E2K là hiệu quả năng lượng và khả năng mở rộng tuyệt vời, đạt được bằng cách chỉ định hoạt động song song rõ ràng. Kiến trúc E2K được phát triển bởi nhóm MCST và dựa trên kiến ​​trúc hậu siêu vô hướng (a la EPIC) với một số ảnh hưởng từ kiến ​​trúc SPARC (có trước đây là RISC). Đồng thời, MCST đã trực tiếp tham gia vào việc tạo ra ba trong số bốn kiến ​​trúc cơ bản (Superscalars, Post-Superscalars và SPARC). Thế giới thật nhỏ bé.

Để tránh nhầm lẫn trong tương lai, chúng tôi đã vẽ một sơ đồ đơn giản, mặc dù đã được đơn giản hóa nhưng thể hiện rất rõ nguồn gốc của kiến ​​trúc E2K.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Bây giờ nói thêm một chút về tên của kiến ​​​​trúc, liên quan đến nó cũng có sự hiểu lầm.

Trong nhiều nguồn khác nhau, bạn có thể tìm thấy các tên sau cho kiến ​​trúc này: "E2K", "Elbrus", "Elbrus 2000", ELBRUS ("Lập lịch sử dụng tài nguyên cơ bản rõ ràng", tức là lập kế hoạch rõ ràng cho việc sử dụng các tài nguyên cơ bản). Tất cả những cái tên này nói lên cùng một điều - về kiến ​​​​trúc, nhưng trong tài liệu kỹ thuật chính thức, cũng như trên các diễn đàn kỹ thuật, tên E2K được sử dụng để chỉ định kiến ​​​​trúc, vì vậy trong tương lai, nếu chúng ta đang nói về kiến ​​​​trúc bộ xử lý, chúng tôi sử dụng thuật ngữ "E2K" và nếu nói về một bộ xử lý cụ thể, thì chúng tôi sử dụng tên "Elbrus".

Các tính năng kỹ thuật của kiến ​​trúc E2K

Trong các kiến ​​trúc truyền thống như RISC hoặc CISC (x86, PowerPC, SPARC, MIPS, ARM), bộ xử lý nhận một luồng hướng dẫn được thiết kế để thực hiện tuần tự. Bộ xử lý có thể phát hiện các hoạt động độc lập và chạy chúng song song (siêu vô hướng) và thậm chí thay đổi thứ tự của chúng (không theo thứ tự). Tuy nhiên, phân tích phụ thuộc động và hỗ trợ thực thi không theo thứ tự có những hạn chế về số lượng lệnh được khởi chạy và phân tích trên mỗi chu kỳ. Ngoài ra, các khối tương ứng bên trong bộ xử lý tiêu thụ một lượng năng lượng đáng kể và việc triển khai phức tạp nhất của chúng đôi khi dẫn đến các vấn đề về độ ổn định hoặc bảo mật.

Trong kiến ​​trúc E2K, công việc chính là phân tích các phụ thuộc và tối ưu hóa thứ tự các thao tác được trình biên dịch đảm nhận. Bộ xử lý nhận được cái gọi là. hướng dẫn rộng, mỗi hướng dẫn mã hóa cho tất cả các thiết bị điều hành bộ xử lý phải được khởi chạy ở một chu kỳ đồng hồ nhất định. Bộ xử lý không bắt buộc phải phân tích sự phụ thuộc giữa các toán hạng hoặc thao tác hoán đổi giữa các lệnh rộng: trình biên dịch thực hiện tất cả điều này dựa trên phân tích mã nguồn và lập kế hoạch tài nguyên bộ xử lý. Kết quả là, phần cứng bộ xử lý có thể đơn giản và kinh tế hơn.

Trình biên dịch có thể phân tích cú pháp mã nguồn kỹ lưỡng hơn nhiều so với phần cứng RISC/CISC của bộ xử lý và tìm thấy nhiều hoạt động độc lập hơn. Do đó, kiến ​​trúc E2K có nhiều đơn vị thực thi song song hơn so với kiến ​​trúc truyền thống.

Các tính năng hiện tại của kiến ​​trúc E2K:

  • 6 kênh đơn vị logic số học (ALU) hoạt động song song.
  • Tệp thanh ghi gồm 256 thanh ghi 84-bit.
  • Hỗ trợ phần cứng cho các chu kỳ, bao gồm cả những chu kỳ có đường ống. Tăng hiệu quả sử dụng tài nguyên của bộ xử lý.
  • Bơm trước dữ liệu không đồng bộ có thể lập trình với các kênh đọc riêng biệt. Cho phép bạn ẩn độ trễ khi truy cập bộ nhớ và tận dụng tối đa ALU.
  • Hỗ trợ tính toán suy đoán và vị từ một bit. Cho phép bạn giảm số lần chuyển đổi và thực hiện song song một số nhánh của chương trình.
  • Một lệnh rộng có khả năng chỉ định tối đa 23 thao tác trong một chu kỳ đồng hồ với mức lấp đầy tối đa (hơn 33 thao tác khi đóng gói toán hạng vào hướng dẫn vectơ).

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

thi đua x86

Ngay cả ở giai đoạn thiết kế kiến ​​trúc, các nhà phát triển đã hiểu tầm quan trọng của việc hỗ trợ phần mềm được viết cho kiến ​​trúc Intel x86. Đối với điều này, một hệ thống đã được triển khai để dịch động (nghĩa là trong quá trình thực thi chương trình hoặc “nhanh chóng”) mã nhị phân x86 thành mã bộ xử lý kiến ​​trúc E2K. Hệ thống này có thể hoạt động cả ở chế độ ứng dụng (theo cách của RƯỢU) và ở chế độ tương tự như trình ảo hóa (sau đó có thể chạy toàn bộ HĐH khách cho kiến ​​​​trúc x86).

Nhờ một số cấp độ tối ưu hóa, có thể đạt được tốc độ cao của mã được dịch. Chất lượng mô phỏng kiến ​​trúc x86 được khẳng định bằng việc khởi chạy thành công hơn 20 hệ điều hành (bao gồm một số phiên bản Windows) và hàng trăm ứng dụng trên hệ thống máy tính Elbrus.

Chế độ thực thi chương trình được bảo vệ

Một trong những ý tưởng thú vị nhất kế thừa từ kiến ​​trúc Elbrus-1 và Elbrus-2 là cái gọi là thực thi chương trình an toàn. Bản chất của nó là đảm bảo rằng chương trình chỉ hoạt động với dữ liệu được khởi tạo, để kiểm tra tất cả các truy cập bộ nhớ xem có thuộc phạm vi địa chỉ hợp lệ hay không, để cung cấp khả năng bảo vệ giữa các mô-đun (ví dụ: để bảo vệ chương trình gọi khỏi lỗi trong thư viện). Tất cả các kiểm tra này được thực hiện trong phần cứng. Đối với chế độ được bảo vệ, có một trình biên dịch chính thức và thư viện hỗ trợ thời gian chạy. Đồng thời, cần hiểu rằng các hạn chế được áp đặt dẫn đến việc không thể tổ chức thực thi, chẳng hạn như mã được viết bằng C ++.

Ngay cả trong chế độ hoạt động thông thường, "không được bảo vệ" của bộ xử lý Elbrus, vẫn có những tính năng làm tăng độ tin cậy của hệ thống. Do đó, ngăn xếp thông tin ràng buộc (chuỗi địa chỉ trả về cho các lệnh gọi thủ tục) tách biệt với ngăn xếp dữ liệu người dùng và không thể truy cập được đối với các cuộc tấn công như vậy được sử dụng trong vi-rút như giả mạo địa chỉ trả về.

Được thiết kế qua nhiều năm, nó không chỉ bắt kịp và vượt trội so với các kiến ​​trúc cạnh tranh về hiệu suất và khả năng mở rộng trong tương lai, mà còn cung cấp khả năng bảo vệ chống lại các lỗi gây bệnh cho x86/amd64. Dấu trang như 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) và những thứ tương tự.

Bảo vệ hiện đại chống lại các lỗ hổng được tìm thấy trong kiến ​​trúc x86/amd64 dựa trên các bản vá ở cấp hệ điều hành. Đó là lý do tại sao hiệu suất giảm trên các thế hệ bộ xử lý hiện tại và trước đây của các kiến ​​trúc này rất đáng chú ý và nằm trong khoảng từ 30% đến 80%. Chúng tôi, với tư cách là những người dùng tích cực của bộ xử lý x86, biết về điều này, đau khổ và tiếp tục “ăn xương rồng”, nhưng sự hiện diện của một giải pháp cho những vấn đề này đối với chúng tôi (và kết quả là đối với khách hàng của chúng tôi) là một lợi ích chắc chắn, đặc biệt nếu giải pháp là tiếng Nga.

Технические характеристики

Dưới đây là các đặc điểm kỹ thuật chính thức của bộ xử lý Elbrus thuộc các thế hệ trước (4C), hiện tại (8C), mới (8CB) và tương lai (16C) so với các bộ xử lý Intel x86 tương tự.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Ngay cả khi nhìn lướt qua bảng này cũng cho thấy (và điều này rất hài lòng) rằng tồn đọng công nghệ của các bộ xử lý trong nước, dường như không thể vượt qua 10 năm trước, giờ đây có vẻ khá nhỏ và vào năm 2021 với sự ra mắt của Elbrus-16C (trong số đó những thứ khác, sẽ hỗ trợ ảo hóa) sẽ được giảm xuống khoảng cách tối thiểu.

SHD AERODISK trên bộ xử lý Elbrus 8C

Chúng tôi chuyển từ lý thuyết sang thực hành. Là một phần của liên minh chiến lược của MCST, Aerodisk, Basalt SPO (trước đây là Alt Linux) và NORSI-TRANS, một hệ thống lưu trữ dữ liệu đã được phát triển và đưa vào hoạt động, hiện tại nếu không muốn nói là tốt nhất về bảo mật, chức năng, chi phí và hiệu suất , theo ý kiến ​​​​của chúng tôi, một giải pháp xứng đáng không thể phủ nhận có thể đảm bảo mức độ độc lập công nghệ phù hợp của Tổ quốc chúng ta.
Bây giờ các chi tiết ...

Phần cứng

Phần cứng của hệ thống lưu trữ được triển khai trên cơ sở nền tảng phổ quát Yakhont UVM của công ty NORSI-TRANS. Nền tảng Yakhont UVM đã nhận được trạng thái của thiết bị viễn thông có nguồn gốc từ Nga và được đưa vào sổ đăng ký thống nhất các sản phẩm điện tử vô tuyến của Nga. Hệ thống bao gồm hai bộ điều khiển lưu trữ riêng biệt (mỗi bộ 2U), được kết nối với nhau bằng kết nối Ethernet 1G hoặc 10G, cũng như với các kệ đĩa dùng chung bằng kết nối SAS.

Tất nhiên, điều này không đẹp bằng định dạng “Cụm trong hộp” (khi bộ điều khiển và đĩa có bảng nối đa năng chung được lắp đặt trong một khung 2U) mà chúng ta thường sử dụng, nhưng trong tương lai gần, nó cũng sẽ khả dụng. Điều chính ở đây là nó hoạt động tốt, nhưng chúng ta sẽ nghĩ về "cung tên" sau.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Dưới nắp máy, mỗi bộ điều khiển có một bo mạch chủ bộ xử lý đơn với bốn khe cắm RAM (DDR3 cho bộ xử lý 8C). Ngoài ra, trên mỗi bộ điều khiển còn có 4 cổng Ethernet 1G (hai trong số đó được phần mềm AERODISK ENGINE sử dụng làm dịch vụ) và ba khe cắm PCIe cho bộ điều hợp Back-end (SAS) và Front-end (Ethernet hoặc FibreChannel).

Là ổ đĩa khởi động, chúng tôi sử dụng ổ đĩa SSD SATA của Nga từ GS Nanotech, chúng tôi đã nhiều lần thử nghiệm và sử dụng trong các dự án.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Khi chúng tôi gặp nền tảng lần đầu tiên, chúng tôi đã kiểm tra nó một cách cẩn thận. Chúng tôi không có câu hỏi nào về chất lượng lắp ráp và hàn, mọi thứ đều được thực hiện gọn gàng và đáng tin cậy.

Hệ điều hành

Phiên bản OS Alt 8SP để chứng nhận được sử dụng làm HĐH. Trong tương lai gần, chúng tôi dự định tạo một kho lưu trữ có thể cắm và cập nhật liên tục cho Alt OS bằng phần mềm lưu trữ Aerodisk.

Phiên bản phân phối này được xây dựng trên phiên bản ổn định hiện tại của nhân Linux 4.9 dành cho E2K (một nhánh được các chuyên gia MCST hỗ trợ lâu dài), bổ sung các bản vá cho chức năng và bảo mật. Tất cả các gói trong Alt OS đều được xây dựng trực tiếp trên Elbrus bằng cách sử dụng hệ thống xây dựng giao dịch ban đầu của dự án Nhóm ALT Linux, giúp giảm chi phí lao động cho chính quá trình chuyển giao và chú ý hơn đến chất lượng sản phẩm.

Bất kỳ bản phát hành nào của Alt OS cho Elbrus đều có thể được mở rộng đáng kể về mặt chức năng bằng cách sử dụng kho lưu trữ có sẵn cho nó (từ khoảng 6 nghìn gói nguồn cho phiên bản thứ tám đến khoảng 12 nghìn gói cho phiên bản thứ chín).

Sự lựa chọn cũng được đưa ra vì Basalt SPO, nhà phát triển của Alt OS, đang tích cực làm việc với các nhà phát triển phần mềm và thiết bị khác trên nhiều nền tảng khác nhau, đảm bảo sự tương tác liền mạch trong hệ thống phần cứng và phần mềm.

Hệ thống lưu trữ phần mềm

Khi chuyển, chúng tôi ngay lập tức từ bỏ ý định sử dụng mô phỏng x2 được hỗ trợ trong E86K và bắt đầu làm việc trực tiếp với bộ xử lý (may mắn thay, Alt đã có các công cụ cần thiết cho việc này).

Trong số những thứ khác, chế độ thực thi gốc cung cấp khả năng bảo mật tốt hơn (ba ngăn xếp phần cứng giống nhau thay vì một) và tăng hiệu suất (không cần phân bổ một hoặc hai lõi trong số tám lõi để trình dịch nhị phân hoạt động và trình biên dịch thực hiện công việc của nó công việc tốt hơn JIT).

Trên thực tế, việc triển khai E2K của AERODISK ENGINE hỗ trợ hầu hết các chức năng lưu trữ hiện có trong x86. Phiên bản hiện tại của AERODISK ENGINE (A-CORE phiên bản 2.30) được sử dụng làm phần mềm hệ thống lưu trữ

Không có bất kỳ sự cố nào trên E2K, các chức năng sau đã được giới thiệu và thử nghiệm để sử dụng trong sản phẩm:

  • Khả năng chịu lỗi cho tối đa hai bộ điều khiển và I/O đa đường (mpio)
  • Chặn và truy cập tệp với khối lượng nhỏ (nhóm RDG, DDP; giao thức FC, iSCSI, NFS, SMB bao gồm tích hợp Active Directory)
  • Các cấp độ RAID khác nhau lên đến gấp ba lần (bao gồm cả khả năng sử dụng hàm tạo RAID)
  • Lưu trữ kết hợp (kết hợp SSD và HDD trong cùng một nhóm, tức là bộ đệm và phân tầng)
  • Tùy chọn tiết kiệm không gian với tính năng sao chép và nén
  • Ảnh chụp nhanh ROW, bản sao và các tùy chọn sao chép khác nhau
  • Và các tính năng nhỏ nhưng hữu ích khác như QoS, hotspar toàn cầu, VLAN, BOND, v.v.

Trên thực tế, trên E2K, chúng tôi đã quản lý để có được tất cả chức năng của mình, ngoại trừ bộ điều khiển đa năng (hơn hai) và bộ lập lịch I / O đa luồng, cho phép chúng tôi tăng hiệu suất của các nhóm flash lên 20-30%. .

Nhưng tất nhiên, chúng tôi cũng sẽ thêm các chức năng hữu ích này, vấn đề là thời gian.

Một chút về hiệu suất

Tất nhiên, sau khi vượt qua thành công các bài kiểm tra chức năng cơ bản của hệ thống lưu trữ, chúng tôi bắt đầu thực hiện các bài kiểm tra tải.

Ví dụ: trên hệ thống lưu trữ bộ điều khiển kép (2xCPU E8C 1.3 Ghz, RAM 32 GB + 4 SSD SAS 800GB 3DWD), trong đó bộ đệm RAM đã bị tắt, chúng tôi đã tạo hai nhóm DDP với cấp RAID-10 chính và hai 500G LUN và kết nối các LUN này qua iSCSI (Ethernet 10G) với máy chủ Linux. Và đã thực hiện một trong những bài kiểm tra cơ bản hàng giờ trên các khối tải tuần tự nhỏ bằng chương trình FIO.

Những kết quả đầu tiên khá khả quan.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Tải trên bộ xử lý trung bình ở mức 60%, tức là. đây là mức cơ bản mà tại đó bộ lưu trữ có thể hoạt động an toàn.

Vâng, điều này còn lâu mới đạt được mức tải cao và điều này rõ ràng là không đủ đối với các DBMS hiệu suất cao, nhưng, như thực tế của chúng tôi cho thấy, những đặc điểm này đủ cho 80% nhiệm vụ chung mà hệ thống lưu trữ được sử dụng.

Một lát sau, chúng tôi dự định quay lại với một báo cáo chi tiết về các bài kiểm tra tải của Elbrus với tư cách là một nền tảng lưu trữ.

Tương lai tươi sáng

Như chúng tôi đã viết ở trên, việc sản xuất hàng loạt Elbrus 8C thực sự chỉ mới bắt đầu gần đây - vào đầu năm 2019 và đến tháng 4000, khoảng 4 bộ xử lý đã được xuất xưởng. Để so sánh, chỉ có 5000 bộ xử lý Elbrus XNUMXC thế hệ trước được sản xuất trong toàn bộ thời gian sản xuất, vì vậy có một tiến bộ.

Rõ ràng đây là giọt nước tràn ly, ngay cả đối với thị trường Nga, nhưng con đường sẽ do người đi bộ làm chủ.
Việc phát hành vài chục nghìn bộ xử lý Elbrus 2020C đã được lên kế hoạch vào năm 8 và đây đã là một con số nghiêm trọng. Ngoài ra, trong năm 2020, bộ xử lý Elbrus-8SV sẽ được nhóm MCST đưa vào sản xuất hàng loạt.

Các kế hoạch sản xuất như vậy là một ứng dụng cho một thị phần rất đáng kể trong toàn bộ thị trường bộ xử lý máy chủ trong nước.

Kết quả là, ở đây và bây giờ chúng ta có một bộ xử lý tốt và hiện đại của Nga với chiến lược phát triển rõ ràng và theo quan điểm của chúng tôi là đúng đắn, trên cơ sở đó có hệ thống lưu trữ dữ liệu do Nga sản xuất được chứng nhận và an toàn nhất (và trong tương lai, một hệ thống ảo hóa trên Elbrus-16C). Hệ thống của Nga hiện có thể thực hiện được trong điều kiện hiện đại.

Chúng ta thường thấy trong tin tức về những thất bại kinh hoàng tiếp theo của các công ty tự hào gọi mình là nhà sản xuất Nga, nhưng thực tế lại tham gia dán lại nhãn mà không thêm bất kỳ giá trị nào của riêng họ vào sản phẩm của nhà sản xuất nước ngoài, ngoại trừ phần đánh dấu của họ. Thật không may, những công ty như vậy đã phủ bóng đen lên tất cả các nhà phát triển và nhà sản xuất thực sự của Nga.

Với bài viết này, chúng tôi muốn chỉ ra rõ ràng rằng ở nước ta đã, đang và sẽ có những công ty thực sự tạo ra các hệ thống CNTT phức tạp hiện đại và đang tích cực phát triển, và việc thay thế nhập khẩu trong CNTT không phải là một điều tục tĩu, mà là một thực tế trong đó chúng ta đều sống. Bạn không thể yêu thực tế này, bạn có thể chỉ trích nó, hoặc bạn có thể làm việc và làm cho nó tốt hơn.

SHD AERODISK trên bộ xử lý nội địa Elbrus 8C

Sự sụp đổ của Liên Xô đã có lúc ngăn cản nhóm những người sáng tạo Elbrus trở thành người chơi nổi bật trong thế giới bộ vi xử lý và buộc nhóm phải tìm kiếm nguồn tài trợ cho sự phát triển của họ ở nước ngoài. Nó đã được tìm thấy, công việc đã được hoàn thành và tài sản trí tuệ đã được lưu lại, vì vậy tôi muốn gửi lời cảm ơn sâu sắc đến những người này!

Đó là tất cả cho bây giờ, xin vui lòng viết bình luận, câu hỏi của bạn và, tất nhiên, những lời chỉ trích. Chúng tôi luôn hạnh phúc.

Ngoài ra, thay mặt cho toàn bộ công ty Aerodisk, tôi muốn chúc mừng toàn thể cộng đồng CNTT Nga nhân dịp Năm mới và Giáng sinh sắp tới, chúc 100% thời gian hoạt động - và các bản sao lưu sẽ không hữu ích với bất kỳ ai trong năm mới))).

Tài liệu được sử dụng

Một bài viết mô tả chung về công nghệ, kiến ​​trúc và tính cách:
https://www.ixbt.com/cpu/e2k-spec.html

Một lịch sử ngắn gọn của máy tính dưới tên "Elbrus":
https://topwar.ru/34409-istoriya-kompyuterov-elbrus.html

Bài viết chung về kiến ​​trúc e2k:
https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D1%8C%D0%B1%D1%80%D1%83%D1%81_2000

Bài viết về thế hệ thứ 4 (Elbrus-8S) và thế hệ thứ 5 (Elbrus-8SV, 2020):
https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D1%8C%D0%B1%D1%80%D1%83%D1%81-8%D0%A1

Thông số kỹ thuật của thế hệ bộ xử lý thứ 6 tiếp theo (Elbrus-16SV, 2021):
https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D1%8C%D0%B1%D1%80%D1%83%D1%81-16%D0%A1

Mô tả chính thức về kiến ​​trúc của Elbrus:
http://www.elbrus.ru/elbrus_arch

Kế hoạch của các nhà phát triển nền tảng phần cứng và phần mềm "Elbrus" để tạo ra một siêu máy tính có hiệu suất exascale:
http://www.mcst.ru/files/5a9eb2/a10cd8/501810/000003/kim_a._k._perekatov_v._i._feldman_v._m._na_puti_k_rossiyskoy_ekzasisteme_plany_razrabotchikov.pdf

Công nghệ Elbrus của Nga cho máy tính cá nhân, máy chủ và siêu máy tính:
http://www.mcst.ru/files/5472ef/770cd8/50ea05/000001/rossiyskietehnologiielbrus-it-edu9-201410l.pdf

Một bài viết cũ của Boris Babayan, nhưng vẫn còn liên quan:
http://www.mcst.ru/e2k_arch.shtml

Bài viết cũ của Mikhail Kuzminsky:
https://www.osp.ru/os/1999/05-06/179819

Trình bày MCST, thông tin chung:
https://yadi.sk/i/HDj7d31jTDlDgA

Thông tin về Alt OS cho nền tảng Elbrus:
https://altlinux.org/эльбрус

https://sdelanounas.ru/blog/shigorin/

Nguồn: www.habr.com

Thêm một lời nhận xét