SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Ողջույն Habr-ի ընթերցողներ: Մենք ցանկանում ենք կիսվել մի շատ լավ նորությամբ: Վերջապես սպասեցինք ռուսական Elbrus 8C պրոցեսորների նոր սերնդի իրական սերիական արտադրությանը։ Պաշտոնապես սերիական արտադրությունը պետք է սկսվեր դեռևս 2016 թվականին, սակայն, ըստ էության, դա զանգվածային արտադրություն էր, որը սկսվել է միայն 2019 թվականին և արդեն թողարկվել է մոտ 4000 պրոցեսոր։

Զանգվածային արտադրության մեկնարկից գրեթե անմիջապես հետո այս պրոցեսորները հայտնվեցին մեր Aerodisk-ում, ինչի համար ցանկանում ենք շնորհակալություն հայտնել NORSI-TRANS-ին, որը սիրով մեզ տրամադրեց իր ապարատային հարթակը Yakhont UVM, որն աջակցում է Elbrus 8C պրոցեսորներին՝ ծրագրային մասի տեղափոխման համար: պահեստավորման համակարգը: Սա ժամանակակից ունիվերսալ հարթակ է, որը համապատասխանում է MCST-ի բոլոր պահանջներին: Այս պահին հարթակն օգտագործվում է հատուկ սպառողների և հեռահաղորդակցության օպերատորների կողմից՝ օպերատիվ-որոնողական գործունեության ընթացքում սահմանված գործողությունների իրականացումն ապահովելու համար։

Այս պահին տեղափոխումը հաջողությամբ ավարտվել է, և այժմ AERODISK պահեստավորման համակարգը հասանելի է ներքին Elbrus պրոցեսորներով տարբերակով:

Այս հոդվածում մենք կխոսենք հենց պրոցեսորների, դրանց պատմության, ճարտարապետության և, իհարկե, Elbrus-ում պահեստավորման համակարգերի ներդրման մասին:

Պատմություն

Elbrus պրոցեսորների պատմությունը սկսվում է Խորհրդային Միության ժամանակներից: Նուրբ մեխանիկայի և համակարգչային տեխնիկայի ինստիտուտում 1973 թ Ս.Ա. Լեբեդևի (անունը նույն Սերգեյ Լեբեդևի անունով, ով նախկինում ղեկավարում էր առաջին խորհրդային համակարգչային MESM-ի, իսկ ավելի ուշ՝ BESM-ի մշակումը), սկսվեց Elbrus կոչվող բազմապրոցեսորային հաշվողական համակարգերի մշակումը։ Մշակումը ղեկավարում էր Վսևոլոդ Սերգեևիչ Բուրցևը, իսկ մշակմանը ակտիվորեն մասնակցում էր նաև Բորիս Արտաշեսովիչ Բաբայանը, ով գլխավոր դիզայներներից էր։

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա
Վսևոլոդ Սերգեևիչ Բուրցև

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա
Բորիս Արտաշեսովիչ Բաբայան

Նախագծի հիմնական պատվիրատուն, իհարկե, ԽՍՀՄ զինված ուժերն էին, և համակարգիչների այս շարքը, ի վերջո, հաջողությամբ օգտագործվեց հակահրթիռային պաշտպանության համակարգերի հրամանատարական հաշվողական կենտրոնների և կրակային համակարգերի, ինչպես նաև այլ հատուկ նշանակության համակարգերի ստեղծման մեջ: .

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Առաջին Elbrus համակարգիչը ավարտվել է 1978 թվականին։ Այն ուներ մոդուլային ճարտարապետություն և կարող էր ներառել 1-ից մինչև 10 պրոցեսոր՝ հիմնված միջին ինտեգրացիոն սխեմաների վրա: Այս մեքենայի արագությունը հասնում էր վայրկյանում 15 միլիոն գործողության։ Օպերատիվ հիշողության ծավալը, որը ընդհանուր էր բոլոր 10 պրոցեսորների համար, կազմում էր մեքենայական բառերի 2-ից մինչև 20-րդ հզորությունը կամ 64 ՄԲ։

Հետագայում պարզվեց, որ Էլբրուսի մշակման մեջ օգտագործված տեխնոլոգիաներից շատերը միաժամանակ ուսումնասիրվել են աշխարհում, և դրանցով զբաղվել է International Business Machine (IBM), սակայն այդ նախագծերի վրա աշխատանքը, ի տարբերություն Էլբրուսի վրա աշխատանքի, չի իրականացվել։ ավարտվեցին և ի վերջո չհանգեցրին պատրաստի արտադրանքի ստեղծմանը:

