Geterogen hisoblash - Heterogeneous computing

Geterogen hisoblash bir nechta protsessor turlarini yoki ishlatadigan tizimlarni nazarda tutadi yadrolari. Ushbu tizimlar ishlashga erishadilar yoki energiya samaradorligi faqat bir xil turdagi protsessorlarni qo'shish bilan emas, balki o'xshash bo'lmaganlarni qo'shish orqali koprotsessorlar, odatda, muayyan vazifalarni bajarish uchun ixtisoslashtirilgan ishlov berish imkoniyatlarini o'z ichiga oladi.[1]

Heterojenlik

Odatda hisoblash sharoitida heterojenlik[qachon? ] boshqasiga ko'rsatmalar to'plami (ISA), bu erda asosiy protsessor bitta va boshqa protsessorlar boshqasiga ega - odatda juda boshqacha - arxitektura (balki bittadan ko'p), shunchaki boshqacha emas mikroarxitektura (suzuvchi nuqta raqamlarni qayta ishlash bu alohida holat - odatda heterojen deb atalmaydi).

Ilgari heterojen hisoblash turli xil ISAlar bilan boshqacha muomala qilish kerakligini anglatar edi, zamonaviy misolda esa Geterogen tizim arxitekturasi (HSA) tizimlari[2] bir nechta protsessor turlaridan foydalanishda (odatda foydalanuvchi uchun) farqni yo'q qilish CPU va Grafik protsessorlar[3]), odatda bir xil integral mikrosxema, ikkala dunyoning eng yaxshisini ta'minlash uchun: umumiy GPU ishlov berish (GPU-ning taniqli 3D grafika ko'rsatish qobiliyatidan tashqari, u juda katta ma'lumotlar to'plamlarida matematik intensiv hisoblashni ham amalga oshirishi mumkin), protsessorlar esa operatsion tizimni boshqarishi va an'anaviy ishlashi mumkin ketma-ket vazifalar.

Zamonaviy hisoblash tizimlarida heterojenlik darajasi asta-sekin o'sib bormoqda, chunki ishlab chiqarish texnologiyalarining keyingi miqyosi ilgari diskret komponentlarning ajralmas qismlariga aylanishiga imkon beradi. chipdagi tizim yoki SoC.[iqtibos kerak ] Masalan, hozirda ko'plab yangi protsessorlar boshqa qurilmalar bilan aloqa qilish uchun o'rnatilgan mantiqni o'z ichiga oladi (SATA, PCI, Ethernet, USB, RFID, radiolar, UARTlar va xotira tekshirgichlari ), shuningdek dasturlashtiriladigan funktsional birliklar va apparat tezlatgichlari (Grafik protsessorlar, kriptografiya birgalikda ishlov beruvchilar, dasturlashtiriladigan tarmoq protsessorlari, A / V kodlovchilari / dekoderlari va boshqalar).

So'nggi kashfiyotlar shuni ko'rsatadiki, bir nechta ISAlar tomonidan taqdim etilgan xilma-xillikdan foydalanadigan heterojen-ISA chipli multiprotsessor eng yaxshi bir xil ISA bir xil me'morchiligidan 21% ga oshib ketishi mumkin, bu esa 23% energiya tejash va 32% ga kamaytirish. Energiyani kechiktiradigan mahsulot (EDP).[4] AMD-ning 2014 yildagi pin-mos ARM va x86 SoC-lari, kod nomi Project Skybridge,[5]ishlab chiqarishda heterojen-ISA (ARM + x86) chipli multiprotsessorni taklif qildi.[iqtibos kerak ]

Geterogen CPU topologiyasi

Bilan tizim heterojen CPU topologiyasi bir xil ISA ishlatiladigan tizimdir, ammo yadrolarning o'zi tezlik bilan farq qiladi.[6] O'rnatish a-ga ko'proq o'xshash nosimmetrik multiprotsessor. (Garchi bunday tizimlar texnik jihatdan bo'lsa ham assimetrik multiprotsessorlar, yadrolar rollarda yoki qurilmaga kirishda farq qilmaydi.)

Bunday topologiyadan keng tarqalgan foydalanish mobil SoC-larda energiya samaradorligini oshirishdir. ARM big.LITTLE tezroq yuqori quvvatli yadrolar sekinroq past quvvatli yadrolar bilan birlashtirilgan prototipik holat.[7] Olma silikon shunga o'xshash tashkilot bilan ARM yadrolarini ishlab chiqardi. Intel shuningdek, Lakefield nomli gibrid x86 yadrolarini ishlab chiqardi, ammo ko'rsatmalar to'plamini qo'llab-quvvatlashda katta cheklovlarsiz.

Qiyinchiliklar

Geterogen hisoblash tizimlari odatdagi bir hil tizimlarda mavjud bo'lmagan yangi muammolarni keltirib chiqaradi.[8] Bir nechta qayta ishlash elementlarining mavjudligi bir hil parallel ishlov berish tizimlari bilan bog'liq barcha muammolarni keltirib chiqaradi, shu bilan birga tizimdagi heterojenlik darajasi tizimni ishlab chiqishda, dasturlash amaliyotida va tizimning umumiy qobiliyatida bir xillikni keltirib chiqarishi mumkin. Heterojenlik yo'nalishlari quyidagilarni o'z ichiga olishi mumkin.[9]

  • ISA yoki ko'rsatmalar to'plami arxitekturasi
    • Hisoblash elementlari turli xil ko'rsatmalar to'plamiga ega bo'lishi mumkin, bu esa ikkilik mos kelmaslikka olib keladi.
  • ABI yoki dastur ikkilik interfeysi
  • API yoki dastur dasturlash interfeysi
    • Kutubxona va OS xizmatlari barcha hisoblash elementlari uchun bir xilda bo'lmasligi mumkin.[11]
  • Til xususiyatlarini past darajadagi amalga oshirish
    • Til funktsiyalari, masalan, funktsiyalar va iplar yordamida ko'pincha amalga oshiriladi funktsiya ko'rsatgichlari, heterojen muhitda foydalanilganda qo'shimcha tarjima yoki abstraktsiyani talab qiladigan mexanizm.
  • Xotira interfeysi va Ierarxiya
    • Hisoblash elementlari boshqacha bo'lishi mumkin kesh tuzilmalar, keshning muvofiqligi protokollar va xotiraga kirish bir xil yoki bir xil bo'lmagan xotiraga kirish bo'lishi mumkin (NUMA ). Ma'lumotlarning uzunligini o'zboshimchalik bilan o'qish qobiliyatida ham farqlarni topish mumkin, chunki ba'zi protsessorlar / birliklar faqat bayt, so'z yoki kirish tezligini amalga oshirishi mumkin.
  • O'zaro bog'lanish
    • Hisoblash elementlari asosiy xotira / avtobus interfeyslaridan tashqari o'zaro bog'lanishning har xil turlariga ega bo'lishi mumkin. Bunga ajratilgan tarmoq interfeyslari, to'g'ridan-to'g'ri xotiraga kirish (DMA ) qurilmalar, pochta qutilari, FIFOlar va skretchpad xotiralari Va hokazo. Bundan tashqari, heterojen tizimning ba'zi qismlari kesh-izchil bo'lishi mumkin, boshqalari esa izchillik va izchillikni saqlash uchun aniq dasturiy ta'minotni jalb qilishni talab qilishi mumkin.
  • Ishlash
    • Heterojen tizimda me'morchilik jihatidan bir xil bo'lgan, lekin har xil ishlash va quvvat sarflanishiga olib keladigan asosiy mikro-me'moriy farqlarga ega bo'lgan protsessorlar bo'lishi mumkin. Shaffof bo'lmagan dasturlash modellari va operatsion tizim abstraktsiyalari bilan bog'langan qobiliyatlardagi nosimmetrikliklar, ba'zida ishlashni bashorat qilish muammolariga olib kelishi mumkin, ayniqsa aralash ish yuklari bilan.
  • Ma'lumotlarni qismlarga ajratish
    • Bir hil platformalarda ma'lumotlarni ajratish ko'pincha ahamiyatsiz bo'lsa-da, umumiy heterojen holat uchun muammo NP-Complete ekanligi ko'rsatildi.[12] Kam sonli bo'limlar uchun yukni mukammal darajada muvozanatlashtiradigan va aloqa hajmini minimallashtiradigan maqbul bo'limlar mavjud. [13]

Namunaviy apparat

Heterojen hisoblash texnikasini hisoblashning har qanday sohalarida topish mumkin - yuqori darajadagi serverlar va yuqori samarali hisoblash mashinalaridan tortib to kam quvvatli qurilmalarga, shu jumladan mobil telefonlar va planshetlarga.

Shuningdek qarang

Adabiyotlar

  1. ^ Shan, Amar (2006). Geterogen ishlov berish: Mur qonunini ko'paytirish strategiyasi. Linux jurnali.
  2. ^ "Geterogen tizim arxitekturasi (HSA) fondi". Arxivlandi asl nusxasi 2014-04-23. Olingan 2014-11-01.
  3. ^ S. Mittal va J. Vetter (2015), CPU-GPU-ning bir xil bo'lmagan hisoblash texnikasi bo'yicha tadqiqot, ACM hisoblash tadqiqotlari.
  4. ^ Venkat, Ashish; Tullsen, Dekan M. (2014). ISA xilma-xilligini qo'llash: Geterogen-ISA chipli multiprotsessorni loyihalash. Kompyuter arxitekturasi bo'yicha 41-yillik xalqaro simpozium materiallari to'plami.
  5. ^ Anand Lal Shimpi (2014-05-05). "AMD SkyBridge loyihasini e'lon qiladi: 2015 yilda Pin-Compatible ARM va x86 SoCs, Android Support". AnandTech. Olingan 2017-06-11. Kelgusi yilda AMD kam quvvatli 20nm Cortex A57 asosidagi SoC-ni o'rnatilgan Graphics Core Next GPU-ga ega chiqaradi.
  6. ^ "Energiyadan xabardor bo'lishni rejalashtirish". Linux yadrosi hujjatlari.
  7. ^ Asimmetrik ko'p yadroli protsessorlarni arxitektura va boshqarish usullarini o'rganish, ACM hisoblash tadqiqotlari, 2015 yil.
  8. ^ Kunzman, D.M. (2011). Heterojen tizimlarni dasturlash. Parallel va taqsimlangan ishlov berish ustaxonalari bo'yicha xalqaro simpozium. doi:10.1109 / IPDPS.2011.377.
  9. ^ Flachs, Brian (2009). Bir jinsli bo'lmagan protsessorlarni asosiy oqimga keltirish (PDF). Yuqori samarali hisoblashda dastur tezlatgichlari bo'yicha simpozium (SAAHPC).
  10. ^ "Bulutli hisoblashda genetik algoritmdan foydalangan holda bir jinsli bo'lmagan xotira uchun ma'lumotlardan xabardor multimedia ma'lumotlarini taqsimlash" (PDF). IEEE. 2016 yil. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  11. ^ Agron, Jeyson; Andrews, David (2009). Heterojen Manykor tizimlar uchun apparat mikrokernellari. Parallel Processing Workshops, 2009. Parallel Processing bo'yicha xalqaro konferentsiya (ICPPW). doi:10.1109 / ICPPW.2009.21.
  12. ^ Bomont, Olivye; Budet, Vinsent; Rastello, Fabris; Robert, Iv (2002 yil avgust). "Kvadratni to'rtburchaklar shaklida bo'lish: NP to'liqligi va taxminiy algoritmlari" (PDF). Algoritmika. 34 (3): 217–239. CiteSeerX  10.1.1.3.4967. doi:10.1007 / s00453-002-0962-9.
  13. ^ Bomont, Olivye; Beker, Bret; DeFlumere, Eshli; Eyroud-Duboaz, Lionel; Lastovetskiy, Aleksey (2018 yil iyul). "Geterogen platformalarda parallel hisoblash uchun matritsali bo'linishdagi so'nggi yutuqlar" (PDF). Parallel va taqsimlangan hisoblash bo'yicha IEEE operatsiyalari.
  14. ^ Gschwind, Maykl (2005). Uyali heterojen chip-multiprotsessor uchun yangi SIMD arxitekturasi (PDF). Issiq chiplar: yuqori mahsuldorlikka oid mikrosxemalar.