ეს ნიშნავს 8 ბირთვიან პროცესორს. რა უპირატესობა აქვს ორბირთვიან პროცესორებს? ორბირთვიანი Intel პროცესორები

მთავარი / მონაცემთა აღდგენა

მრავალბირთვიანი პროცესორი - ცენტრალური პროცესორი, რომელიც შეიცავს ორ ან მეტ გამოთვლით ბირთვს ერთ პროცესორის ჩიპზე ან ერთ პაკეტში.

მათ შორის მრავალბირთვიანი პროცესორებიამ ეტაპზე შეგვიძლია გამოვყოთ

*პროცესორები, რომლებიც შექმნილია ძირითადად ჩაშენებული და მობილური აპლიკაციები, რომელშიც დეველოპერებმა დიდი ყურადღება დაეთმო ენერგიის მოხმარების შემცირების საშუალებებსა და მეთოდებს (SEAforth (SEAforth24, seaforth40), Tile (Tile36, Tile64, Tile64pro), AsAP-II, CSX700);

*პროცესორები გამოთვლითი ან გრაფიკული სადგურებისთვის, სადაც ენერგიის მოხმარების საკითხები არც ისე კრიტიკულია (გრაფიკული პროცესორები, მაგალითად, g80 სერიის პროცესორები NVIDIA-დან, Larrabee პროექტი Intel-ისგან, ეს ასევე მოიცავს Cell პროცესორს IBM-დან, თუმცა გადამამუშავებელი ბირთვების რაოდენობა შედარებით დაბალია);

* პროცესორების ე.წ მეინსტრიმი - განკუთვნილია სერვერებისთვის, სამუშაო სადგურებისთვის და პერსონალური კომპიუტერებისთვის (AMD, Intel, Sun);

  • ბირთვების რაოდენობა (ბირთების რაოდენობა. ბირთვი) - სილიკონის კრისტალი, რომლის ფართობია დაახლოებით ერთი კვადრატული სანტიმეტრი, რომელზედაც გამოიყენება მიკროსკოპული ლოგიკური ელემენტები. მიკროსქემის დიაგრამაპროცესორი, არქიტექტურის ე.წ. თითოეული ბირთვი აღიქმება სისტემის მიერ, როგორც ცალკე, დამოუკიდებელ პროცესორად, ყველა საჭირო ფუნქციით.)

საათის სიხშირე (საათი არის ელემენტარული ოპერაცია წამში, რომელსაც შეუძლია შეასრულოს პროცესორი. ამიტომ, საათის ციკლების რაოდენობა არის ინდიკატორი იმისა, თუ რამდენი ოპერაციის დამუშავება შეუძლია პროცესორს წამში. ამ პარამეტრის საზომი ერთეულია გიგაჰერცი გჰც.)

ქეში მეხსიერება (მეხსიერებას უშუალოდ პროცესორში ჩაშენებული და ხშირად გამოყენებული მონაცემების შესანახად და მისასვლელად გამოიყენება, ეწოდება ქეში მეხსიერება. ის იყოფა რამდენიმე დონედ - L1, L2 და L3. ქეში მეხსიერების უფრო მაღალ დონეს აქვს უფრო დიდი მოცულობა, მაგრამ ნაკლებად მაღალი. - მონაცემთა სიჩქარის წვდომა.)

ბიტის სიმძლავრე (განსაზღვრავს ინფორმაციის რაოდენობას, რომელიც შეიძლება გაცვალოს პროცესორსა და RAM-ს შორის ერთი საათის ციკლში. ეს პარამეტრი იზომება ბიტებში. სიმძლავრის პარამეტრი გავლენას ახდენს შესაძლო რაოდენობაზე. ოპერატიული მეხსიერება- 32-ბიტიან პროცესორს შეუძლია იმუშაოს მხოლოდ 4 GB ოპერატიული მეხსიერებით.)

შესრულება

ენერგიის მოხმარება

ზომები

ფასი

დავალებების კლასები, რომლებისთვისაც ისინი შექმნილია

პროცესორის მუშაობის შედარებითი მახასიათებლები, ენერგიის მოხმარება და მონაცემთა გაცვლის კურსი წარმოდგენილია ცხრილებში

(Mflops - მილიონი მცურავი წერტილის ოპერაცია წამში)

პროცესორის მთლიან მუშაობაში და მისი მუშაობის ეფექტურობაში მნიშვნელოვანი წვლილი შეაქვს ბირთვული კავშირების სტრუქტურასა და მეხსიერების ქვესისტემის ორგანიზებას, კერძოდ, ქეშ მეხსიერებას.


პროცესორი CSX700

CSX700 პროცესორის არქიტექტურა შექმნილია ეგრეთ წოდებული ზომის, წონის და სიმძლავრის (SWAP) პრობლემის გადასაჭრელად, რომელიც ჩვეულებრივ აწუხებს ჩაშენებულ მაღალი ხარისხის აპლიკაციებს. პროცესორების, სისტემური ინტერფეისების და ჩიპზე შეცდომის გამოსწორების მეხსიერების ინტეგრირებით, CSX700 უზრუნველყოფს ეკონომიურ, საიმედო და ეფექტურ გადაწყვეტას დღევანდელი აპლიკაციების მოთხოვნების დასაკმაყოფილებლად.

პროცესორის არქიტექტურა ოპტიმიზებულია მასიურად პარალელური დამუშავებისთვის და შექმნილია მაღალი ეფექტურობისა და საიმედოობისთვის. არქიტექტურა მიზნად ისახავს ინტელექტუალური სიგნალის დამუშავებას და გამოსახულების დამუშავებას დროისა და სიხშირის დომენებში.

CSX700 ჩიპი შეიცავს 192 მაღალი ხარისხის პროცესორის ბირთვს, ჩაშენებულ 256 KB ბუფერულ მეხსიერებას (ორი ბანკი თითო 128 KB), მონაცემთა ქეშს და ინსტრუქციის ქეშს, შიდა და ECC დაცვას. გარე მეხსიერება, ჩაშენებული პირდაპირი მეხსიერების წვდომის კონტროლერი. ClearConnect NoC ტექნოლოგია გამოიყენება ჩიპზე და ჩიპთაშორისი ქსელების უზრუნველსაყოფად (ნახ. 11).

პროცესორი შედგება ორი შედარებით დამოუკიდებელი MTAP (MultiThreaded Array Processor) მოდულისგან, რომელიც შეიცავს ინსტრუქციების და მონაცემთა ქეშებს, პროცესორის ელემენტების საკონტროლო ერთეულებს და 96 გამოთვლითი ბირთვის კომპლექტს (ნახ. 12).

ბრინჯი. 12. MTAP ბლოკის სტრუქტურა

თითოეულ ბირთვს აქვს ორმაგი მცურავი წერტილის ერთეული (მიმატება, გამრავლება, გაყოფა, კვადრატული ფესვი, ერთჯერადი და ორმაგი ზუსტი რიცხვების მხარდაჭერა), 6 KB მაღალი ხარისხის ოპერატიული მეხსიერება, 128 ბაიტიანი რეგისტრის ფაილი. მხარდაჭერილია 64-ბიტიანი ვირტუალური მისამართების სივრცე და 48-ბიტიანი რეალური მისამართის სივრცე.

სპეციფიკაციებიპროცესორი:

ძირითადი საათის სიხშირე 250 MHz;

96 GFlops ორმაგი ან ერთჯერადი ზუსტი მონაცემებისთვის;

მხარს უჭერს 75 GFlops ორმაგი სიზუსტის მატრიცის გამრავლებისთვის (DGEMM) საორიენტაციო ნიშნისთვის;

მთელი რიცხვის ოპერაციების შესრულება 48 ШАО;

დენის გაფრქვევა 9 W;

შიდა მეხსიერების ავტობუსის გამტარობა 192 გბ/წმ;

ორი გარე მეხსიერების ავტობუსი 4 გბ/წმ;

ცალკეულ პროცესორებს შორის მონაცემთა გაცვლის სიჩქარე 4 გბ/წმ;

ინტერფეისები PCIe, 2 DDR2 DRAM (64 ბიტი).

შექმნილია დაბალი სიმძლავრის სისტემებისთვის, პროცესორი მუშაობს შედარებით დაბალი საათის სიჩქარით და აქვს სიხშირის კონტროლის მექანიზმი, რომელიც საშუალებას აძლევს აპლიკაციის მუშაობის რეგულირებას კონკრეტულ სიმძლავრეზე და თერმულ გარემოზე.

CSX700 მხარს უჭერს პროფესიონალური განვითარების გარემოს (SDK) Eclipse ტექნოლოგიაზე დაფუძნებული ვიზუალური აპლიკაციების გამართვის ხელსაწყოებით, რომელიც დაფუძნებულია ოპტიმიზირებული ANSI C შემდგენელზე, გაფართოებებით პარალელური პროგრამირებისთვის. სტანდარტული C ბიბლიოთეკის გარდა, არსებობს ოპტიმიზირებული ბიბლიოთეკების ნაკრები ფუნქციებით, როგორიცაა FFT, BLAS, LAPACK და ა.შ.

თანამედროვე Intel და AMD პროცესორები

თანამედროვე პროცესორების ბაზარი დაყოფილია ორი ძირითადი კონკურენტით - Intel და AMD.

პროცესორები საწყისი ინტელი, დღეს ითვლება ყველაზე პროდუქტიულებად Core i7 Extreme Edition ოჯახის წყალობით. მოდელიდან გამომდინარე, მათ შეუძლიათ ერთდროულად ჰქონდეთ 6 ბირთვი, საათის სიჩქარე 3300 MHz-მდე და 15 მბ-მდე L3 ქეში. დესკტოპის პროცესორების სეგმენტში ყველაზე პოპულარული ბირთვები დაფუძნებულია Intel-ზე - Ivy Bridge და Sandy Bridge.

Intel პროცესორები იყენებენ საკუთრების საკუთრებაში არსებულ ტექნოლოგიებს სისტემის ეფექტურობის გასაუმჯობესებლად.