Ըստ Վսևոլոդ Բուրցևի՝ խորհրդային ինժեներները փորձել են կիրառել ինչպես ներքին, այնպես էլ արտասահմանյան մշակողների ամենաառաջադեմ փորձը։ Elbrus համակարգիչների ճարտարապետության վրա ազդել են նաև Բերոուզի համակարգիչները, Hewlett-Packard-ի զարգացումները, ինչպես նաև BESM-6 մշակողների փորձը։

Բայց միևնույն ժամանակ շատ զարգացումներ ինքնատիպ էին. Էլբրուս-1-ի ամենահետաքրքիրը նրա ճարտարապետությունն էր:

Ստեղծված սուպերհամակարգիչը դարձավ ԽՍՀՄ-ի առաջին համակարգիչը, որն օգտագործեց սուպերսկալյար ճարտարապետություն։ Արտերկրում սուպերսկալար պրոցեսորների զանգվածային օգտագործումը սկսվել է միայն անցյալ դարի 90-ական թվականներին՝ մատչելի Intel Pentium պրոցեսորների շուկայում հայտնվելով։

Բացի այդ, հատուկ մուտքային-ելքային պրոցեսորներ կարող են օգտագործվել համակարգչի ծայրամասային սարքերի և RAM-ի միջև տվյալների հոսքերի փոխանցումը կազմակերպելու համար: Համակարգում կարող էր լինել մինչև չորս այդպիսի պրոցեսոր, նրանք աշխատում էին կենտրոնական պրոցեսորի հետ զուգահեռ և ունեին իրենց հատուկ հիշողությունը։

Էլբրուս-2

1985 թվականին Էլբրուսը ստացավ իր տրամաբանական շարունակությունը, ստեղծվեց Elbrus-2 համակարգիչը և ուղարկվեց զանգվածային արտադրության։ Ճարտարապետության առումով այն շատ չէր տարբերվում իր նախորդից, բայց օգտագործեց նոր տարրերի բազա, որը հնարավորություն տվեց բարձրացնել ընդհանուր կատարումը գրեթե 10 անգամ՝ վայրկյանում 15 միլիոն գործողությունից մինչև 125 միլիոն: Համակարգչի RAM-ի քանակը ավելացել է մինչև 16 միլիոն 72-բիթանոց բառ կամ 144 ՄԲ: Elbrus-2 I / O ալիքների առավելագույն թողունակությունը 120 ՄԲ / վ էր:

«Էլբրուս-2»-ն ակտիվորեն օգտագործվել է Չելյաբինսկ-70-ի և Արզամաս-16-ի միջուկային հետազոտական ​​կենտրոններում՝ ՀՄԿ-ում, Ա-135 հակահրթիռային պաշտպանության համակարգում, ինչպես նաև այլ ռազմական օբյեկտներում։

Էլբրուսի ստեղծումը պատշաճ կերպով գնահատվել է Խորհրդային Միության ղեկավարների կողմից։ Շատ ինժեներներ պարգևատրվել են շքանշաններով և մեդալներով։ Գլխավոր դիզայներ Վսեվոլոդ Բուրցևը և մի շարք այլ մասնագետներ արժանացել են պետական ​​մրցանակների։ Իսկ Բորիս Բաբայանը պարգեւատրվել է Հոկտեմբերյան հեղափոխության շքանշանով։

Այս մրցանակներն ավելի քան արժանի են, Բորիս Բաբայանն ավելի ուշ ասաց.

«1978 թվականին մենք պատրաստեցինք առաջին սուպերսկալարային մեքենան՝ Elbrus-1-ը: Այժմ Արևմուտքում միայն այս ճարտարապետության սուպերսկալարներ են պատրաստում: Առաջին սուպերսկալարը հայտնվել է Արևմուտքում 92 թվականին, մերը՝ 78 թվականին։ Ավելին, մեր պատրաստած սուպերսկալարի տարբերակը նման է Pentium Pro-ին, որը Intel-ը պատրաստել է 95 թվականին»։

Պատմական գերազանցության մասին այս խոսքերը հաստատվում են նաև ԱՄՆ-ում, Արևմտյան առաջին սուպերսկալար պրոցեսորներից մեկի՝ Motorola 88110-ի մշակող Քիթ Դիֆենդորֆը գրել է.

«1978 թվականին, արևմտյան առաջին գերսկալյար պրոցեսորների հայտնվելուց գրեթե 15 տարի առաջ, Elbrus-1-ը օգտագործեց պրոցեսոր՝ մեկ ցիկլում երկու հրահանգների թողարկմամբ՝ փոխելով հրահանգների կատարման կարգը, վերանվանելով գրանցամատյանները և կատարելով ենթադրություն»։

Էլբրուս-3

