Mikro iplar (ko'p yadroli) - Micro-Threads (multi core)

Mikro iplar ko'p yadroli va ko'p yadroli protsessorlar uchun ko'p ipli arxitekturaga o'xshash xotira kechikishini yashirish mexanizmi. Biroq, u amalga oshiriladi dasturiy ta'minot Cell Broadband Engine kabi ko'p yadroli protsessorlar uchun xotira kechikishi yoki kiritish-chiqarish operatsiyalari tufayli yuzaga keladigan kechikishlarni dinamik ravishda yashirish.

Kirish

Micro-threading - bu ko'p yadroli yoki ko'p yadroli protsessorlar ichida kichik iplarni yaratadigan dasturiy ta'minotga asoslangan torli ramka. Har bir yadro bo'sh vaqtidan foydalanadigan ikkita yoki undan ortiq mayda ipga ega bo'lishi mumkin. Bu Intel tomonidan ixtiro qilingan giper-ipga yoki zamonaviy mikro protsessorlarda umumiy ko'p tarmoqli arxitekturaga o'xshaydi. Bu bir yadroda ishlaydigan bir nechta ish zarrachalarining mavjud bo'lishiga imkon beradi, hatto bu yadroda ko'p tarmoqli bo'lmasa ham, tizimning asosiy xotirasiga qimmat kontekstni almashtirishni amalga oshirmasdan. apparat mantig'i. Mikro-iplar, asosan, har bir yadro ichidagi xotiraning kechikishini yashirishni hisoblash talablari bilan hisoblash orqali yashiradi. Mikro iplar va joriy iplar modellarining asosiy farqi shundaki, mikro iplar kontekstni almashtirish uchun sarflanadigan yuk juda kichikdir. Masalan, yuqori mikrosxemalarni amalga oshirish Uyali keng polosali dvigatel 160 nano soniyani tashkil qiladi; Shu bilan birga, butun yadroning (SPE) ipini kontekstga almashtirishga sarflanadigan xarajat 2000 mikro-soniyani tashkil qiladi. Ushbu past xarajat uchta asosiy omilga bog'liq. Birinchidan, mikro iplar juda kichik. Har bir mikrosxemada bitta yoki ikkita oddiy, ammo muhim vazifalar bajariladi. Ikkinchidan, mikrosxemalar kontekstiga faqat hozirgi vaqtda bajarilayotgan yadroning registr fayli kiradi. Uchinchidan, mikrosxemalar kontekstning yadrosi uchun ajratilgan keshga o'tkaziladi, bu esa bu jarayonni juda tez va samarali qiladi.

Fon

Mikroprotsessorlar tezlashib borayotganligi sababli, asosan bir necha oyda bir yadrolar qo'shilishi sababli, xotira kechikishidagi bo'shliq tobora kengayib bormoqda. Xotirada kechikish 1980 yilda bir necha tsiklga teng edi va hozirgi kunda u deyarli 1000 tsiklga etadi. Agar mikro protsessorda etarli yadrolar mavjud bo'lsa va ular bir vaqtning o'zida asosiy xotiraga so'rovlar yubormasalar, xotira kechikishini qisman yig'ish yashiriladi. Ba'zi yadrolar bajarilishi mumkin, boshqalari esa xotira javobini kutishmoqda. Bu ko'p yadroli protsessorlar uchun eng yaxshi holat emas. Yuqori samaradorlik bo'yicha hisoblash bo'yicha mutaxassislar barcha yadrolarni doimo band qilish uchun harakat qilmoqdalar. Shunday qilib, agar har bir yadro doimo band bo'lsa, butun mikro protsessordan to'liq foydalanish mumkin. Dasturiy ta'minot asosida ish zarralarini yaratish muammoni aniq sabablarga ko'ra hal qilmaydi. Kontekst iplarini asosiy xotiraga almashtirish xotira kechikishi bilan taqqoslaganda juda qimmat ishlaydi. Masalan, Cell Broadband Engine kontekstida yadroning har qanday ipini almashtirish eng yaxshi holatlarda 2000 mikro-soniyani oladi. Ikki yoki ko'p tamponlash kabi ba'zi dasturiy ta'minot texnikasi xotirada kechikish muammosini hal qilishi mumkin. Shu bilan birga, ular odatiy algoritmlarda ishlatilishi mumkin, bu erda dastur xotiradan olish uchun ma'lumotlarning keyingi qismi qaerda ekanligini biladi; bu holda u avval so'ralgan ma'lumotlarni qayta ishlash paytida xotiraga so'rov yuboradi. Ammo, ushbu usul, agar dastur xotiradan olish uchun keyingi ma'lumotni bilmasa, ishlamaydi. Boshqacha qilib aytadigan bo'lsak, u kombinatorial algoritmlarda ishlamaydi, masalan daraxtlar oralig'i yoki tasodifiy ro'yxat reytingi. Bundan tashqari, ko'p tamponlash xotiraning kechikishi doimiy va uni statik ravishda yashirish mumkin deb hisoblaydi. Biroq, haqiqat shuni ko'rsatadiki, xotira kechikishi dasturdan boshqasiga o'zgaradi. Bu mikroprotsessorning umumiy resurslariga, masalan, yadrolarning o'zaro bog'lanishidagi so'rovlar tezligiga bog'liq.

Amaldagi dastur

Hozirgi kunda mikro-iplar amalga oshirilmoqda Uyali keng polosali dvigatel.[1] Uchdan besh martagacha ishlashni yaxshilashga erishish mumkin. Hozirgi vaqtda bu muntazam va kombinatorial algoritmlar uchun tasdiqlangan. Boshqa ba'zi harakatlar uning ilmiy algoritmlar uchun hayotiyligini isbotlashga harakat qilmoqda.

Ishlash

Mikro-iplar mikroprotsessorning ish vaqtidan foydalanish asosida xotira kechikishini eng yaxshi tarzda yashirish uchun juda yaxshi echimni beradi. Masalan, agar ishlov berish va kontekstni almashtirish vaqtiga nisbatan xotiraning kechikishi juda yuqori bo'lsa, ko'proq mikro-iplar qo'shilishi mumkin; bu xotiradan ma'lumotlarning katta bo'laklari so'ralganda yoki xotira joylari ko'p bo'lganda yuz beradi. Agar bu ratsion kichik bo'lsa, ish vaqtida kamroq mikrosxemalar kiritilishi mumkin. Bu amalga oshirilgan dastur bilan bog'liq omillarga va tizimning ish vaqti omillariga bog'liq.

Tanqid

Mikro-iplar ko'p va ko'p yadroli protsessorlar uchun xotira kechikishini yashirish uchun istiqbolli modelni taqdim etsa-da, u hal qilinishi kerak bo'lgan ba'zi muhim tanqidlarga ega:

  • Buning uchun maxsus apparat yordami kerak. Mikro iplarni samarali rejalashtirish uchun har bir yadro o'zining mahalliy uzilish moslamasiga ega bo'lishi kerak. Biroq, oldindan rejalashtirishni rejalashtirish siyosatiga rioya qilinsa, to'xtatib qo'yilgan inshoot talab qilinmaydi.
  • Har bir yadro dasturchi tomonidan qo'lda boshqariladigan o'zining mahalliy keshiga ega bo'lganda yaxshi ishlaydi.
  • Bir yadroga ko'proq mikrosxemalarni qo'shish mikroprotsessorning umumiy resurslariga yukni keskin oshiradi. Xotira va sinxronizatsiya bo'yicha ko'proq so'rovlar, ehtimol umumiy resurslarda tirbandlikni keltirib chiqaradi. Shu bilan birga, ushbu muammoni ish vaqti tizimining monitoringi bilan mikroprotsessorning muhim choralari, masalan, xotira kechikishi kabi holatlarda yumshatish mumkin va shunga mos ravishda mikrosxemalarni kamaytirish yoki rejalashtirish siyosatini o'zgartirish orqali umumiy bajarilishini sekinlashtirishi mumkin.

Adabiyotlar

  1. ^ Ahmed, M .; R. Ammar; S. Rajasekaran (2008), "SPENK: uyali keng polosali dvigatelga yana bir parallellik darajasini qo'shish" (pdf), Yangi avlod multicore / manycore texnologiyalari bo'yicha 1-xalqaro forum, Qohira, Misr: ACM, 1-10 bet, olingan 2009-03-04 Cite-da bo'sh noma'lum parametr mavjud: | tahrirlovchilar = (Yordam bering)