1. Hyper Threading- ამ ტექნოლოგიის წყალობით, თითოეულ ფიზიკურ პროცესორის ბირთვს შეუძლია გამოთვლების ორი ძაფის დამუშავება ერთდროულად, გამოდის, რომ ლოგიკური ბირთვების რაოდენობა რეალურად ორმაგდება.

2. Turbo Boost- საშუალებას აძლევს მომხმარებელს ავტომატურად გადატვირთოს პროცესორი მაქსიმუმის გადაჭარბების გარეშე დასაშვები ზღვარიძირითადი სამუშაო ტემპერატურა.

3. Intel QuickPath Interconnect (QPI) - QPI რგოლის ავტობუსი აკავშირებს პროცესორის ყველა კომპონენტს, რითაც ამცირებს ინფორმაციის გაცვლის ყველა შესაძლო შეფერხებას.

4. ვიზუალიზაციის ტექნოლოგია - ვირტუალიზაციის გადაწყვეტილებების ტექნიკის მხარდაჭერა.

5. Intel Execute Disable Bit - პრაქტიკულად ანტივირუსული პროგრამა, ის უზრუნველყოფს ტექნიკის დაცვას ვირუსის შესაძლო შეტევებისგან ბუფერული გადინების ტექნოლოგიის საფუძველზე.

6. Intel SpeedStep - ინსტრუმენტი, რომელიც საშუალებას გაძლევთ შეცვალოთ ძაბვის და სიხშირის დონეები პროცესორზე შექმნილი დატვირთვის მიხედვით.

Core i7 – ჩართულია მომენტშიკომპანიის ზედა ხაზი

Core i5 - მაღალი შესრულება

Core i3 – დაბალი ფასი, მაღალი/საშუალო შესრულება

ყველაზე სწრაფი AMD პროცესორები მაინც უფრო ნელია ვიდრე Intel-ის ყველაზე სწრაფი პროცესორები (მონაცემები 2010 წლის ნოემბრის მონაცემებით). მაგრამ მისი კარგი ფასი-ხარისხის თანაფარდობის წყალობით, AMD პროცესორები, ძირითადად დესკტოპ კომპიუტერებისთვის, არის Intel-ის პროცესორების შესანიშნავი ალტერნატივა.

Athlon II და Phenom II პროცესორებისთვის მნიშვნელოვანია არა მხოლოდ საათის სიჩქარე, არამედ პროცესორის ბირთვების რაოდენობაც. Athlon II და Phenom II, მოდელიდან გამომდინარე, შეიძლება ჰქონდეს ორი სამი ან ოთხი ბირთვი. ექვს ბირთვიანი მოდელი - მხოლოდ Highend Phenom II სერია.

AMD-ის მიერ შექმნილი თანამედროვე პროცესორების უმეტესობა მხარს უჭერს შემდეგ ტექნოლოგიებს ნაგულისხმევად:

1. AMD Turbo CORE - ეს ტექნოლოგია შექმნილია ყველა პროცესორის ბირთვის მუშაობის ავტომატურად რეგულირებისთვის კონტროლირებადი გადატვირთვის საშუალებით (ინტელის მსგავს ტექნოლოგიას ეწოდება TurboBoost).

2. AVX (Advanced Vector Extensions), XOP და FMA4 - ინსტრუმენტი, რომელსაც აქვს ბრძანებების გაფართოებული ნაკრები, რომელიც სპეციალურად შექმნილია მცურავი წერტილის რიცხვებთან მუშაობისთვის. ნამდვილად სასარგებლო ინსტრუმენტების ნაკრები.

3. AES (Advanced Encryption Standard) - B პროგრამული აპლიკაციებიმონაცემთა დაშიფვრის გამოყენება აუმჯობესებს შესრულებას.

4. AMD ვიზუალიზაცია (AMD-V) - ვირტუალიზაციის ეს ტექნოლოგია უზრუნველყოფს ერთი კომპიუტერის რესურსების გაზიარებას რამდენიმე ვირტუალურ მანქანას შორის.

5. AMD PowcrNow! - ენერგიის მართვის ტექნოლოგია. ისინი ეხმარება მომხმარებელს მიაღწიოს გაუმჯობესებულ შესრულებას პროცესორის ნაწილების დინამიურად გააქტიურებით და გამორთვით.

6. NX Bit - უნიკალური ანტივირუსული ტექნოლოგია, რომელიც ხელს უწყობს ინფექციის თავიდან აცილებას პერსონალური კომპიუტერიგარკვეული სახის მავნე პროგრამა.

გამოყენება GIS-ში

გეოგრაფიული საინფორმაციო სისტემები წარმოადგენს მრავალფუნქციურ ინსტრუმენტებს კონსოლიდირებული ცხრილის, ტექსტური და კარტოგრაფიული მონაცემების, დემოგრაფიული, სტატისტიკური, მიწის, მუნიციპალური, მისამართის და სხვა ინფორმაციის გასაანალიზებლად. მრავალბირთვიანი პროცესორები აუცილებელია სხვადასხვა ტიპის ინფორმაციის სწრაფად დასამუშავებლად, რადგან ისინი მნიშვნელოვნად აჩქარებენ და ანაწილებენ პროგრამების მუშაობას.

დასკვნა

მრავალბირთვიან პროცესორებზე გადასვლა ხდება მუშაობის გაუმჯობესების მთავარი აქცენტი. ამ დროისთვის ყველაზე გავრცელებულად ითვლება 4 და 6 ბირთვიანი პროცესორები. თითოეული ბირთვი აღიქმება სისტემის მიერ, როგორც ცალკე, დამოუკიდებელ პროცესორად, ყველა საჭირო ფუნქციით. მრავალბირთვიანი პროცესორების ტექნოლოგიამ შესაძლებელი გახადა გაანგარიშების ოპერაციების პარალელიზება, რის შედეგადაც გაიზარდა კომპიუტერის შესრულება.

http://www.intuit.ru/department/hardware/mcoreproc/15/

http://kit-e.ru/articles/build_in_systems/2010_2_92.php

http://softrew.ru/instructions/266-sovremennye-processory.html

http://it-notes.info/centralnyj-processor/

http://www.mediamarkt.ru/mp/article/AMD,847020.html

მრავალბირთვიანი პროცესორების უპირატესობები

პროგრამების მუშაობის განაწილების შესაძლებლობა, მაგალითად, ძირითადი აპლიკაციის ამოცანები და ფონური ოპერაციული სისტემის ამოცანები, მრავალ ბირთვზე;

პროგრამების სიჩქარის გაზრდა;

გამოთვლებით ინტენსიური პროცესები ბევრად უფრო სწრაფად მიმდინარეობს;

გამოთვლითი ინტენსიური მულტიმედიური აპლიკაციების უფრო ეფექტური გამოყენება (მაგალითად, ვიდეო რედაქტორები);

შემცირებული ენერგიის მოხმარება;

კომპიუტერის მომხმარებლის მუშაობა უფრო კომფორტული ხდება;

...განვითარების პროცესში ბირთვების რაოდენობა სულ უფრო და უფრო გაიზრდება.

(ინტელის დეველოპერები)

მეტი ბირთვიდა ასევე ბირთვი, და მრავალი, მრავალი სხვა ბირთვი!..

...ამ ბოლო დრომდე არ გვსმენია და არც ვიცოდით ამის შესახებ მრავალბირთვიანიპროცესორები და დღეს ისინი აგრესიულად ანაცვლებენ ერთბირთვიან პროცესორებს. დაიწყო მრავალბირთვიანი პროცესორების ბუმი, რომელიც ჯერ კიდევ ოდნავაა! – თავს იკავებს შედარებით მაღალი ფასებით. მაგრამ არავის ეპარება ეჭვი, რომ მომავალი მრავალბირთვიან პროცესორებს ელის!..

რა არის პროცესორის ბირთვი

თანამედროვე ცენტრალური მიკროპროცესორის ცენტრში ( CPU– აბბრ. ინგლისურიდან ცენტრალური გადამამუშავებელი განყოფილება– ცენტრალური გამოთვლითი მოწყობილობა) არის ბირთვი ( ბირთვი) არის სილიკონის კრისტალი, რომლის ფართობია დაახლოებით ერთი კვადრატული სანტიმეტრი, რომელზედაც გამოსახულია პროცესორის მიკროსქემის დიაგრამა, ე.წ. არქიტექტურა (ჩიპის არქიტექტურა).

ბირთვი დაკავშირებულია დანარჩენ ჩიპთან (ე.წ. "პაკეტი" CPU პაკეტი) Flip-chip ტექნოლოგიის გამოყენებით ( ფლიპ-ჩიპი, ფლიპ-ჩიპის შემაკავშირებელი– ინვერსიული ბირთვი, დამაგრება ინვერსიული ბროლის მეთოდით). ამ ტექნოლოგიამ მიიღო თავისი სახელი, რადგან ბირთვის გარეგნული - ხილული - ნაწილი რეალურად არის მისი "ქვედა" - უზრუნველყოს პირდაპირი კონტაქტი გამაგრილებლის გამათბობელთან სითბოს უკეთესი გადაცემისთვის. უკანა (უხილავ) მხარეს არის თავად "ინტერფეისი" - კავშირი კრისტალსა და შეფუთვას შორის. პროცესორის ბირთვსა და შეფუთვას შორის კავშირი ხდება ქინძისთავების გამოყენებით ( Solder მუწუკები).

ბირთვი განლაგებულია ტექსტოლიტის ბაზაზე, რომლის გასწვრივ კონტაქტური ბილიკები მიემართება „ფეხებამდე“ (საკონტაქტო ბალიშები), სავსეა თერმული ინტერფეისით და დაფარულია დამცავი ლითონის საფარით.

პირველი (ბუნებრივია, ერთბირთვიანი!) მიკროპროცესორი Intel 4004გააცნო 1971 წლის 15 ნოემბერს კორპორაცია Intel-მა. იგი შეიცავდა 2300 ტრანზისტორს, 108 kHz სიხშირით და ღირდა $300.

