Crysis 2
Bu o'yin juda qiziqarli natijalarni ko'rsatdi. Avvalo shuni ta'kidlaymizki, HyperThreading ta'siri ikki yadroli protsessorlarda yaqqol seziladi - Core i3 Pentium'dan deyarli 9 foizga o'zib ketdi, bu ushbu o'yin uchun juda ko'p. HT va Intel g'alaba qozonadimi? Haqiqatan ham emas, chunki Core i7 ancha arzonroq Core i5 dan hech qanday foyda ko'rmadi. Ammo buning oqilona tushuntirishi bor - Crysis 2 to'rttadan ortiq ma'lumot oqimidan foydalana olmaydi. Shu sababli, biz HT bilan ikki yadroli protsessorda yaxshi o'sishni ko'rmoqdamiz - to'rtta ip ikkitadan ko'ra mantiqiy bo'lsa ham yaxshiroq. Boshqa tomondan, qo'shimcha Core i7 iplarini olish uchun hech qanday joy yo'q edi, to'rtta jismoniy yadro etarli edi. Shunday qilib, ushbu test natijalariga ko'ra, biz Core i3-da HTning ijobiy ta'sirini qayd etishimiz mumkin, bu Pentium-dan sezilarli darajada yaxshi. Ammo to'rt yadroli protsessorlar orasida Core i5 yana oqilona echimga o'xshaydi.
Jang maydoni 3
Bu erda natijalar juda g'alati. Agar yadrolar soni bo'yicha testda jang maydoni mikroskopik, ammo chiziqli o'sish namunasi bo'lsa, Hyper-Threading-ning kiritilishi natijalarni buzdi. Aslida, shuni aytishimiz mumkinki, Core i3 ikkita yadroli va HT bilan, hatto Core i5 va Core i7 dan ham eng yaxshisi bo'lib chiqdi. Albatta, g'alati, lekin ayni paytda Core i5 va Core i7 yana bir xil darajada. Buni nima tushuntirishi aniq emas. Katta ehtimol bilan, ushbu o'yindagi sinov metodologiyasi bu erda rol o'ynadi, bu standart ko'rsatkichlarga qaraganda kattaroq xatolarga olib keladi.
Oxirgi sinovda F1 2011 yadrolar soniga nisbatan juda tanqidiy o'yinlardan biri bo'lib chiqdi va bunda Hyper-Threading texnologiyasining ishlashiga ajoyib ta'siri yana hayratda qoldi. Va yana, Crysis 2-da bo'lgani kabi, HT-ning kiritilishi ikki yadroli protsessorlarda o'zini juda yaxshi ko'rsatdi. Bizning an'anaviy Core i3 va Pentium o'rtasidagi farqni qarang - bu ikki baravar ko'p! Ko'rinib turibdiki, o'yinda ikkita yadro etishmayapti va shu bilan birga uning kodi shunchalik yaxshi parallellashtirilganki, effekt ajoyib. Boshqa tomondan, to'rtta jismoniy yadroga qarshi hech qanday zarba yo'q - Core i5 Core i3 dan sezilarli darajada tezroq. Ammo Core i7, avvalgi o'yinlarda bo'lgani kabi, Core i5 fonida ham ajoyib narsa ko'rsatmadi. Sababi bir xil - o'yin 4 dan ortiq ipdan foydalana olmaydi va HT ishining qo'shimcha xarajatlari Core i7 ning ish faoliyatini Core i5 darajasidan pastga tushiradi.
Qadimgi jangchiga Hyper-Threading kirpi futbolkasidan ko'ra ko'proq kerak emas - uning ta'siri F1 2011 yoki Crysis 2 dagi kabi sezilmaydi. Shu bilan birga, shuni ta'kidlaymizki, HTni ikki yadroli qurilmada yoqish. protsessor bitta qo'shimcha ramka olib keldi. Bu, albatta, Core i3 ni Pentium dan yaxshiroq deb aytish uchun etarli emas. Hech bo'lmaganda, bu yaxshilanish ushbu protsessorlar orasidagi narx farqiga aniq mos kelmaydi. Core i5 va Core i7 o'rtasidagi narx farqini eslashning hojati yo'q, chunki HT-ni qo'llab-quvvatlamaydigan protsessor yana tezroq bo'lib chiqdi. Va sezilarli darajada tezroq - 7 foizga. Nima bo'lishidan qat'iy nazar, biz yana shuni ta'kidlaymizki, to'rtta ip bu o'yin uchun maksimaldir, shuning uchun HyperThreading Ushbu holatda Core i7 ga yordam bermaydi, lekin aralashadi. Agar siz BIOS sozlamalari tarkibini diqqat bilan ko'rib chiqsangiz, u erda CPU Hyper Threading Technology opsiyasini ko'rgan bo'lishingiz mumkin. Va siz Hyper Threading nima ekanligini (Hyper Threading Technology, rasmiy nomi Hyper Threading Technology, HTT) va bu variant nima uchun ekanligini qiziqtirgandirsiz. Hyper Threading nisbatan yangi texnologiya Pentium arxitektura protsessorlari uchun Intel tomonidan ishlab chiqilgan. Amaliyot shuni ko'rsatadiki, Hyper Threading texnologiyasidan foydalanish ko'p hollarda protsessor unumdorligini taxminan 20-30% ga oshirishga imkon berdi. Bu erda kompyuterning markaziy protsessorining umuman qanday ishlashini esga olishingiz kerak. Kompyuterni yoqqaningizdan va undagi dasturni ishga tushirishingiz bilan protsessor undagi mashina kodi deb ataladigan ko'rsatmalarni o'qiy boshlaydi. Har bir ko'rsatmani navbatma-navbat o'qiydi va ularni birma-bir bajaradi. Biroq, ko'pgina dasturlarda bir vaqtning o'zida bir nechta dasturiy jarayonlar mavjud. Bundan tashqari, zamonaviy operatsion tizimlar foydalanuvchiga bir nechtasiga ega bo'lish imkonini beradi ishlaydigan dasturlar... Va ular shunchaki yo'l qo'ymaydilar - aslida, operatsion tizimda bitta jarayon bajarilgan vaziyat bugungi kunda mutlaqo aqlga sig'maydi. Shu sababli, eski texnologiyalar bo'yicha ishlab chiqilgan protsessorlar bir vaqtning o'zida bir vaqtning o'zida bir nechta jarayonlarni qayta ishlashni talab qiladigan holatlarda past unumdorlikka ega edi. Albatta, bu muammoni hal qilish uchun siz tizimga bir vaqtning o'zida bir nechta protsessorlarni yoki bir nechta jismoniy hisoblash yadrolaridan foydalanadigan protsessorlarni kiritishingiz mumkin. Ammo bunday yaxshilanish qimmat, texnik jihatdan qiyin va amaliy nuqtai nazardan har doim ham samarali emas. Rivojlanish tarixi Shu sababli, bitta jismoniy yadroda bir nechta jarayonlarni qayta ishlashga imkon beradigan texnologiyani yaratishga qaror qilindi. Bunday holda, dasturlar uchun masala tizimda bir vaqtning o'zida bir nechta protsessor yadrolari mavjud kabi ko'rinadi.Hyper Threading texnologiyasini qo'llab-quvvatlash birinchi marta protsessorlarda 2002 yilda paydo bo'lgan. Bular Pentium 4 oilasining protsessorlari va soat tezligi 2 GGts dan yuqori bo'lgan Xeon server protsessorlari edi. Dastlab, texnologiya Jekson kod nomini oldi, ammo keyin uning nomi Hyper Threadingga o'zgartirildi, bu keng omma uchun tushunarliroq - bu taxminan "super iplik" deb tarjima qilinishi mumkin. Shu bilan birga, Intel ma'lumotlariga ko'ra, Hyper Threading-ni qo'llab-quvvatlovchi protsessor matritsasining yuzasi uni qo'llab-quvvatlamaydigan oldingi modelga nisbatan atigi 5% ga oshdi va unumdorligi o'rtacha 20% ga oshdi. Texnologiya umuman yaxshi ishlashiga qaramay, shunga qaramay, bir qator sabablarga ko'ra Intel korporatsiyasi Pentium 4 protsessorlarini almashtirgan Core 2 protsessorlarida Hyper Threading texnologiyasini o'chirishga qaror qildi.Biroq Hyper Threading keyinchalik Sandy Bridgeda yana paydo bo'ldi, Ayvi Bridge va Xasvell ularda sezilarli darajada qayta ishlangan. Texnologiyaning mohiyati Hyper Threading texnologiyasini tushunish juda muhim, chunki u ulardan biridir asosiy funktsiyalari Intel protsessorlarida. Protsessorlar tomonidan qilingan barcha yutuqlarga qaramay, ular bitta muhim kamchilikka ega - ular bir vaqtning o'zida faqat bitta ko'rsatmani bajarishi mumkin. kabi ilovalarni ishga tushiryapsiz deylik matn muharriri, brauzer va Skype. Foydalanuvchi nuqtai nazaridan, ushbu dasturiy muhitni ko'p vazifali deb atash mumkin, ammo protsessor nuqtai nazaridan bu juda uzoqdir. Protsessor yadrosi hali ham ma'lum vaqt davomida bitta buyruqni bajaradi. Bunday holda, protsessorning vazifasi protsessor vaqt resurslarini o'rtasida taqsimlashni o'z ichiga oladi alohida ilovalar... Ko'rsatmalarning bunday ketma-ket bajarilishi juda tez bo'lgani uchun siz buni sezmaysiz. Va sizga hech qanday kechikish yo'qdek tuyuladi. Ammo hali ham kechikish bor. Kechikish protsessorning har bir dastur uchun ma'lumotlar bilan ta'minlanishi bilan bog'liq. Har bir ma'lumot oqimi ma'lum bir vaqtda kelishi va protsessor tomonidan individual ravishda qayta ishlanishi kerak.Hyper Threading texnologiyasi har bir protsessor yadrosiga ma'lumotlarni qayta ishlashni rejalashtirish va resurslarni bir vaqtning o'zida ikkita oqimga taqsimlash imkonini beradi.
Shuni ta'kidlash kerakki, zamonaviy protsessorlarning yadrosida bir vaqtning o'zida bir nechta ijro etuvchi qurilmalar mavjud bo'lib, ularning har biri ma'lumotlar ustida ma'lum bir operatsiyani bajarish uchun mo'ljallangan. Shu bilan birga, ushbu ijro etuvchi qurilmalarning ba'zilari bitta ipning ma'lumotlarini qayta ishlash jarayonida bo'sh turishi mumkin. Ushbu vaziyatni tushunish uchun biz konveyerda yig'ish sexida ishlaydigan va har xil turdagi qismlarga ishlov beradigan ishchilarga o'xshatishimiz mumkin. Har bir ishchi ma'lum bir vazifani bajarish uchun mo'ljallangan maxsus asbob bilan jihozlangan. Biroq, agar qismlar noto'g'ri ketma-ketlikda kelsa, kechikishlar yuzaga keladi - chunki ishchilarning ba'zilari ish boshlash navbatini kutishmoqda. Hyper Threading-ni ilgari bo'sh turgan ishchilar o'z ishlarini boshqalardan mustaqil ravishda amalga oshirishlari uchun do'konga yotqizilgan qo'shimcha konveyer bilan solishtirish mumkin. Hali ham bitta do'kon bor, lekin ehtiyot qismlar tezroq va samaraliroq qayta ishlanadi, shuning uchun ishlamay qolish vaqti kamayadi. Shunday qilib, Hyper Threading bitta ipdan ko'rsatmalarni bajarishda bo'sh turgan protsessor ijro birliklaridan foydalanishga imkon berdi.Hyper Threading-ni qo'llab-quvvatlaydigan ikki yadroli protsessorli kompyuterni yoqsangiz va "Ishlash" yorlig'idan Windows Task Manager-ni ochsangiz, unda to'rtta grafik topasiz. Ammo bu sizda 4 ta protsessor yadrosi bor degani emas.
Buning sababi shundaki, Windows har bir yadroda ikkita mantiqiy protsessor mavjud deb hisoblaydi. "Mantiqiy protsessor" atamasi kulgili ko'rinadi, lekin u jismonan mavjud bo'lmagan protsessorni anglatadi. Windows har bir mantiqiy protsessorga ma'lumotlar oqimini yuborishi mumkin, lekin aslida faqat bitta yadro bu ishni bajaradi. Shuning uchun Hyper Threading texnologiyasiga ega bitta yadro alohida jismoniy yadrolardan sezilarli darajada farq qiladi.
Hyper Threading texnologiyasi quyidagi apparat va dasturiy ta'minotdan yordam talab qiladi:
Markaziy protsessor
Anakart chiplari
Operatsion tizim
Texnologiyaning afzalliklari Endi navbatdagi savolni ko'rib chiqamiz - Hyper Threading texnologiyasi kompyuter ish faoliyatini qanchalik oshiradi? Internetda kezish va matn terish kabi kundalik vazifalarda texnologiyaning afzalliklari unchalik aniq emas. Ammo shuni yodda tutingki, bugungi protsessorlar shunchalik kuchliki, kundalik vazifalar kamdan-kam hollarda protsessorni to'liq yuklaydi. Bundan tashqari, ko'p narsa uning qanday yozilishiga bog'liq dasturiy ta'minot... Siz bir vaqtning o'zida bir nechta dasturlarni ishga tushirishingiz mumkin, ammo yuk grafigiga qarab, har bir yadroda faqat bitta mantiqiy protsessor ishlatilishini ko'rasiz. Buning sababi, dasturiy ta'minot jarayonlarni yadrolar o'rtasida taqsimlashni qo'llab-quvvatlamaydi. Biroq, murakkabroq vazifalarda Hyper Threading foydaliroq bo'lishi mumkin. 3D modellash dasturlari, 3D o'yinlar, musiqa yoki video kodlash/dekodlash dasturlari va ko'plab ilmiy ilovalar kabi ilovalar ko'p ish zarrachalaridan maksimal darajada foydalanish uchun yozilgan. Shuning uchun siz murakkab o'yinlarni o'ynash, musiqa tinglash yoki filmlarni tomosha qilish orqali Hyper Threading-ni qo'llabquvvatlaydigan kompyuterning ishlashidan foydalanishingiz mumkin. Ishlashning o'sishi 30% gacha bo'lishi mumkin, ammo Hyper Threading umuman afzallik bermagan holatlar bo'lishi mumkin. Ba'zan, agar ikkala oqim protsessorning barcha ijro birliklarini bir xil vazifalar bilan yuklagan bo'lsa, unumdorlikning biroz pasayishi ham mumkin.
BIOS Setup-da Hyper Threading parametrlarini o'rnatishga imkon beruvchi mos variant mavjudligiga qaytsak, aksariyat hollarda ushbu funktsiyani yoqish tavsiya etiladi.
Xulosa
Hyper Threading-dan foydalanganda maksimal samaradorlik o'sishi 30% ni tashkil etganligi sababli, texnologiya protsessor yadrolari sonini ikki baravar oshirishga teng deb aytish mumkin emas. Shunga qaramay, Hyper Threading foydali variant bo'lib, kompyuter egasi sifatida bu sizga zarar keltirmaydi. Uning afzalligi, masalan, multimediya fayllarini tahrirlash yoki Photoshop yoki Maya kabi professional dasturlar uchun kompyuterni ish stantsiyasi sifatida ishlatish kabi holatlarda sezilarli bo'ladi.
Hyper-threading texnologiyasi kontekstida xotira ishlashini baholash zarur bo'lgan vaqt bor edi. Biz uning ta'siri har doim ham ijobiy emas degan xulosaga keldik. Bo'sh vaqt kvanti paydo bo'lganda, tadqiqotni davom ettirish va o'z dizaynimizdagi dasturiy ta'minotdan foydalangan holda mashina soatlari va bitlarining aniqligi bilan sodir bo'layotgan jarayonlarni o'rganish istagi paydo bo'ldi.
Tadqiqot platformasi
Tajriba ob'ekti - ASUS noutbuki Intel Core i7-4700HQ protsessorli N750JK. Intel Turbo Boost bilan 2,4 gigagertsli soat tezligi, 3,4 gigagertsgacha. O'rnatilgan 16 gigabayt tasodifiy kirish xotirasi Ikki kanalli rejimda ishlaydigan DDR3-1600 (PC312800). Operatsion tizim - Microsoft Windows 8.1 64 bit. 1-rasm O'rganilayotgan platformaning konfiguratsiyasi.
O'rganilayotgan platformaning protsessorida 4 ta yadro mavjud bo'lib, ular HyperThreading texnologiyasi yoqilganda, 8 ta ip yoki mantiqiy protsessorlar uchun apparat ta'minotini ta'minlaydi. Mikrodastur platformasi ushbu ma'lumotni bir nechta APIC tavsif jadvali (MADT) ACPI jadvali orqali operatsion tizimga uzatadi. Platformada faqat bitta RAM kontrolleri mavjud bo'lganligi sababli, protsessor yadrolarining xotira kontrollerlariga yaqinligini e'lon qiladigan SRAT (tizim resurslariga yaqinlik jadvali) mavjud emas. Shubhasiz, sinovdan o'tgan noutbuk NUMA platformasi emas, balki operatsion tizim, birlashtirish maqsadida uni bir domenga ega NUMA tizimi deb hisoblaydi, buni NUMA tugunlari = 1 chizig'i tasdiqlaydi. Bizning tajribalarimiz uchun asosiy fakt shundaki, birinchi darajali ma'lumotlar keshi 32 kilobayt hajmga ega. to'rt yadroning har biri. Bitta yadroli ikkita mantiqiy protsessor L1 va L2 keshlarini birgalikda taqsimlaydi.
Tekshirilgan operatsiya
Biz ma'lumotlar blokini o'qish tezligining uning hajmiga bog'liqligini tekshiramiz. Buning uchun biz eng samarali usulni tanlaymiz, ya'ni VMOVAPD AVX ko'rsatmasi yordamida 256 bitli operandlarni o'qish. Grafiklarda X o'qi - blok o'lchami, Y o'qi - o'qish tezligi. L1 kesh hajmiga mos keladigan X nuqtasiga yaqin joyda biz burilish nuqtasini ko'rishni kutamiz, chunki ishlov berilayotgan blok kesh xotirasidan chiqib ketgandan so'ng unumdorlik pasayishi kerak. Bizning testimizda, ko'p tarmoqli ishlov berishda, boshlangan 16 ta ipning har biri alohida manzillar diapazoni bilan ishlaydi. Haydash uchun Hyper-Threading texnologiyasi ilova ichida har bir ip har bir mantiqiy protsessorga bir bit mos keladigan niqobni o'rnatuvchi SetThreadAffinityMask API funksiyasidan foydalanadi. Bitta bit qiymati belgilangan protsessorni belgilangan oqim tomonidan ishlatishga imkon beradi, nol qiymat uni o'chiradi. O'rganilayotgan platformaning 8 ta mantiqiy protsessorlari uchun niqob 11111111b barcha protsessorlardan foydalanishga imkon beradi (Hyper-Threading yoqilgan), maska 01010101b har bir yadroda bitta mantiqiy protsessordan foydalanishga imkon beradi (Hyper-Threading o'chirilgan). Grafiklarda quyidagi qisqartmalar qo'llaniladi:
MBPS (sekundiga megabayt) – sekundiga megabaytlarda o'qish tezligini bloklash; CPI (ko'rsatma bo'yicha soatlar) – har bir ko'rsatma uchun belgilar soni; TSC (vaqt markasi hisoblagichi) – protsessor sikli hisoblagichi. Eslatma: Turbo Boost rejimida ishlaganda TSC registrining soat tezligi protsessorning takt tezligiga mos kelmasligi mumkin. Natijalarni sharhlashda buni hisobga olish kerak.
Grafiklarning o'ng tomonida dastur oqimlarining har birida yoki ushbu kodning birinchi 128 baytida bajariladigan maqsadli operatsiya tsiklining tanasini tashkil etuvchi o'n oltilik ko'rsatmalar to'plami tasvirlangan.
Do'stlaringiz bilan baham: |