Դա 1986 թվականն էր, և երկրորդ Էլբրուսի վրա աշխատանքների ավարտից գրեթե անմիջապես հետո ITMiVT-ն սկսեց մշակել նոր Elbrus-3 համակարգը՝ օգտագործելով հիմնովին նոր պրոցեսորային ճարտարապետություն: Բորիս Բաբայանն այս մոտեցումն անվանեց «հետսուպերսկալար»։ Հենց այս ճարտարապետությունը, որը հետագայում կոչվեց VLIW / EPIC, ապագայում (90-ականների կեսերին) սկսեցին օգտագործել Intel Itanium պրոցեսորները (իսկ ԽՍՀՄ-ում այդ զարգացումները սկսվեցին 1986-ին և ավարտվեցին 1991-ին):

Այս հաշվողական համալիրում սկզբում իրականացվել են կոմպիլյատորի օգնությամբ գործողությունների զուգահեռության հստակ վերահսկման գաղափարները։

1991 թվականին թողարկվեց առաջին և, ցավոք, միակ Elbrus-3 համակարգիչը, որը հնարավոր չէր ամբողջությամբ կարգավորել, իսկ Խորհրդային Միության փլուզումից հետո այն ոչ մեկին պետք չէր, և զարգացումներն ու ծրագրերը մնացին թղթի վրա։

Նոր ճարտարապետության նախապատմություն

Թիմը, որն աշխատում էր ITMiVT-ում խորհրդային սուպերհամակարգիչների ստեղծման վրա, չկոտրվեց, այլ շարունակեց աշխատել որպես առանձին ընկերություն MCST (Մոսկվայի SPARK-տեխնոլոգիաների կենտրոն) անունով: Իսկ 90-ականների սկզբին սկսվեց ակտիվ համագործակցությունը MCST-ի և Sun Microsystems-ի միջև, որտեղ MCST թիմը մասնակցեց UltraSPARC միկրոպրոցեսորի մշակմանը։

Հենց այս ժամանակահատվածում առաջացավ E2K ճարտարապետական ​​նախագիծը, որն ի սկզբանե ֆինանսավորվում էր Sun-ի կողմից։ Հետագայում նախագիծը դարձավ լիովին անկախ, և դրա համար ողջ մտավոր սեփականությունը մնաց MCST թիմին:

«Եթե մենք շարունակեինք աշխատել Sun-ի հետ այս ոլորտում, ապա ամեն ինչ կպատկաներ Sun-ին: Թեև աշխատանքի 90%-ը արվել է մինչև Արևի գալը»։ (Բորիս Բաբայան)

E2K ճարտարապետություն

Երբ մենք քննարկում ենք Elbrus պրոցեսորների ճարտարապետությունը, շատ հաճախ մենք լսում ենք ՏՏ ոլորտի մեր գործընկերների հետևյալ հայտարարությունները.

«Էլբրուսը RISC ճարտարապետություն է»
«Էլբրուսը էպիկական ճարտարապետություն է»
«Էլբրուսը SPARC-ճարտարապետություն է»

Իրականում այս հայտարարություններից և ոչ մեկը լիովին ճիշտ չէ, կամ եթե այդպես է, ապա դա միայն մասամբ է ճիշտ:

E2K ճարտարապետությունը առանձին օրիգինալ պրոցեսորային ճարտարապետություն է, E2K-ի հիմնական որակներն են էներգաարդյունավետությունը և գերազանց մասշտաբայնությունը, որոնք ձեռք են բերվում գործառնությունների բացահայտ զուգահեռությունը նշելով: E2K ճարտարապետությունը մշակվել է MCST թիմի կողմից և հիմնված է հետսուպերսկալար ճարտարապետության վրա (a la EPIC)՝ SPARC ճարտարապետության որոշ ազդեցությամբ (RISC անցյալով): Միևնույն ժամանակ, MCST-ն ուղղակիորեն ներգրավված էր չորս հիմնական ճարտարապետություններից երեքի ստեղծման մեջ (Superscalars, Post-Superscalars և SPARC): Աշխարհն իսկապես փոքր է։

Ապագայում շփոթությունից խուսափելու համար մենք գծել ենք մի պարզ դիագրամ, որը թեև պարզեցված է, բայց շատ հստակ ցույց է տալիս E2K ճարտարապետության արմատները:

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Հիմա մի քիչ ճարտարապետության անվան մասին, որի առնչությամբ նույնպես թյուրիմացություն կա։

Տարբեր աղբյուրներում կարող եք գտնել այս ճարտարապետության հետևյալ անունները՝ «E2K», «Elbrus», «Elbrus 2000», ELBRUS («ExpLicit Basic Resources Utilization Scheduling», այսինքն՝ հիմնական ռեսուրսների օգտագործման հստակ պլանավորում): Այս բոլոր անունները խոսում են նույն բանի մասին՝ ճարտարապետության մասին, բայց պաշտոնական տեխնիկական փաստաթղթերում, ինչպես նաև տեխնիկական ֆորումներում, E2K անվանումը օգտագործվում է ճարտարապետությունը նշանակելու համար, ուստի ապագայում, եթե մենք խոսում ենք պրոցեսորի ճարտարապետության մասին, մենք օգտագործում ենք «E2K» տերմինը, իսկ եթե կոնկրետ պրոցեսորի մասին է, ապա օգտագործում ենք «Էլբրուս» անվանումը։