მოთხოვნები ცენტრალური მიკროპროცესორის გამოთვლითი სიმძლავრის მიმართ მუდმივად იზრდებოდა და იზრდება. მაგრამ თუ ადრე პროცესორების მწარმოებლებს მუდმივად უწევდათ ადაპტირება მომხმარებელთა ამჟამინდელი აქტუალური (მუდმივი მზარდი!) მოთხოვნებთან, ახლა ჩიპების მწარმოებლები წინ მიიწევენ მრუდზე!

დიდი ხნის განმავლობაში, ტრადიციული ერთბირთვიანი პროცესორების მუშაობის გაუმჯობესება ძირითადად ხდებოდა საათის სიხშირის თანმიმდევრული ზრდის გამო (პროცესორის მუშაობის დაახლოებით 80% განისაზღვრებოდა საათის სიხშირით) და ერთდროულად გაიზარდა ტრანზისტორების რაოდენობა ერთ ჩიპზე. . თუმცა, საათის სიხშირის შემდგომი ზრდა (3,8 გჰც-ზე მეტი საათის სიხშირეზე, ჩიპები უბრალოდ გადახურდება!) ეწინააღმდეგება უამრავ ფუნდამენტურ ფიზიკურ ბარიერს (რადგან ტექნოლოგიური პროცესი თითქმის მიუახლოვდა ატომის ზომას: დღეს პროცესორები იწარმოება 45 ნმ ტექნოლოგიის გამოყენებით, ხოლო სილიციუმის ატომის ზომა დაახლოებით 0,543 ნმ):

პირველ რიგში, როგორც კრისტალების ზომა მცირდება და საათის სიხშირე იზრდება, იზრდება ტრანზისტორების გაჟონვის დენი. ეს იწვევს ენერგიის მოხმარების გაზრდას და სითბოს გამომუშავების გაზრდას;

მეორე, უფრო მაღალი საათის სიჩქარის სარგებელი ნაწილობრივ უარყოფილია მეხსიერების წვდომის შეყოვნებით, რადგან მეხსიერებაში წვდომის დრო არ შეესაბამება საათის სიჩქარის ზრდას;

მესამე, ზოგიერთი აპლიკაციისთვის, ტრადიციული სერიული არქიტექტურები არაეფექტური ხდება, როდესაც საათის სიჩქარე იზრდება ეგრეთ წოდებული „ფონ ნეუმანის ბოთლის“ გამო, შესრულების შეზღუდვა, რომელიც გამოწვეულია თანმიმდევრული გამოთვლის ნაკადით. ამავდროულად, RC სიგნალის გადაცემის შეფერხებები იზრდება, რაც დამატებითი შეფერხებაა, რომელიც დაკავშირებულია საათის სიხშირის ზრდასთან.

მრავალპროცესორული სისტემების გამოყენება ასევე არ არის ფართოდ გავრცელებული, რადგან ის მოითხოვს რთულ და ძვირადღირებულ მრავალპროცესორულ დედაპლატებს. ამიტომ, გადაწყდა მიკროპროცესორების მუშაობის კიდევ უფრო გაუმჯობესება სხვა საშუალებებით. კონცეფცია აღიარებულ იქნა ყველაზე ეფექტურ მიმართულებად მრავალძაფიანი, რომელიც წარმოიშვა სუპერკომპიუტერების სამყაროში, არის მრავალი ბრძანების ნაკადის ერთდროული პარალელური დამუშავება.

ასე რომ, კომპანიის სიღრმეში ინტელიდაიბადა Hyper-Threading ტექნოლოგია (HTT) არის მონაცემთა დამუშავების ულტრა ძაფიანი ტექნოლოგია, რომელიც საშუალებას აძლევს პროცესორს, ერთდროულად განახორციელოს ოთხი პროგრამის ძაფი ერთბირთვიან პროცესორზე. Hyper-threadingმნიშვნელოვნად აუმჯობესებს რესურსზე ინტენსიური აპლიკაციების ეფექტურობას (მაგალითად, აუდიო და ვიდეო რედაქტირებასთან დაკავშირებული, 3D-სიმულაცია), ისევე როგორც ოპერაციული სისტემის ფუნქციონირება მრავალ დავალების რეჟიმში.

CPU პენტიუმი 4ერთად შედის Hyper-threadingაქვს ერთი ფიზიკურიბირთვი, რომელიც იყოფა ორად ლოგიკური, ასე რომ, ოპერაციული სისტემა განსაზღვრავს მას, როგორც ორ განსხვავებულ პროცესორს (ერთის ნაცვლად).

Hyper-threadingრეალურად გახდა პლაცდარმი ერთ ჩიპზე ორი ფიზიკური ბირთვით პროცესორების შესაქმნელად. 2 ბირთვიან ჩიპში, ორი ბირთვი (ორი პროცესორი!) მუშაობს პარალელურად, რაც უფრო დაბალი საათის სიხშირით უზრუნველყოფს უკეთესი შესრულება, ვინაიდან ინსტრუქციების ორი დამოუკიდებელი ნაკადი შესრულებულია პარალელურად (ერთდროულად!).

პროცესორის უნარს, განახორციელოს რამდენიმე პროგრამის თემა ერთდროულად, ეწოდება ძაფის დონის პარალელიზმი (TLPძაფის დონის პარალელიზმი). საჭიროება TLPდამოკიდებულია კონკრეტულ სიტუაციაზე (ზოგიერთ შემთხვევაში ეს უბრალოდ უსარგებლოა!).

პროცესორების შექმნის ძირითადი პრობლემები

თითოეული პროცესორის ბირთვი უნდა იყოს დამოუკიდებელი, დამოუკიდებელი ენერგიის მოხმარებით და კონტროლირებადი სიმძლავრით;

ბაზარი პროგრამული უზრუნველყოფაუზრუნველყოფილი უნდა იყოს პროგრამებით, რომლებსაც შეუძლიათ ეფექტურად დაყოს ინსტრუქციის განშტოების ალგორითმი ლუწი (ბირთების ლუწი რაოდენობის პროცესორებისთვის) ან კენტი (კენტი ბირთვების მქონე პროცესორებისთვის) ძაფების რაოდენობად;

პრესსამსახურის ცნობით AMD, დღეს 4 ბირთვიანი პროცესორების ბაზარი მთლიანი მოცულობის არაუმეტეს 2%-ს შეადგენს. ცხადია, თანამედროვე მყიდველისთვის, სახლის საჭიროებისთვის 4 ბირთვიანი პროცესორის შეძენას ჯერ კიდევ არ აქვს აზრი მრავალი მიზეზის გამო. ჯერ ერთი, დღეს პრაქტიკულად არ არსებობს პროგრამები, რომლებსაც შეუძლიათ ეფექტურად ისარგებლონ 4 ერთდროულად გაშვებული ძაფით; მეორეც, მწარმოებლები 4 ბირთვიანი პროცესორების პოზიცია Hi-End- გადაწყვეტილებები აღჭურვილობაში დამატებით ყველაზე თანამედროვე ვიდეო ბარათები და დიდი მყარი დისკები - და ეს საბოლოოდ ზრდის უკვე ძვირადღირებულ ფასს

დეველოპერები ინტელიამბობენ: „...განვითარების პროცესში ბირთვების რაოდენობა სულ უფრო და უფრო გაიზრდება...“.

რა გველოდება მომავალში

კორპორაციაში ინტელიისინი აღარ საუბრობენ "მულტიბირთვზე" ( მრავალბირთვიანი) პროცესორები, როგორც ეს კეთდება 2-, 4-, 8-, 16- ან თუნდაც 32-ბირთვიან გადაწყვეტილებებთან მიმართებაში, მაგრამ დაახლოებით „მრავალბირთვიანი“ ( მრავალი ბირთვი), რაც გულისხმობს სრულიად ახალ ჩიპის არქიტექტურულ მაკროსტრუქტურას, შესადარებელი (მაგრამ არა მსგავსი) პროცესორის არქიტექტურასთან უჯრედი.

სტრუქტურა ასეთი მრავალი ბირთვი-ჩიპი გულისხმობს ინსტრუქციების იგივე კომპლექტთან მუშაობას, მაგრამ მძლავრი ცენტრალური ბირთვის ან რამდენიმე ძლიერის გამოყენებით CPU, "გარსშემორტყმული" მრავალი დამხმარე ბირთვით, რაც ხელს შეუწყობს რთული მულტიმედიური აპლიკაციების უფრო ეფექტურად დამუშავებას მრავალ ხრახნიან რეჟიმში. გარდა "ზოგადი დანიშნულების" ბირთვებისა, პროცესორები ინტელიასევე ექნება სპეციალიზებული ბირთვები სხვადასხვა კლასის დავალებების შესასრულებლად - როგორიცაა გრაფიკა, მეტყველების ამოცნობის ალგორითმები, საკომუნიკაციო პროტოკოლების დამუშავება.

სწორედ ეს არის ჯასტინ რატნერის მიერ წარმოდგენილი არქიტექტურა ( ჯასტინ რ. რატნერი), სექტორის ხელმძღვანელი კორპორატიული ტექნოლოგიების ჯგუფი Intelტოკიოში გამართულ პრესკონფერენციაზე. მისი თქმით, ახალ მრავალბირთვიან პროცესორში შესაძლოა რამდენიმე ათეული ასეთი დამხმარე ბირთვი იყოს. განსხვავებით დიდი, ენერგო ინტენსიური გამოთვლითი ბირთვების ფოკუსირებისა მაღალი სითბოს გაფრქვევით, მრავალბირთვიანი კრისტალები ინტელიააქტიურებს მხოლოდ იმ ბირთვებს, რომლებიც საჭიროა მიმდინარე დავალების შესასრულებლად, ხოლო დარჩენილი ბირთვები გამორთული იქნება. ეს საშუალებას მისცემს კრისტალს მოიხმაროს ზუსტად იმდენი ელექტროენერგია, რამდენიც საჭიროა მოცემულ დროს.

2008 წლის ივლისში კორპორაციამ ინტელიიტყობინება, რომ განიხილავს რამდენიმე ათეული და ათასობით გამოთვლითი ბირთვის ერთ პროცესორში ინტეგრირების შესაძლებლობას. კომპანიის წამყვანი ინჟინერი Envar Galum ( ანვარ ღულუმი) დაწერა თავის ბლოგზე: „საბოლოოდ, გირჩევთ ჩემგან შემდეგი რჩევების მიღებას... დეველოპერებმა ახლავე უნდა დაიწყონ ფიქრი ათობით, ასობით და ათასობით ბირთვზე“. მისივე თქმით, ამ დროისთვის ინტელიიკვლევს ტექნოლოგიებს, რომლებსაც შეუძლიათ გამოთვლების მასშტაბირება „ბირთვების რაოდენობის მიხედვით, რომლებსაც ჯერ არ ვყიდით“.

საბოლოო ჯამში, მრავალბირთვიანი სისტემების წარმატება დამოკიდებული იქნება დეველოპერებზე, რომლებსაც სავარაუდოდ მოუწევთ პროგრამირების ენების შეცვლა და არსებული ბიბლიოთეკების გადაწერა, თქვა გალუმმა.

პროცესორი შეყვანილია მობილური ტელეფონი. მახასიათებლები და მათი მნიშვნელობა

სმარტფონების ინდუსტრია ყოველდღიურად პროგრესირებს და, შედეგად, მომხმარებლები იღებენ ახალ, უფრო თანამედროვე და ძლიერ გაჯეტებს. სმარტფონების ყველა მწარმოებელი ცდილობს, რომ მათი შექმნა განსაკუთრებული და შეუცვლელი გახდეს. ამიტომ, დღეს დიდი ყურადღება ეთმობა სმარტფონებისთვის პროცესორების შემუშავებას და წარმოებას.

რა თქმა უნდა, "ჭკვიანი ტელეფონების" ბევრმა გულშემატკივარმა არაერთხელ დაუსვა კითხვა, რა არის პროცესორი და რა არის მისი ძირითადი ფუნქციები? და ასევე, რა თქმა უნდა, მყიდველებს აინტერესებთ რას ნიშნავს ჩიპის სახელის ყველა ეს რიცხვი და ასო.
გთავაზობთ, ცოტა გაეცნოთ კონცეფციას "სმარტფონის პროცესორი".

პროცესორი სმარტფონში- ეს არის ყველაზე რთული ნაწილი და პასუხისმგებელია მოწყობილობის მიერ შესრულებულ ყველა გამოთვლაზე. სინამდვილეში, არასწორია იმის თქმა, რომ სმარტფონი იყენებს პროცესორს, რადგან პროცესორები, როგორც ასეთი, არის მობილური მოწყობილობებიაჰ არ გამოიყენება. პროცესორი სხვა კომპონენტებთან ერთად ქმნის SoC-ს (System on chip - system on chip), რაც ნიშნავს, რომ ერთ ჩიპზე არის სრულფასოვანი კომპიუტერიპროცესორით, გრაფიკული ამაჩქარებლით და სხვა კომპონენტებით.

თუ ჩვენ ვსაუბრობთ პროცესორზე, მაშინ ჯერ უნდა გავიგოთ ისეთი კონცეფცია, როგორიცაა "პროცესორის არქიტექტურა". თანამედროვე სმარტფონები იყენებენ ARM არქიტექტურაზე დაფუძნებულ პროცესორებს, რომელიც შემუშავებულია ამავე სახელწოდების კომპანიის ARM Limited-ის მიერ. შეიძლება ითქვას, რომ არქიტექტურა არის თვისებებისა და თვისებების გარკვეული ნაკრები, რომელიც თან ახლავს პროცესორების მთელ ოჯახს. Qualcomm, Nvidia, Samsung, MediaTek, Apple და სხვა პროცესორული კომპანიები ლიცენზირებენ ტექნოლოგიას ARM-ისგან და შემდეგ ყიდიან მზა ჩიპებს სმარტფონების მწარმოებლებს ან იყენებენ მათ საკუთარ მოწყობილობებში. ჩიპების შემქმნელები ლიცენზირებულნი არიან ARM-ისგან ცალკეულ ბირთვებზე, ინსტრუქციების კომპლექტებზე და მათთან დაკავშირებულ ტექნოლოგიებზე. ARM Limited არ აწარმოებს პროცესორებს, მაგრამ მხოლოდ ყიდის ლიცენზიებს თავისი ტექნოლოგიებისთვის სხვა მწარმოებლებზე.

ახლა მოდით გადავხედოთ ისეთ ცნებებს, როგორიცაა ბირთვი და საათის სიჩქარე, რომლებიც ყოველთვის გვხვდება მიმოხილვებში და სტატიებში სმარტფონებისა და ტელეფონების შესახებ პროცესორზე საუბრისას.

ბირთვი

დავიწყოთ კითხვით, რა არის ბირთვი? ბირთვიარის ჩიპის ელემენტი, რომელიც განსაზღვრავს პროცესორის მუშაობას, ენერგიის მოხმარებას და საათის სიჩქარეს. ძალიან ხშირად ვხვდებით ორბირთვიან ან ოთხბირთვიან ცნებას ბირთვული პროცესორი. მოდით გავარკვიოთ რას ნიშნავს ეს.

ორბირთვიანი თუ ოთხბირთვიანი პროცესორი - რა განსხვავებაა?

ძალიან ხშირად, მყიდველები ფიქრობენ, რომ ორბირთვიანი პროცესორი ორჯერ უფრო ძლიერია, ვიდრე ერთბირთვიანი პროცესორი, ხოლო ოთხბირთვიანი პროცესორი, შესაბამისად, ოთხჯერ უფრო ძლიერი. ახლა ჩვენ გეტყვით სიმართლეს. როგორც ჩანს, საკმაოდ ლოგიკურია, რომ ერთი ბირთვიდან ორზე, ან ორიდან ოთხამდე გადაადგილება ზრდის შესრულებას, მაგრამ სინამდვილეში იშვიათია, რომ ეს სიმძლავრე გაიზარდოს ორი ან ოთხი ფაქტორით. ბირთვების რაოდენობის გაზრდა საშუალებას გაძლევთ დააჩქაროთ მოწყობილობის მუშაობა მიმდინარე პროცესების გადანაწილების გამო. მაგრამ თანამედროვე აპლიკაციების უმეტესობა არის ერთი ხრახნიანი და, შესაბამისად, შეუძლია მხოლოდ ერთი ან ორი ბირთვის გამოყენება ერთდროულად. ბუნებრივად ჩნდება კითხვა, რისთვის არის მაშინ ოთხბირთვიანი პროცესორი? მრავალ ბირთვს ძირითადად იყენებენ მოწინავე თამაშები და რედაქტირების აპლიკაციები მულტიმედიური ფაილები. ეს ნიშნავს, რომ თუ სმარტფონი გჭირდებათ თამაშებისთვის (3D თამაშები) ან Full HD ვიდეოს გადასაღებად, მაშინ უნდა შეიძინოთ მოწყობილობა ოთხბირთვიანი პროცესორით. თუ პროგრამა თავად არ უჭერს მხარს მრავალ ბირთვს და არ საჭიროებს დიდ რესურსებს, მაშინ გამოუყენებელი ბირთვები ავტომატურად გამორთულია ბატარეის ენერგიის დაზოგვის მიზნით. ხშირად, მეხუთე კომპანიონი ბირთვი გამოიყენება ყველაზე არაპრეტენზიული ამოცანებისთვის, მაგალითად, მოწყობილობის ძილის რეჟიმში მუშაობისთვის ან ფოსტის შემოწმებისას.

თუ ჩვეულებრივი სმარტფონი გჭირდებათ კომუნიკაციისთვის, ინტერნეტში სერფინგისთვის, ელ.ფოსტის შესამოწმებლად ან ყველა უახლესი ამბების შესამოწმებლად, მაშინ ორბირთვიანი პროცესორი საკმაოდ შესაფერისია თქვენთვის. და რატომ გადაიხადე მეტი? ყოველივე ამის შემდეგ, ბირთვების რაოდენობა პირდაპირ გავლენას ახდენს მოწყობილობის ფასზე.

საათის სიხშირე

შემდეგი კონცეფცია, რომელსაც უნდა გავეცნოთ, არის საათის სიხშირე. საათის სიხშირე არის პროცესორის მახასიათებელი, რომელიც გვიჩვენებს, თუ რამდენი საათის ციკლი შეუძლია პროცესორს იმუშაოს დროის ერთეულზე (ერთი წამი). მაგალითად, თუ მოწყობილობის მახასიათებლები მიუთითებს სიხშირე 1,7 გჰც - ეს ნიშნავს, რომ 1 წამში მისი პროცესორი შეასრულებს 1,700,000,000 (1 მილიარდ 700 მილიონი) ციკლს.

ოპერაციიდან და ასევე ჩიპის ტიპებიდან გამომდინარე, საათის ციკლების რაოდენობა, რომელიც სჭირდება ჩიპს ერთი დავალების შესასრულებლად, შეიძლება განსხვავდებოდეს. რაც უფრო მაღალია საათის სიხშირე, მით უფრო მაღალია მუშაობის სიჩქარე. ეს განსხვავება განსაკუთრებით შესამჩნევია სხვადასხვა სიხშირეზე მოქმედი იდენტური ბირთვების შედარებისას.

ზოგჯერ მწარმოებელი ზღუდავს საათის სიჩქარეს ენერგიის მოხმარების შესამცირებლად, რადგან რაც უფრო მაღალია პროცესორის სიჩქარე, მით მეტ ენერგიას მოიხმარს.

და ისევ ვუბრუნდებით მრავალ ბირთვს. საათის სიჩქარის გაზრდამ (MHz, GHz) შეიძლება გაზარდოს სითბოს გამომუშავება, რაც უაღრესად არასასურველი და საზიანოც კი არის სმარტფონის მომხმარებლებისთვის. ამიტომ, მრავალბირთვიანი ტექნოლოგია ასევე გამოიყენება, როგორც სმარტფონის მუშაობის გაზრდის ერთ-ერთი გზა ჯიბეში ძალიან გაცხელების გარეშე.