E2K ճարտարապետության տեխնիկական առանձնահատկությունները

Ավանդական ճարտարապետություններում, ինչպիսիք են RISC կամ CISC (x86, PowerPC, SPARC, MIPS, ARM), պրոցեսորը ստանում է հրահանգների հոսք, որոնք նախատեսված են հաջորդական կատարման համար: Պրոցեսորը կարող է հայտնաբերել անկախ գործողություններ և դրանք զուգահեռաբար գործարկել (սուպերսկալար) և նույնիսկ փոխել դրանց հերթականությունը (անսարք): Այնուամենայնիվ, կախվածության դինամիկ վերլուծությունը և անկանոն կատարման աջակցությունն ունի իր սահմանափակումները՝ յուրաքանչյուր ցիկլի ընթացքում գործարկվող և վերլուծված հրամանների քանակի առումով: Բացի այդ, պրոցեսորի ներսում համապատասխան բլոկները սպառում են զգալի քանակությամբ էներգիա, և դրանց ամենաբարդ իրականացումը երբեմն հանգեցնում է կայունության կամ անվտանգության խնդիրների:

E2K ճարտարապետության մեջ կախվածությունները վերլուծելու և գործողությունների հերթականությունը օպտիմալացնելու հիմնական աշխատանքը ստանձնում է կոմպիլյատորը: Պրոցեսորը ստանում է այսպես կոչված. լայն հրահանգներ, որոնցից յուրաքանչյուրը կոդավորում է հրահանգներ բոլոր պրոցեսորի գործադիր սարքերի համար, որոնք պետք է գործարկվեն տվյալ ժամացույցի ցիկլով: Պրոցեսորից չի պահանջվում վերլուծել կախվածությունը օպերանդների միջև կամ փոխանակել գործողությունները լայն հրահանգների միջև. կոմպիլյատորն այս ամենը անում է աղբյուրի կոդի վերլուծության և պրոցեսորի ռեսուրսների պլանավորման հիման վրա: Արդյունքում, պրոցեսորի ապարատը կարող է լինել ավելի պարզ և խնայող:

Կազմողն ի վիճակի է շատ ավելի մանրակրկիտ վերլուծել աղբյուրի կոդը, քան պրոցեսորի RISC/CISC սարքաշարը և գտնել ավելի անկախ գործողություններ: Հետևաբար, E2K ճարտարապետությունն ունի ավելի շատ զուգահեռ կատարման միավորներ, քան ավանդական ճարտարապետությունները:

E2K ճարտարապետության ներկայիս առանձնահատկությունները.

  • Զուգահեռաբար գործող թվաբանական տրամաբանական միավորների (ALU) 6 ալիք:
  • 256 84-բիթանոց ռեգիստրների գրանցման ֆայլ:
  • Սարքավորումների աջակցություն ցիկլերի համար, ներառյալ խողովակաշարերով: Բարձրացնում է պրոցեսորային ռեսուրսների օգտագործման արդյունավետությունը:
  • Ծրագրավորվող ասինխրոն տվյալների նախնական պոմպ առանձին ընթերցման ալիքներով: Թույլ է տալիս թաքցնել ուշացումները հիշողության հասանելիությունից և ավելի լիարժեք օգտվել ALU-ից:
  • Աջակցություն սպեկուլյատիվ հաշվարկներին և մեկ բիթային պրեդիկատներին: Թույլ է տալիս նվազեցնել անցումների քանակը և զուգահեռաբար կատարել ծրագրի մի քանի ճյուղեր:
  • Լայն հրաման, որը կարող է սահմանել մինչև 23 գործողություն մեկ ժամացույցի ցիկլում առավելագույն լրացմամբ (ավելի քան 33 գործողություն, երբ օպերանդները փաթեթավորվում են վեկտորային հրահանգների մեջ):

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Emulation x86

Նույնիսկ ճարտարապետության նախագծման փուլում ծրագրավորողները հասկացան Intel x86 ճարտարապետության համար գրված ծրագրակազմի օժանդակման կարևորությունը: Դրա համար ներդրվել է համակարգ x86 երկուական կոդերի դինամիկ (այսինքն՝ ծրագրի կատարման ընթացքում կամ «թռիչքի ժամանակ») թարգմանելու համար E2K ճարտարապետության պրոցեսորային կոդեր: Այս համակարգը կարող է աշխատել ինչպես կիրառական ռեժիմում (WINE եղանակով), այնպես էլ հիպերվիզորի նման ռեժիմով (այնուհետև հնարավոր է գործարկել ողջ հյուրային ՕՀ-ն x86 ճարտարապետության համար):