შესრულება იზრდება იმით, რომ აპლიკაციებს საშუალებას აძლევს ერთდროულად იმუშაონ რამდენიმე ბირთვზე, მაგრამ არსებობს ერთი პირობა: აპლიკაციები უნდა იყოს უახლესი თაობის. ეს ფუნქცია ასევე დაზოგავს ბატარეის ენერგიას.

CPU ქეში

პროცესორის კიდევ ერთი მნიშვნელოვანი მახასიათებელი, რომლის შესახებაც სმარტფონების გამყიდველები ხშირად ჩუმად არიან CPU ქეში.

ქეში- ეს არის მეხსიერება, რომელიც შექმნილია მონაცემთა დროებითი შენახვისთვის და მუშაობს პროცესორის სიხშირეზე. ქეში გამოიყენება პროცესორის წვდომის დროის შესამცირებლად RAM-ის შენელებამდე. ის ინახავს RAM-ის მონაცემების ნაწილის ასლებს. წვდომის დრო მცირდება იმის გამო, რომ პროცესორის მიერ მოთხოვნილი მონაცემების უმეტესობა მთავრდება ქეშში და მცირდება RAM-ზე წვდომის რაოდენობა. რაც უფრო დიდია ქეშის ზომა, მით უფრო დიდია ნაწილი პროგრამისთვის აუცილებელიის შეიძლება შეიცავდეს მონაცემებს, რაც უფრო იშვიათად მოხდება წვდომა RAM-ზე და მით უფრო მაღალი იქნება სისტემის საერთო შესრულება.

ქეში განსაკუთრებით აქტუალურია თანამედროვე სისტემებში, სადაც უფსკრული პროცესორის სიჩქარესა და RAM-ის სიჩქარეს შორის საკმაოდ დიდია. რა თქმა უნდა, ჩნდება კითხვა, რატომ არ სურთ ამ მახასიათებლის ხსენება? ძალიან მარტივია. მოვიყვანოთ მაგალითი. დავუშვათ, რომ არსებობს ორი ცნობილი პროცესორი (პირობითად A და B) ბირთვების და საათის სიჩქარით აბსოლუტურად ერთნაირი რაოდენობით, მაგრამ რატომღაც A მუშაობს ბევრად უფრო სწრაფად ვიდრე B. ამის ახსნა ძალიან მარტივია: A პროცესორს უფრო დიდი აქვს. ქეში, ამიტომ პროცესორი უფრო სწრაფად მუშაობს.

ქეშის მოცულობის სხვაობა განსაკუთრებით შესამჩნევია ჩინურ და ბრენდულ ტელეფონებს შორის. როგორც ჩანს, მახასიათებლების ნომრების მიხედვით, ყველაფერი ერთნაირია, მაგრამ მოწყობილობების ფასი განსხვავდება. და აქ მყიდველები გადაწყვეტენ ფულის დაზოგვას ფიქრით "რატომ გადაიხადონ მეტი, თუ განსხვავება არ არის?" მაგრამ, როგორც ვხედავთ, არის განსხვავება და ძალიან მნიშვნელოვანი, მაგრამ გამყიდველები ხშირად ჩუმდებიან ამაზე და ყიდიან. ჩინური ტელეფონებიგაბერილ ფასებში.

რა განსხვავებაა ოთხბირთვიან და რვა ბირთვიან სმარტფონის პროცესორებს შორის? ახსნა საკმაოდ მარტივია. რვა ბირთვიან ჩიპებს აქვთ ორჯერ მეტი პროცესორის ბირთვი, ვიდრე ოთხბირთვიანი ჩიპები. ერთი შეხედვით, რვა ბირთვიანი პროცესორი ორჯერ უფრო ძლიერი ჩანს, არა? სინამდვილეში, მსგავსი არაფერი ხდება. იმის გასაგებად, თუ რატომ არ აორმაგებს რვა ბირთვიანი პროცესორი სმარტფონის მუშაობას, საჭიროა გარკვეული ახსნა. უკვე ჩამოვიდა. რვაბირთვიანი პროცესორები, რომლებზეც სულ ახლახანს მხოლოდ ოცნება შეიძლებოდა, სულ უფრო ფართოვდება. მაგრამ აღმოჩნდება, რომ მათი ამოცანა არ არის მოწყობილობის მუშაობის გაზრდა.

ოთხბირთვიანი და რვა ბირთვიანი პროცესორები. შესრულება

ტერმინები "რვა ბირთვი" და "ოთხბირთვიანი" თავად ასახავს CPU ბირთვების რაოდენობას.

მაგრამ ამ ორი ტიპის პროცესორებს შორის მთავარი განსხვავება - სულ მცირე 2015 წლიდან - არის პროცესორის ბირთვების დაყენების გზა.

ოთხბირთვიანი პროცესორით, ყველა ბირთვს შეუძლია ერთდროულად იმუშაოს, რათა უზრუნველყოს სწრაფი და მოქნილი მრავალფუნქციური დავალებები, გამარტივებული 3D თამაში, კამერის უფრო სწრაფი შესრულება და სხვა.

თანამედროვე რვა ბირთვიანი ჩიპები, თავის მხრივ, უბრალოდ შედგება ორი ოთხბირთვიანი პროცესორისგან, რომლებიც ანაწილებენ განსხვავებულ ამოცანებს ერთმანეთში მათი ტიპის მიხედვით. ყველაზე ხშირად, რვა ბირთვიანი ჩიპი შეიცავს ოთხი ბირთვის კომპლექტს, უფრო დაბალი საათის სიჩქარით, ვიდრე მეორე ნაკრები. როდესაც რთული ამოცანის შესრულებაა საჭირო, უფრო სწრაფი პროცესორი მას ბუნებრივად იღებს.


უფრო ზუსტი ტერმინი ვიდრე "რვა ბირთვი" იქნება "ორმაგი ოთხბირთვიანი". მაგრამ ეს არც ისე ლამაზად ჟღერს და არ არის შესაფერისი მარკეტინგული მიზნებისთვის. ამიტომ ამ პროცესორებს რვა ბირთვიანი ეწოდება.

რატომ გვჭირდება პროცესორის ბირთვების ორი ნაკრები?

რა არის პროცესორის ბირთვების ორი ნაკრების გაერთიანების მიზეზი, დავალებების ერთმანეთზე გადაცემა ერთ მოწყობილობაში? ენერგოეფექტურობის უზრუნველსაყოფად.

უფრო მძლავრი CPU მოიხმარს მეტ ენერგიას და ბატარეა უფრო ხშირად დამუხტავს. ა ბატარეებიგაცილებით სუსტი რგოლი სმარტფონში, ვიდრე პროცესორები. შედეგად, რაც უფრო ძლიერია სმარტფონის პროცესორი, მით მეტი ტევადი ბატარეა სჭირდება.

თუმცა, სმარტფონის ამოცანების უმეტესობისთვის არ დაგჭირდებათ ისეთი მაღალი გამოთვლითი შესრულება, როგორსაც თანამედროვე პროცესორი შეუძლია. საწყის ეკრანებს შორის ნავიგაცია, შეტყობინებების შემოწმება და ვებ ნავიგაციაც კი ნაკლებად პროცესორის ინტენსიური ამოცანებია.

მაგრამ HD ვიდეო, თამაშები და ფოტოებთან მუშაობა ასეთი ამოცანებია. ამიტომ, რვა ბირთვიანი პროცესორები საკმაოდ პრაქტიკულია, თუმცა ამ გადაწყვეტას ძნელად შეიძლება ეწოდოს ელეგანტური. სუსტი პროცესორი უმკლავდება ნაკლებ რესურსზე ინტენსიურ ამოცანებს. უფრო ძლიერი - უფრო რესურსზე ინტენსიური. შედეგად, ენერგიის საერთო მოხმარება მცირდება იმ სიტუაციასთან შედარებით, როდესაც მხოლოდ მაღალი საათის სიხშირის მქონე პროცესორი გაუმკლავდება ყველა დავალებას. ამრიგად, ორმაგი პროცესორი, პირველ რიგში, წყვეტს ენერგოეფექტურობის გაზრდის პრობლემას, ვიდრე შესრულების.

ტექნოლოგიური მახასიათებლები

ყველა თანამედროვე რვა ბირთვიანი პროცესორი დაფუძნებულია ARM არქიტექტურაზე, ე.წ. big.LITTLE.

ეს რვა ბირთვიანი big.LITTLE არქიტექტურა გამოცხადდა 2011 წლის ოქტომბერში და საშუალებას აძლევდა ოთხ დაბალი ხარისხის Cortex-A7 ბირთვს ემუშავა ოთხ მაღალი ხარისხის Cortex-A15 ბირთვთან ერთად. მას შემდეგ, ARM იმეორებს ამ მიდგომას ყოველწლიურად, გვთავაზობს უფრო ქმედითუნარიან ჩიპებს რვა ბირთვიანი ჩიპის პროცესორის ორივე ნაკრებისთვის.

მობილური მოწყობილობების ჩიპების ზოგიერთი მთავარი მწარმოებელი ყურადღებას ამახვილებს თავის ძალისხმევაზე ამ დიდ. „რვა ბირთვიან“ მაგალითზე. ერთ-ერთი პირველი და ყველაზე გამორჩეული იყო საკუთარი ჩიპი სამსუნგი, ცნობილი Exynos. მისი რვა ბირთვიანი მოდელი მას შემდეგ გამოიყენება Samsung Galaxy S4, ყოველ შემთხვევაში, კომპანიის მოწყობილობების ზოგიერთ ვერსიაში.

ახლახან Qualcomm-მა ასევე დაიწყო big.LITTLE-ის გამოყენება თავის რვა ბირთვიან Snapdragon 810 CPU ჩიპებში. სწორედ ამ პროცესორზეა დაფუძნებული სმარტფონების ბაზარზე ისეთი ცნობილი ახალი პროდუქტები, როგორიცაა G Flex 2, რომელიც გახდა LG.

2015 წლის დასაწყისში NVIDIA-მ წარადგინა Tegra X1, ახალი სუპერ ძლიერი მობილური პროცესორი, რომელიც კომპანიას აპირებს საავტომობილო კომპიუტერებისთვის. X1-ის მთავარი ფუნქცია ის არის, რომ მისი გამოძახება შესაძლებელია კონსოლიდან („კონსოლის გამოწვევა“) GPU, რომელიც ასევე ეფუძნება big.LITTLE არქიტექტურას. ანუ ისიც რვაბირთვიანი გახდება.

დიდი განსხვავებაა ამისთვის რეგულარული მომხმარებელი?

არის თუ არა დიდი განსხვავება ოთხბირთვიან და რვა ბირთვიან სმარტფონის პროცესორს შორის საშუალო მომხმარებლისთვის? არა, სინამდვილეში ის ძალიან პატარაა, ამბობს ჯონ მანდი.

ტერმინი "რვა ბირთვი" გარკვეულწილად დამაბნეველია, მაგრამ სინამდვილეში ნიშნავს ოთხბირთვიანი პროცესორების დუბლირებას. შედეგი არის ორი დამოუკიდებლად მოქმედი ოთხბირთვიანი ნაკრები, გაერთიანებული ერთ ჩიპში ენერგოეფექტურობის გასაუმჯობესებლად.

საჭიროა თუ არა რვა ბირთვიანი პროცესორი ყველა თანამედროვე სმარტფონში? ასეთი საჭიროება არ არსებობს, თვლის ჯონ მუნდი და მოჰყავს Apple-ის მაგალითი, რომელიც მხოლოდ ორბირთვიანი პროცესორით უზრუნველყოფს თავისი iPhone-ების ღირსეულ ენერგოეფექტურობას.

ამრიგად, რვა ბირთვიანი ARM big.LITTLE არქიტექტურა არის ერთ-ერთი შესაძლო გადაწყვეტა სმარტფონებთან დაკავშირებით ერთ-ერთი ყველაზე მნიშვნელოვანი საკითხის - ბატარეის მუშაობისთვის. ჯონ მუნდის თქმით, როგორც კი ამ პრობლემის სხვა გამოსავალი მოიძებნება, ერთ ჩიპში ორი ოთხბირთვიანი ნაკრების და მსგავსი გადაწყვეტილებების დაყენების ტენდენცია შეჩერდება.

იცით თუ არა რვა ბირთვიანი სმარტფონის პროცესორების სხვა უპირატესობები?

  • სახელმძღვანელო

ამ სტატიაში შევეცდები აღვწერო ტერმინოლოგია, რომელიც გამოიყენება სისტემების აღსაწერად, რომლებსაც შეუძლიათ პარალელურად განახორციელონ რამდენიმე პროგრამა, ანუ მრავალბირთვიანი, მრავალპროცესორული, მრავალ ხრახნიანი. IA-32 CPU-ში სხვადასხვა დროს და გარკვეულწილად არათანმიმდევრული თანმიმდევრობით გამოჩნდა სხვადასხვა სახის პარალელიზმი. ამ ყველაფერში დაბნეულობა საკმაოდ მარტივია, განსაკუთრებით იმის გათვალისწინებით, რომ ოპერაციული სისტემები საგულდაგულოდ მალავენ დეტალებს ნაკლებად დახვეწილი აპლიკაციის პროგრამებისგან.

სტატიის მიზანია აჩვენოს, რომ მრავალპროცესორული, მრავალბირთვიანი და მრავალძახიანი სისტემების შესაძლო კონფიგურაციის მრავალფეროვნებით, იქმნება შესაძლებლობები მათზე გაშვებული პროგრამებისთვის, როგორც აბსტრაქციისთვის (განსხვავებების იგნორირება), ასევე სპეციფიკის გათვალისწინებისთვის ( კონფიგურაციის პროგრამულად გაცნობის შესაძლებლობა).

გაფრთხილება სტატიაში ®, ™ ნიშნების შესახებ

ჩემი კომენტარი განმარტავს, თუ რატომ უნდა გამოიყენონ კომპანიის თანამშრომლებმა საავტორო უფლებების შენიშვნები საჯარო კომუნიკაციებში. ამ სტატიაში საკმაოდ ხშირად მომიწია მათი გამოყენება.

CPU

რა თქმა უნდა, უძველესი, ყველაზე ხშირად გამოყენებული და საკამათო ტერმინია "პროცესორი".

IN თანამედროვე სამყაროპროცესორი არის ის, რასაც ვყიდულობთ ლამაზ საცალო ყუთში ან არც თუ ისე ლამაზ OEM პაკეტში. სოკეტში ჩასმული განუყოფელი ერთეული დედაპლატი. მაშინაც კი, თუ კონექტორი არ არის და მისი ამოღება შეუძლებელია, ანუ მჭიდროდ დამაგრებული, ეს არის ერთი ჩიპი.

მობილური სისტემები (ტელეფონები, ტაბლეტები, ლეპტოპები) და დესკტოპის უმეტესობას აქვს ერთი პროცესორი. სამუშაო სადგურები და სერვერები ზოგჯერ ამაყობენ ორი ან მეტი პროცესორით ერთ დედაპლატზე.

მრავალი CPU-ის მხარდაჭერა ერთ სისტემაში მოითხოვს მრავალრიცხოვან დიზაინში ცვლილებას. მინიმუმ, აუცილებელია მათი ფიზიკური კავშირის უზრუნველყოფა (დედაპლატზე რამდენიმე სოკეტის მიწოდება), პროცესორის იდენტიფიკაციის საკითხების გადაჭრა (იხ. მოგვიანებით ამ სტატიაში, ისევე როგორც ჩემი წინა შენიშვნა), მეხსიერების წვდომის კოორდინაცია და მიწოდების შეფერხება ( შეფერხების კონტროლერს უნდა შეეძლოს შეფერხებების მარშრუტირება რამდენიმე პროცესორისთვის) და, რა თქმა უნდა, ოპერაციული სისტემის მხარდაჭერა. სამწუხაროდ, მე ვერ ვიპოვე დოკუმენტური ხსენება Intel-ის პროცესორებზე პირველი მულტიპროცესორული სისტემის შექმნის შესახებ, მაგრამ ვიკიპედია ირწმუნება, რომ Sequent Computer Systems-მა მათ მიაწოდა უკვე 1987 წელს, Intel 80386 პროცესორების გამოყენებით, ერთ სისტემაში მრავალი ჩიპის მხარდაჭერა ხდება ფართოდ გავრცელებული. დაწყებული Intel® Pentium-ით.

თუ რამდენიმე პროცესორია, მაშინ თითოეულ მათგანს აქვს საკუთარი კონექტორი დაფაზე. თითოეულ მათგანს აქვს ყველა რესურსის სრული დამოუკიდებელი ასლები, როგორიცაა რეგისტრები, აღსრულების მოწყობილობები, ქეში. მათ აქვთ საერთო მეხსიერება - ოპერატიული მეხსიერება. მეხსიერება მათთან სხვადასხვა და საკმაოდ არატრივიალური გზით შეიძლება დაუკავშირდეს, მაგრამ ეს ცალკე ამბავია ამ სტატიის ფარგლებს გარეთ. მთავარი ის არის, რომ ნებისმიერ შემთხვევაში, სისტემაში შემავალი ყველა პროცესორიდან ხელმისაწვდომი ჰომოგენური საზიარო მეხსიერების ილუზია უნდა შეიქმნას შესრულებადი პროგრამებისთვის.


მზად აფრენისთვის! Intel® Desktop Board D5400XS

ბირთვი

ისტორიულად, Intel IA-32-ში მრავალ ბირთვი უფრო გვიან გამოჩნდა, ვიდრე Intel® HyperThreading, მაგრამ ლოგიკურ იერარქიაში ის შემდეგია.

როგორც ჩანს, თუ სისტემას აქვს მეტი პროცესორი, მაშინ მისი შესრულება უფრო მაღალია (დავალებებზე, რომლებსაც შეუძლიათ გამოიყენონ ყველა რესურსი). თუმცა, თუ მათ შორის კომუნიკაციის ღირებულება ძალიან მაღალია, მაშინ პარალელიზმიდან მიღებული ყველა მოგება კვდება საერთო მონაცემების გადაცემის ხანგრძლივი შეფერხებით. ეს არის ზუსტად ის, რაც შეინიშნება მრავალპროცესორულ სისტემებში - როგორც ფიზიკურად, ასევე ლოგიკურად ისინი ძალიან შორს არიან ერთმანეთისგან. ასეთ პირობებში ეფექტური კომუნიკაციისთვის აუცილებელია სპეციალიზებული ავტობუსების გამომუშავება, როგორიცაა Intel® QuickPath Interconnect. ენერგიის მოხმარება, საბოლოო გადაწყვეტის ზომა და ფასი, რა თქმა უნდა, ამ ყველაფრით არ მცირდება. კომპონენტების მაღალი ინტეგრაცია უნდა მოვიდეს სამაშველოში - უნდა შემოვიდეს პარალელური პროგრამის ნაწილების შემსრულებელი სქემები უფრო ახლო მეგობარიმეგობარს, სასურველია ერთი კრისტალისთვის. სხვა სიტყვებით რომ ვთქვათ, ერთმა პროცესორმა უნდა მოაწყოს რამდენიმე ბირთვებიყველაფერში ერთმანეთის იდენტურია, მაგრამ დამოუკიდებლად მუშაობენ.

Intel-ის პირველი მრავალბირთვიანი IA-32 პროცესორები 2005 წელს დაინერგა. მას შემდეგ, ბირთვების საშუალო რაოდენობა სერვერზე, დესკტოპზე და ახლა მობილური პლატფორმებისტაბილურად იზრდება.

ერთიდაიმავე სისტემაზე ორი ერთბირთვიანი პროცესორისგან განსხვავებით, რომლებიც მხოლოდ მეხსიერებას იზიარებენ, ორ ბირთვს ასევე შეუძლია ქეშის და მეხსიერებასთან დაკავშირებული სხვა რესურსების გაზიარება. ყველაზე ხშირად, პირველი დონის ქეში რჩება პირადი (თითოეულ ბირთვს აქვს საკუთარი), ხოლო მეორე და მესამე დონეები შეიძლება იყოს გაზიარებული ან ცალკე. ეს სისტემის ორგანიზაცია საშუალებას გაძლევთ შეამციროთ მონაცემთა მიწოდების შეფერხებები მეზობელ ბირთვებს შორის, განსაკუთრებით თუ ისინი მუშაობენ საერთო დავალებაზე.