Օպտիմալացման մի քանի մակարդակների շնորհիվ հնարավոր է հասնել թարգմանված կոդի բարձր արագության։ x86 ճարտարապետության էմուլյացիայի որակը հաստատվում է ավելի քան 20 օպերացիոն համակարգերի (ներառյալ Windows-ի մի քանի տարբերակների) և Elbrus հաշվողական համակարգերի հարյուրավոր հավելվածների հաջող գործարկումով:

Պաշտպանված ծրագրի կատարման ռեժիմ

Էլբրուս-1 և Էլբրուս-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), ZombieLoad (CVE-12127-2019) և այլն:

Ժամանակակից պաշտպանությունը x86/amd64 ճարտարապետության մեջ հայտնաբերված խոցելիություններից հիմնված է օպերացիոն համակարգի մակարդակի կարկատների վրա: Այդ իսկ պատճառով այս ճարտարապետությունների ընթացիկ և նախորդ սերունդների պրոցեսորների կատարողականի անկումն այնքան նկատելի է և տատանվում է 30%-ից մինչև 80%: Մենք՝ որպես x86 պրոցեսորների ակտիվ օգտագործողներ, գիտենք այս մասին, տառապում ենք և շարունակում ենք «կակտուս ուտել», բայց այս խնդիրների լուծման առկայությունը մեզ համար (և արդյունքում՝ մեր հաճախորդների համար) բողբոջում է։ անկասկած օգուտ, հատկապես եթե լուծումը ռուսական է։

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

Ստորև ներկայացված են նախկին (4C), ներկա (8C), նոր (8CB) և ապագա (16C) սերունդների Elbrus պրոցեսորների պաշտոնական տեխնիկական բնութագրերը՝ համեմատած նմանատիպ Intel x86 պրոցեսորների հետ:

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Այս աղյուսակին նույնիսկ հպանցիկ հայացքը ցույց է տալիս (և դա շատ հաճելի է), որ ներքին պրոցեսորների տեխնոլոգիական կուտակումները, որոնք անհաղթահարելի էին թվում 10 տարի առաջ, այժմ արդեն բավականին փոքր են թվում, իսկ 2021 թվականին՝ Elbrus-16C-ի գործարկումով (որը, ի թիվս այլոց. այլ բաներ, կաջակցի վիրտուալացմանը) կնվազեցվի նվազագույն հեռավորությունների վրա:

SHD AERODISK-ը Elbrus 8C պրոցեսորների վրա

Տեսությունից անցնում ենք պրակտիկային։ MCST-ի, Aerodisk-ի, Basalt SPO-ի (նախկինում՝ Alt Linux) և NORSI-TRANS-ի ռազմավարական դաշինքի շրջանակներում մշակվել և շահագործման է հանձնվել տվյալների պահպանման համակարգ, որն այս պահին եթե ոչ լավագույնն է անվտանգության, ֆունկցիոնալության առումով, արժեքը և արդյունավետությունը, մեր կարծիքով, անհերքելիորեն արժանի լուծում, որը կարող է ապահովել մեր Հայրենիքի տեխնոլոգիական անկախության պատշաճ մակարդակը:
Այժմ մանրամասները...

Ապարատային

Պահպանման համակարգի ապարատային մասը ներդրված է NORSI-TRANS ընկերության Yakhont UVM ունիվերսալ հարթակի հիման վրա։ Yakhont UVM հարթակը ստացել է ռուսական ծագման հեռահաղորդակցության սարքավորումների կարգավիճակ և ներառված է ռուսական ռադիոէլեկտրոնային արտադրանքի միասնական ռեգիստրում։ Համակարգը բաղկացած է երկու առանձին պահեստային կարգավորիչներից (յուրաքանչյուրը 2U), որոնք փոխկապակցված են 1G կամ 10G Ethernet փոխկապակցման միջոցով, ինչպես նաև ընդհանուր սկավառակի դարակներով՝ օգտագործելով SAS կապ:

Իհարկե, սա այնքան էլ գեղեցիկ չէ, որքան «Cluster in a box» ձևաչափը (երբ մեկ 2U շասսիում տեղադրվում են կարգավորիչներ և ընդհանուր հետնամասով սկավառակներ), որը մենք սովորաբար օգտագործում ենք, բայց մոտ ապագայում այն ​​նույնպես հասանելի կլինի: Այստեղ գլխավորն այն է, որ այն լավ է աշխատում, բայց մենք ավելի ուշ կմտածենք «աղեղների» մասին:

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Կափարիչի տակ յուրաքանչյուր կարգավորիչ ունի մեկ պրոցեսորային մայր տախտակ՝ չորս RAM սլոտներով (DDR3 8C պրոցեսորի համար): Նաև յուրաքանչյուր կարգավորիչի վրա կան 4 1G Ethernet պորտեր (որոնցից երկուսը օգտագործվում են AERODISK ENGINE ծրագրաշարի կողմից որպես ծառայություն) և երեք PCIe անցք Back-end (SAS) և Front-end (Ethernet կամ FibreChannel) ադապտերների համար:

Որպես բեռնման սկավառակներ, մենք օգտագործում ենք ռուսական SATA SSD սկավառակներ GS Nanotech-ից, որոնք մենք բազմիցս փորձարկել և օգտագործել ենք նախագծերում:

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Երբ մենք առաջին անգամ հանդիպեցինք հարթակը, մենք ուշադիր ուսումնասիրեցինք այն: Մենք հարցեր չունեինք հավաքման և զոդման որակի վերաբերյալ, ամեն ինչ արված էր կոկիկ և հուսալի:

Օպերացիոն համակարգ

OS Alt 8SP-ի տարբերակը սերտիֆիկացման համար օգտագործվում է որպես ՕՀ: Մոտ ապագայում մենք նախատեսում ենք ստեղծել խցանվող և անընդհատ թարմացվող պահոց OS Alt-ի համար Aerodisk պահեստավորման ծրագրաշարով:

Բաշխման այս տարբերակը կառուցված է Linux 4.9 միջուկի ընթացիկ կայուն տարբերակի վրա E2K-ի համար (ճյուղ երկարաժամկետ աջակցությամբ, որը տեղափոխվում է MCST մասնագետների կողմից), որը համալրված է ֆունկցիոնալության և անվտանգության համար նախատեսված կարկատներով: Alt OS-ի բոլոր փաթեթները կառուցված են ուղղակիորեն Elbrus-ի վրա՝ օգտագործելով ALT Linux Team նախագծի սկզբնական գործարքային կառուցման համակարգը, որը հնարավորություն է տվել նվազեցնել աշխատուժի ծախսերը հենց փոխանցման համար և ավելի մեծ ուշադրություն դարձնել արտադրանքի որակին:

Elbrus-ի համար Alt OS-ի ցանկացած թողարկում կարող է զգալիորեն ընդլայնվել ֆունկցիոնալության առումով՝ օգտագործելով դրա համար հասանելի պահոցը (6-րդ տարբերակի մոտ 12 հազար աղբյուրի փաթեթից մինչև իններորդ տարբերակի մոտ XNUMX-ը):

Ընտրությունն արվել է նաև այն պատճառով, որ Alt OS-ի մշակող Basalt SPO-ն ակտիվորեն աշխատում է ծրագրային ապահովման և սարքերի այլ մշակողների հետ տարբեր հարթակներում՝ ապահովելով անխափան փոխազդեցություն ապարատային և ծրագրային համակարգերում:

Ծրագրային ապահովման պահպանման համակարգեր

Տեղափոխելիս մենք անմիջապես հրաժարվեցինք E2K-ում աջակցվող x86 էմուլյացիայի օգտագործման գաղափարից և սկսեցինք ուղղակիորեն աշխատել պրոցեսորների հետ (բարեբախտաբար, Alt-ն արդեն ունի դրա համար անհրաժեշտ գործիքները):

Ի թիվս այլ բաների, հայրենի կատարման ռեժիմն ապահովում է ավելի լավ անվտանգություն (նույն երեք ապարատային կույտերը մեկի փոխարեն) և բարձր արդյունավետություն (կարիք չկա հատկացնել ութ միջուկներից մեկ կամ երկու միջուկ, որպեսզի երկուական թարգմանիչն աշխատի, և կոմպիլյատորն անում է այն։ աշխատանք ավելի լավ, քան JIT):

Փաստորեն, AERODISK ENGINE-ի E2K ներդրումն աջակցում է x86-ում հայտնաբերված պահեստավորման առկա գործառույթների մեծ մասին: AERODISK ENGINE-ի ընթացիկ տարբերակը (A-CORE տարբերակ 2.30) օգտագործվում է որպես պահեստավորման համակարգի ծրագրակազմ