ოთხბირთვიანი Intel-ის პროცესორის მიკროგრამა, რომელსაც აქვს Nehalem. გამოყოფილია ცალკეული ბირთვები, საერთო მესამე დონის ქეში, ასევე QPI ბმულები სხვა პროცესორებთან და საერთო მეხსიერების კონტროლერი.

ჰიპერძაფი

დაახლოებით 2002 წლამდე, ერთადერთი გზა IA-32 სისტემის მისაღებად, რომელსაც შეეძლო ორი ან მეტი პროგრამის პარალელურად გაშვება, იყო მრავალპროცესორული სისტემების გამოყენება. დაინერგა Intel® Pentium® 4, ისევე როგორც Xeon ხაზი კოდირებული სახელწოდებით Foster (Netburst). ახალი ტექნოლოგია- ჰიპერძაფები ან ჰიპერთრედები, - Intel® HyperThreading (შემდგომში HT).

არაფერია ახალი მზის ქვეშ. HT არის განსაკუთრებული შემთხვევა, რასაც ლიტერატურაში მოიხსენიებენ, როგორც ერთდროული მრავალძაფის (SMT). "რეალური" ბირთვებისგან განსხვავებით, რომლებიც სრული და დამოუკიდებელი ასლებია, HT-ის შემთხვევაში, შიდა კვანძების მხოლოდ ნაწილი, რომელიც პირველ რიგში პასუხისმგებელია არქიტექტურული მდგომარეობის - რეგისტრების შესანახად, დუბლირებულია ერთ პროცესორში. აღმასრულებელი კვანძები, რომლებიც პასუხისმგებელნი არიან მონაცემთა ორგანიზებასა და დამუშავებაზე, რჩება სინგულარული და ნებისმიერ დროს გამოიყენება მაქსიმუმ ერთ-ერთი ძაფით. ბირთვების მსგავსად, ჰიპერთედები იზიარებენ ქეშებს, მაგრამ რა დონიდან არის დამოკიდებული კონკრეტულ სისტემაზე.

მე არ შევეცდები ავხსნა SMT დიზაინის ყველა დადებითი და უარყოფითი მხარე ზოგადად და HT დიზაინის კონკრეტულად. დაინტერესებულ მკითხველს შეუძლია ტექნოლოგიის საკმაოდ დეტალური განხილვა ბევრ წყაროში და, რა თქმა უნდა, ვიკიპედიაში. თუმცა შემდეგს აღვნიშნავ მნიშვნელოვანი წერტილი, განმარტავს მიმდინარე ლიმიტებს ჰიპერთრედების რაოდენობაზე რეალურ სამყაროში წარმოებაში.

ძაფების შეზღუდვები
რა შემთხვევაშია გამართლებული „უსამართლო“ მრავალბირთვიანი HT-ის სახით არსებობა? თუ ერთი აპლიკაციის ძაფს არ შეუძლია ჩაიტვირთოს ყველა აღსრულების კვანძი ბირთვის შიგნით, მაშინ ისინი შეიძლება „გასესხონ“ სხვა ძაფს. ეს დამახასიათებელია აპლიკაციებისთვის, რომლებსაც აქვთ შეფერხება არა გამოთვლებში, არამედ მონაცემთა წვდომაში, ანუ ხშირად აწარმოებენ ქეშის გამოტოვებას და უწევთ მეხსიერებიდან მონაცემების მიწოდების ლოდინი. ამ დროის განმავლობაში, ბირთვი HT-ის გარეშე იძულებული იქნება უმოქმედო მდგომარეობაში იყოს. HT-ის არსებობა საშუალებას გაძლევთ სწრაფად გადართოთ თავისუფალი შემსრულებელი კვანძები სხვა არქიტექტურულ მდგომარეობაში (რადგან ის დუბლირებულია) და შეასრულოთ მისი ინსტრუქციები. ეს არის ტექნიკის განსაკუთრებული შემთხვევა, რომელსაც ეწოდება ლატენტური დამალვა, როდესაც ერთი ხანგრძლივი ოპერაცია, რომლის დროსაც სასარგებლო რესურსებიუსაქმური, ნიღბიანი სხვა დავალებების პარალელურად შესრულებით. თუ აპლიკაციას უკვე აქვს ბირთვის რესურსების გამოყენების მაღალი ხარისხი, ჰიპერთედების არსებობა არ იძლევა აჩქარების საშუალებას - აქ საჭიროა "პატიოსანი" ბირთვები.

ტიპიური სცენარები დესკტოპის და სერვერის აპლიკაციებისთვის, რომლებიც შექმნილია მანქანების არქიტექტურისთვის ზოგადი დანიშნულებააქვს პარალელურობის პოტენციალი, რომელიც ჩართულია HT-ით. თუმცა, ეს პოტენციალი სწრაფად გამოიყენება. ალბათ ამ მიზეზით, თითქმის ყველა IA-32 პროცესორზე, აპარატურის ჰიპერთედების რაოდენობა არ აღემატება ორს. ტიპიურ სცენარებში, სამი ან მეტი ჰიპერძაფების გამოყენების შედეგად მიღებული მოგება მცირე იქნება, მაგრამ დანაკარგის ზომა, მისი ენერგიის მოხმარება და ღირებულება მნიშვნელოვანია.

განსხვავებული სიტუაცია შეიმჩნევა ვიდეო ამაჩქარებლებზე შესრულებულ ტიპურ დავალებებს. აქედან გამომდინარე, ამ არქიტექტურებს ახასიათებს SMT ტექნოლოგიის გამოყენება ძაფების უფრო დიდი რაოდენობით. ვინაიდან Intel® Xeon Phi კოპროცესორები (გამოშვებული 2010 წელს) იდეოლოგიურად და გენეალოგიურად საკმაოდ ახლოსაა ვიდეო კარტებთან, მათ შეიძლება ჰქონდეთ ოთხი Hyperthreading თითოეულ ბირთვზე - კონფიგურაცია უნიკალური IA-32.

ლოგიკური პროცესორი

პარალელიზმის სამი აღწერილი „დონიდან“ (პროცესორები, ბირთვები, ჰიპერძაფები), ზოგიერთი ან თუნდაც ყველა მათგანი შეიძლება არ იყოს კონკრეტულ სისტემაში. ეს გავლენას ახდენს BIOS პარამეტრები(multi-core და multi-threading გამორთულია დამოუკიდებლად), მიკროარქიტექტურული ფუნქციები (მაგალითად, HT არ იყო Intel® Core™ Duo-დან, მაგრამ დაბრუნდა Nehalem-ის გამოშვებით) და სისტემის მოვლენები (მრავალპროცესორული სერვერების გამორთვა შესაძლებელია. წარუმატებელი პროცესორები, თუ ხარვეზები აღმოჩენილია და განაგრძობენ "ფრენას" დანარჩენებზე). როგორ ჩანს მრავალდონიანი კონკურენტული ზოოპარკი ოპერაციული სისტემისთვის და, საბოლოო ჯამში, აპლიკაციების აპლიკაციებისთვის?

გარდა ამისა, მოხერხებულობისთვის, ჩვენ აღვნიშნავთ პროცესორების, ბირთვების და ძაფების რაოდენობას გარკვეულ სისტემაში სამით ( x, , ), სად xარის პროცესორების რაოდენობა, - ბირთვების რაოდენობა თითოეულ პროცესორში და - ჰიპერთედების რაოდენობა თითოეულ ბირთვში. ამიერიდან ამ სამს დავარქმევ ტოპოლოგია- დამკვიდრებული ტერმინი, რომელსაც მცირე კავშირი აქვს მათემატიკის დარგთან. მუშაობა გვ = xyzგანსაზღვრავს მოწოდებული ერთეულების რაოდენობას ლოგიკური პროცესორებისისტემები. იგი განსაზღვრავს საერთო მეხსიერების სისტემაზე აპლიკაციის პროცესების დამოუკიდებელი კონტექსტების საერთო რაოდენობას, რომლებიც ასრულებენ პარალელურად, რაც ოპერაციული სისტემა იძულებულია გაითვალისწინოს. მე ვამბობ "იძულებით", რადგან ის ვერ აკონტროლებს ორი პროცესის შესრულების ბრძანებას სხვადასხვა ლოგიკურ პროცესორზე. ეს ასევე ეხება ჰიპერთრედებს: მიუხედავად იმისა, რომ ისინი მუშაობენ „თანმიმდევრულად“ ერთსა და იმავე ბირთვზე, კონკრეტული წესრიგი ნაკარნახევია აპარატურის მიერ და არ შეიძლება დაკვირვება ან კონტროლირებადი პროგრამებით.

ყველაზე ხშირად, ოპერაციული სისტემა მალავს საბოლოო აპლიკაციებს იმ სისტემის ფიზიკური ტოპოლოგიის მახასიათებლებს, რომელზედაც ის მუშაობს. მაგალითად, შემდეგი სამი ტოპოლოგია: (2, 1, 1), (1, 2, 1) და (1, 1, 2) - OS წარმოადგენს ორ ლოგიკურ პროცესორს, თუმცა პირველ მათგანს აქვს ორი პროცესორი, მეორე - ორი ბირთვი, ხოლო მესამე - მხოლოდ ორი ძაფი.


Windows Task Manager აჩვენებს 8 ლოგიკურ პროცესორს; მაგრამ რამდენია პროცესორებში, ბირთვებში და ჰიპერთრედებში?


Linux top აჩვენებს 4 ლოგიკურ პროცესორს.

ეს საკმაოდ მოსახერხებელია აპლიკაციის შემქმნელებისთვის - მათ არ უწევთ საქმე ტექნიკის ფუნქციებთან, რომლებიც ხშირად მათთვის უმნიშვნელოა.

ტოპოლოგიის პროგრამული განმარტება

რა თქმა უნდა, ტოპოლოგიის აბსტრაქცია ლოგიკურ პროცესორებად ერთ რაოდენობაში, ზოგიერთ შემთხვევაში საკმარის საფუძველს ქმნის დაბნეულობისა და გაუგებრობისთვის (ინტერნეტ კამათში). გამოთვლითი აპლიკაციები, რომელთაც სურთ ტექნიკის მაქსიმალური შესრულების გამორთვა, საჭიროებენ დეტალურ კონტროლს, თუ სად განთავსდება მათი ძაფები: ერთმანეთთან უფრო ახლოს მიმდებარე ჰიპერთედებზე ან, პირიქით, უფრო შორს სხვადასხვა პროცესორებზე. ლოგიკურ პროცესორებს შორის კომუნიკაციის სიჩქარე იმავე ბირთვში ან პროცესორში გაცილებით მაღალია, ვიდრე მონაცემთა გადაცემის სიჩქარე პროცესორებს შორის. სამუშაო მეხსიერების ორგანიზაციაში ჰეტეროგენურობის შესაძლებლობა ასევე ართულებს სურათს.

ინფორმაცია მთლიანად სისტემის ტოპოლოგიის შესახებ, ისევე როგორც თითოეული ლოგიკური პროცესორის პოზიციის შესახებ IA-32-ში, ხელმისაწვდომია CPUID ინსტრუქციის გამოყენებით. პირველი მულტიპროცესორული სისტემების გამოჩენის შემდეგ, ლოგიკური პროცესორის იდენტიფიკაციის სქემა რამდენჯერმე გაფართოვდა. დღეისათვის მისი ნაწილები მოთავსებულია CPUID-ის 1, 4 და 11 ფურცლებში. რომელი ფურცლის ნახვა შეიძლება განისაზღვროს სტატიიდან აღებული შემდეგი დიაგრამიდან:

აქ არ მოგწყინდებათ ამ ალგორითმის ცალკეული ნაწილების ყველა დეტალით. თუ არსებობს ინტერესი, ამ სტატიის შემდეგი ნაწილი შეიძლება დაეთმოს ამას. მივმართავ დაინტერესებულ მკითხველს, რომელიც შეძლებისდაგვარად დეტალურად განიხილავს ამ საკითხს. აქ პირველ რიგში მოკლედ აღვწერ რა არის APIC და როგორ უკავშირდება ის ტოპოლოგიას. შემდეგ ჩვენ გადავხედავთ 0xB ფურცელთან მუშაობას (თერთმეტი ათწილადში), რომელიც ამჟამად ბოლო სიტყვაა "აპიკო-ბილდინგი"-ში.

APIC ID
ლოკალური APIC (მოწინავე პროგრამირებადი შეფერხების კონტროლერი) არის მოწყობილობა (ახლა პროცესორის ნაწილი), რომელიც პასუხისმგებელია კონკრეტულ ლოგიკურ პროცესორზე მოსული შეფერხებების მართვაზე. თითოეულ ლოგიკურ პროცესორს აქვს საკუთარი APIC. და თითოეულ მათგანს სისტემაში უნდა ჰქონდეს უნიკალური APIC ID მნიშვნელობა. ამ რიცხვს იყენებენ შეფერხების კონტროლერები შეტყობინებების მიწოდებისას მიმართვისთვის და ყველა სხვა (მაგალითად, ოპერაციული სისტემა) ლოგიკური პროცესორების იდენტიფიცირებისთვის. ამ შეფერხების კონტროლერის სპეციფიკაცია განვითარდა ინტელის ჩიპები 8259 PIC ორმაგი PIC, APIC და xAPIC x2APIC-ის მეშვეობით.

ამჟამად APIC ID-ში შენახული ნომრის სიგანე სრულ 32 ბიტს მიაღწია, თუმცა წარსულში ის 16-ით იყო შეზღუდული, უფრო ადრე კი - მხოლოდ 8 ბიტით. დღეს, ძველი დროის ნარჩენები მიმოფანტულია CPUID-ში, მაგრამ CPUID.0xB.EDX აბრუნებს APIC ID-ის ყველა 32 ბიტს. თითოეულ ლოგიკურ პროცესორზე, რომელიც დამოუკიდებლად ასრულებს CPUID ინსტრუქციას, დაბრუნდება განსხვავებული მნიშვნელობა.

ოჯახური კავშირების გარკვევა
თავად APIC ID მნიშვნელობა არაფერს გეტყვით ტოპოლოგიის შესახებ. იმის გასარკვევად, თუ რომელი ორი ლოგიკური პროცესორია განთავსებული ერთ ფიზიკურ პროცესორში (ანუ ისინი არიან „ძმები“ ჰიპერთედები), რომელია ერთი და იგივე პროცესორის შიგნით და რომელია სრულიად განსხვავებული პროცესორი, თქვენ უნდა შეადაროთ მათი APIC ID მნიშვნელობები. ურთიერთობის ხარისხიდან გამომდინარე, მათი ზოგიერთი ნაწილი დაემთხვევა. ეს ინფორმაცია შეიცავს CPUID.0xB ქვესისტებს, რომლებიც დაშიფრულია ECX-ში. თითოეული მათგანი აღწერს EAX-ში ერთ-ერთი ტოპოლოგიის დონის ბიტის ველის პოზიციას (უფრო ზუსტად, ბიტების რაოდენობას, რომელიც უნდა გადაიტანოს მარჯვნივ APIC ID-ში ქვედა ტოპოლოგიის დონის მოსაშორებლად), ასევე ამ დონის ტიპი - ჰიპერთრეადი, ბირთვი ან პროცესორი - ECX-ში.

იმავე ბირთვში მდებარე ლოგიკური პროცესორებისთვის, ყველა APIC ID ბიტი ემთხვევა, გარდა SMT ველისა. ერთსა და იმავე პროცესორში მდებარე ლოგიკური პროცესორებისთვის, ყველა ბიტი Core და SMT ველების გარდა. ვინაიდან CPUID.0xB ქვეფურცლების რაოდენობა შეიძლება გაიზარდოს, ეს სქემასაშუალებას მოგვცემს მხარი დავუჭიროთ ტოპოლოგიების აღწერას უფრო დიდი რაოდენობის დონეებით, თუ მომავალში ამის საჭიროება გაჩნდება. უფრო მეტიც, შესაძლებელი იქნება შუალედური დონის დანერგვა არსებულებს შორის.

ამ სქემის ორგანიზების მნიშვნელოვანი შედეგია ის, რომ სისტემის ყველა ლოგიკური პროცესორის ყველა APIC ID-ის კომპლექტში შეიძლება იყოს „ხვრელები“, ე.ი. ისინი თანმიმდევრულად არ წავლენ. მაგალითად, მრავალბირთვიან პროცესორში, სადაც HT გამორთულია, ყველა APIC ID შეიძლება აღმოჩნდეს ლუწი, რადგან ყველაზე ნაკლებად მნიშვნელოვანი ბიტი, რომელიც პასუხისმგებელია ჰიპერთედის ნომრის დაშიფვრაზე, ყოველთვის იქნება ნული.

მე აღვნიშნავ, რომ CPUID.0xB არ არის ერთი წყაროინფორმაცია ოპერაციული სისტემისთვის ხელმისაწვდომი ლოგიკური პროცესორების შესახებ. მისთვის ხელმისაწვდომი ყველა პროცესორის სია, მათ APIC ID მნიშვნელობებთან ერთად, დაშიფრულია MADT ACPI ცხრილში.

ოპერაციული სისტემები და ტოპოლოგია

ოპერაციული სისტემებიმიაწოდოს ინფორმაცია ლოგიკური პროცესორების ტოპოლოგიის შესახებ აპლიკაციებს საკუთარი ინტერფეისის გამოყენებით.

Linux-ზე ტოპოლოგიის ინფორმაცია შეიცავს /proc/cpuinfo ფსევდოფილს, ასევე dmidecode ბრძანების გამომავალს. ქვემოთ მოცემულ მაგალითში მე ვფილტრავ cpuinfo-ს შიგთავსს ზოგიერთ ოთხბირთვიან სისტემაზე HT-ის გარეშე და ვტოვებ მხოლოდ ტოპოლოგიასთან დაკავშირებულ ჩანაწერებს:

ფარული ტექსტი

ggg@shadowbox:~$ cat /proc/cpuinfo |grep "პროცესორი\|physical\ id\|ძმები\|core\|cores\|apicid" პროცესორი: 0 ფიზიკური ID: 0 ძმა: 4 ბირთვი id: 0 პროცესორის ბირთვი: 2 apicid: 0 საწყისი apicid: 0 პროცესორი: 1 ფიზიკური ID: 0 ძმა: 4 ბირთვი id: 0 CPU ბირთვი: 2 apicid: 1 საწყისი apicid: 1 პროცესორი: 2 ფიზიკური id: 0 ძმა: 4 ბირთვი id: 1 cpu ბირთვი: 2 აპიციდი: 2 საწყისი აპიციდი: 2 პროცესორი: 3 ფიზიკური id: 0 ძმა: 4 ბირთვი id: 1 ცპუ ბირთვი: 2 აპიციდი: 3 საწყისი აპიციდი: 3

FreeBSD-ზე ტოპოლოგია მოხსენებულია sysctl მექანიზმის მეშვეობით kern.sched.topology_spec ცვლადში, როგორც XML:

ფარული ტექსტი

user@host:~$ sysctl kern.sched.topology_spec kern.sched.topology_spec: 0, 1, 2, 3, 4, 5, 6, 7 0, 1, 2, 3, 4, 5, 6, 7 0, 1 THREAD ჯგუფიSMT ჯგუფი 2, 3 THREAD ჯგუფიSMT ჯგუფი 4, 5 THREAD ჯგუფიSMT ჯგუფი 6, 7 THREAD ჯგუფიSMT ჯგუფი

MS Windows 8-ში ტოპოლოგიის ინფორმაცია შეგიძლიათ ნახოთ სამუშაო მენეჯერში.

© 2024 ermake.ru -- კომპიუტერის შეკეთების შესახებ - საინფორმაციო პორტალი