Առանց որևէ խնդրի E2K-ի վրա՝ ներմուծվել և փորձարկվել են հետևյալ գործառույթները՝ արտադրանքում օգտագործելու համար.

  • Սխալների հանդուրժողականություն մինչև երկու կարգավորիչի և բազմուղի I/O (mpio)
  • Արգելափակել և ֆայլերի հասանելիությունը բարակ ծավալներով (RDG, DDP լողավազաններ; FC, iSCSI, NFS, SMB արձանագրություններ, ներառյալ Active Directory ինտեգրումը)
  • Տարբեր RAID մակարդակներ մինչև եռակի հավասարություն (ներառյալ RAID կոնստրուկտորն օգտագործելու հնարավորությունը)
  • Հիբրիդային պահեստավորում (միավորելով SSD-ը և HDD-ը նույն լողավազանում, այսինքն՝ քեշը և մակարդակը)
  • Տիեզերք խնայելու տարբերակներ՝ կրկնօրինակման և սեղմման միջոցով
  • ROW snapshots, clones և կրկնօրինակման տարբեր տարբերակներ
  • Եվ այլ փոքր, բայց օգտակար գործառույթներ, ինչպիսիք են QoS-ը, գլոբալ թեթսփեյրը, VLAN-ը, BOND-ը և այլն:

Փաստորեն, E2K-ում մեզ հաջողվեց ստանալ մեր ամբողջ ֆունկցիոնալությունը, բացառությամբ բազմակառավարիչներից (ավելի քան երկու) և բազմաթելային I/O ժամանակացույցից, որը թույլ է տալիս 20-30%-ով բարձրացնել բոլոր ֆլեշ լողավազանների աշխատանքը: .

Բայց մենք, իհարկե, կավելացնենք նաև այս օգտակար գործառույթները՝ ժամանակի հարց։

Մի փոքր կատարման մասին

Պահպանման համակարգի հիմնական ֆունկցիոնալության թեստերը հաջողությամբ անցնելուց հետո մենք, իհարկե, սկսեցինք բեռնվածության փորձարկումներ կատարել:

Օրինակ, կրկնակի կարգավորիչով պահեստավորման համակարգի վրա (2xCPU E8C 1.3 ԳՀց, 32 ԳԲ օպերատիվ հիշողություն + 4 SAS SSD 800 ԳԲ 3DWD), որտեղ RAM քեշն անջատված էր, մենք ստեղծեցինք երկու DDP լողավազան՝ հիմնական RAID-10 մակարդակով և երկու 500 Գ. LUN-ներ և միացրեց այս LUN-ները iSCSI-ի (10G Ethernet) միջոցով Linux հոսթին: Եվ արեց հիմնական ժամային թեստերից մեկը փոքր հաջորդական բեռնվածքի բլոկների վրա՝ օգտագործելով FIO ծրագիրը:

Առաջին արդյունքները բավականին դրական էին։

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

Պրոցեսորների ծանրաբեռնվածությունը միջինում եղել է 60%, այսինքն. սա այն բազային մակարդակն է, որտեղ պահեստավորումը կարող է ապահով աշխատել:

Այո, սա հեռու է ծանրաբեռնվածությունից, և դա ակնհայտորեն բավարար չէ բարձր արդյունավետության DBMS-ների համար, բայց, ինչպես ցույց է տալիս մեր պրակտիկան, այս բնութագրերը բավարար են ընդհանուր առաջադրանքների 80% -ի համար, որոնց համար օգտագործվում են պահեստավորման համակարգեր:

Մի փոքր ուշ մենք նախատեսում ենք վերադառնալ Էլբրուսի բեռնվածության փորձարկումների վերաբերյալ մանրամասն զեկույցով՝ որպես պահեստային հարթակ:

Պայծառ ապագա

Ինչպես վերևում գրեցինք, Elbrus 8C-ի զանգվածային արտադրությունը իրականում սկսվել է վերջերս՝ 2019 թվականի սկզբին և մինչև դեկտեմբերին արդեն թողարկվել էր մոտ 4000 պրոցեսոր։ Համեմատության համար նշենք, որ դրանց արտադրության ողջ ժամանակահատվածում արտադրվել է նախորդ սերնդի Elbrus 4C-ի ընդամենը 5000 պրոցեսոր, ուստի առաջընթաց կա։

Հասկանալի է, որ սա ծովի կաթիլ է նույնիսկ ռուսական շուկայի համար, բայց ճանապարհը կտիրապետի քայլողին։
2020 թվականին նախատեսվում է մի քանի տասնյակ հազար Elbrus 8C պրոցեսորների թողարկում, և դա արդեն լուրջ ցուցանիշ է։ Բացի այդ, 2020 թվականի ընթացքում MCST թիմի կողմից Elbrus-8SV պրոցեսորը պետք է բերվի զանգվածային արտադրության։

Նման արտադրության պլանները կիրառություն են ներքին սերվերների պրոցեսորների ամբողջ շուկայի շատ զգալի մասնաբաժնի համար:

Արդյունքում, այստեղ և հիմա մենք ունենք լավ և ժամանակակից ռուսական պրոցեսոր՝ հստակ և, մեր կարծիքով, ճիշտ զարգացման ռազմավարությամբ, որի հիման վրա կա ռուսական արտադրության տվյալների պահպանման ամենաապահով և հավաստագրված համակարգը (և ապագա, վիրտուալացման համակարգ Elbrus-16C-ում): Ռուսական համակարգը այնքանով է, որքանով դա այժմ ֆիզիկապես հնարավոր է ժամանակակից պայմաններում։

Մենք հաճախ ենք նորություններում տեսնում ընկերությունների հաջորդ էպիկական ձախողումները, որոնք հպարտորեն իրենց անվանում են ռուս արտադրողներ, բայց իրականում զբաղված են պիտակները նորից սոսնձելով՝ առանց օտարերկրյա արտադրողի արտադրանքի վրա սեփական արժեք ավելացնելու, բացառությամբ դրանց մակնշման: Նման ընկերությունները, ցավոք, ստվեր են գցում բոլոր իրական ռուս մշակողների և արտադրողների վրա:

Այս հոդվածով մենք ուզում ենք հստակ ցույց տալ, որ մեր երկրում եղել են, կան և կլինեն ընկերություններ, որոնք իսկապես և արդյունավետ կերպով պատրաստում են ժամանակակից բարդ ՏՏ համակարգեր և ակտիվորեն զարգանում են, իսկ ՏՏ-ում ներմուծման փոխարինումը հայհոյանք չէ, այլ իրականություն, որում. մենք բոլորս ապրում ենք. Դուք կարող եք չսիրել այս իրականությունը, կարող եք քննադատել այն, կամ կարող եք աշխատել և այն ավելի լավը դարձնել:

SHD AERODISK կենցաղային Elbrus 8C պրոցեսորների վրա

ԽՍՀՄ փլուզումը ժամանակին խանգարեց Էլբրուսի ստեղծողների թիմին դառնալ պրոցեսորների աշխարհում նշանավոր խաղացող և ստիպեց թիմին ֆինանսավորում փնտրել արտասահմանում իրենց զարգացումների համար: Գտնվել է, աշխատանքն արվել է, մտավոր սեփականությունը պահպանվել է, ինչի համար ուզում եմ մեծ շնորհակալություն հայտնել այս մարդկանց։

Առայժմ այսքանը, խնդրում եմ գրեք ձեր մեկնաբանությունները, հարցերը և, իհարկե, քննադատությունը։ Մենք միշտ ուրախ ենք։

Նաև ամբողջ Aerodisk ընկերության անունից ուզում եմ շնորհավորել ամբողջ ռուսական ՏՏ համայնքին գալիք Ամանորի և Սուրբ Ծննդի կապակցությամբ, մաղթել 100% գործունակություն, և որ կրկնօրինակները ոչ մեկին օգտակար չեն լինի նոր տարում))):

Օգտագործված նյութերը

Տեխնոլոգիաների, ճարտարապետության և անհատականությունների ընդհանուր նկարագրությամբ հոդված.
https://www.ixbt.com/cpu/e2k-spec.html

Համակարգիչների համառոտ պատմություն «Էլբրուս» անունով.
https://topwar.ru/34409-istoriya-kompyuterov-elbrus.html

Ընդհանուր հոդված e2k ճարտարապետության մասին.
https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D1%8C%D0%B1%D1%80%D1%83%D1%81_2000

Հոդվածը 4-րդ սերնդի (Elbrus-8S) և 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

Հաջորդ 6-րդ սերնդի պրոցեսորների բնութագրերը (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

Էլբրուսի ճարտարապետության պաշտոնական նկարագրությունը.
http://www.elbrus.ru/elbrus_arch

«Էլբրուս» ապարատային և ծրագրային հարթակի ծրագրավորողների պլանները՝ էքսասանդրային կատարողականությամբ սուպերհամակարգիչ ստեղծելու համար.
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

Ռուսական Elbrus տեխնոլոգիաներ անհատական ​​համակարգիչների, սերվերների և գերհամակարգիչների համար.
http://www.mcst.ru/files/5472ef/770cd8/50ea05/000001/rossiyskietehnologiielbrus-it-edu9-201410l.pdf

Բորիս Բաբայանի մի հին հոդված, բայց դեռ ակտուալ.
http://www.mcst.ru/e2k_arch.shtml

Միխայիլ Կուզմինսկու հին հոդվածը.
https://www.osp.ru/os/1999/05-06/179819

MCST ներկայացում, ընդհանուր տեղեկություններ.
https://yadi.sk/i/HDj7d31jTDlDgA

Տեղեկություններ Alt OS-ի մասին Elbrus պլատֆորմի համար.
https://altlinux.org/эльбрус

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

Source: www.habr.com

Добавить комментарий