Nazorat savollari
1.
Komyuter xotirasi turlari
2.
Tezkor xotiraning vazifasi nima?
3.
Xotira iyerarxiyasini tushuntiring?
44
6-Ma’ruza.
Xotira ierarxiyasi, xotiraga bir xil bo’lmagan ruxsatlilik tizimlari
(NUMA)
Reja:
1.
Xotira ierarxiyasi
2.
Xotiraga bir xil bo’lmagan ruxsatlilik tizimlari (NUMA)
Tayanch iboralar:
xotira ierarxiyasi, bir xil bo’lmagan xotira, NUMA.
Protsessorlar har doim xotiraga nisbatan tez ishlagan. Protsessorlar
ham, xotira ham parallel ravishda takomillashtirilib kelinmoqda. Konveyerli
va superskalyar arxitekturali, unumdorligi juda katta bo‘lgan protsessorlar ishlab
chiqarilmoqda. Xotira qurilmalarini ishlab chiqaruvchilar esa birinchi galda, uning
hajmini oshirishga harakat qilmoqdalar, tezkorligini emas. Shuning uchun ham
protsessorlar va xotiralarning ishlash tezliklari orasidagi farq yana ham
kattalashmoqda. Tezliklarning bunday farqlari tufayli, protsessor xotiraga unga
kerakli so‘zni o‘qib olish uchun murojaat qilganida, bir nechta mashina sikllarini
bekor o‘tkazib yuborishiga to‘g‘ri kelayapti. Xotira protsessorga nisbatan
qanchalik sekin ishlasa, shunchalik ko‘proq sikllar davomida protsessor
uni kutib turishi kerak bo‘layapti.
Bu muammoni hal qilishning bir nechta yo‘llari mavjud ekan. Shulardan
biri, uncha katta bo‘lmagan hajmga ega, ammo nisbatan ancha tez ishlaydigan,
protsessor bilan asosiy xotira orasida joylashgan xotiradan foydalanish ekan (6.1-
rasm). Bunday xotira
kesh-xotira
deb ataladi («cacher» – fransuz tilida «yashirish»
degan so‘zni anglatadi). Keshxotirada dastur tomonidan ko‘p ishlatiladigan so‘zlar
yoki asosiy xotiraning ma’lum bir qismi saqlanadi. Asosiy xotiraning bu qismi,
o‘sha paytda ishlayotgan dastur tomonidan ko‘proq foydalanilishi mumkin bo‘lgan
qismi bo‘ladi. Bu
lokallik tamoili
deb ataladi (rus tilida – принцип ло-
кальности).
45
2.6-rasm. Kesh-xotira joylashgan o‘rni.
Buyruqlar va ma’lumotlarni qanday saqlanishiga qarab kesh xotiraning
ikki xili mavjud. Buyruqlar ham, ma’lumotlar ham birgalikda
saqlanadigan kesh-xotira
birlashtirilgan kesh-xotira
deb ataladi (rus tilida -
объединенная кэш-память). Buyruqlar alohida, ma’lumotlar alohida
saqlanadigan kesh-xotira esa
alohida ajratilgan kesh-xotira
deb ataladi
(rus tilida – разделенная кэш-память). Hozirgi kompyuterlarda ko‘proq
alohida ajratilgan kesh-xotiradan foydalanilmoqda [16,17,28].
Umumiy xotira
Umumiy xotira jarayonlar o'rtasida ma'lumotlar almashinuvining eng tez
vositasidir.
Boshqa jarayonlararo aloqa vositalarida (IPC) jarayonlar o'rtasida axborot
almashinuvi yadro orqali o'tadi, bu jarayon va yadro o'rtasida kontekstni
almashtirishga olib keladi, ya'ni. unumdorlik yo'qotishlariga.
Umumiy xotira texnikasi yadro tizimi chaqiruvlaridan foydalanmasdan
jarayonlar uchun umumiy xotira segmenti orqali axborot almashish imkonini
beradi. Umumiy xotira segmenti jarayonning virtual manzil maydonining bo'sh
qismiga ulanadi. Shunday qilib, ikkita turli jarayon ulangan umumiy xotiraning bir
yacheykasi uchun turli manzillarga ega bo'lishi mumkin.
Umumiy xotira segmentini yaratgandan so'ng, har qanday foydalanuvchi
jarayoni uni o'zining virtual maydoniga biriktirishi va u bilan oddiy xotira
segmenti kabi ishlashi mumkin. Ushbu ma'lumot almashinuvining kamchiliklari
46
sinxronizatsiya vositalarining etishmasligidir, ammo bu kamchilikni bartaraf etish
uchun siz semafor texnikasidan foydalanishingiz mumkin.
NUMA (inglizcha Non-Uniform Memory Access “nounformed memory
access” yoki Non-Uniform Memory Architecture “bir xil bo’lmagan xotiraga ega
arxitektura”) xotiraga kirish vaqti uning joylashuvi bilan aniqlanganda ko’p
protsessorli tizimlarda foydalaniladigan kompyuter xotirasini amalga oshirish.
NUMA tizimlari asosiy xotira modullari bo'lgan oz sonli protsessorlarni o'z
ichiga olgan bir hil asosiy tugunlardan iborat. Deyarli barcha protsessor
arxitekturalari tez-tez kerakli ma'lumotlarga kirishni tezlashtiradigan kesh deb
nomlanuvchi kichik hajmdagi juda tez ulashilmagan xotiradan foydalanadi.
NUMA-da umumiy xotira bo'ylab muvofiqlikni qo'llab-quvvatlash muhim ishlash
ustunligini taqdim etadi.
Xotiraga kirish imkoni bo'lmagan NUMA tizimlarini loyihalash va qurish
osonroq bo'lsa-da, klassik fon Neyman arxitektura modelida bunday tizimlar uchun
dasturlarni yozish juda qiyin bo'ladi. Natijada, sotuvda mavjud bo'lgan barcha
NUMA kompyuterlari kesh uyg'unligiga erishish uchun maxsus apparat
echimlaridan foydalanadi va kesh-kogerent taqsimlangan umumiy xotira tizimlari
yoki ccNUMA sifatida tasniflanadi.
Odatda, bir nechta kesh bir xil xotira joyini saqlaganida, izchil xotira
namunasini (xotira muvofiqligi) saqlash uchun kesh-kontrollerlar o'rtasida
protsessorlararo aloqa mavjud. Shuning uchun ccNUMA platformalari ketma-ket
bir nechta protsessorlar bir xil xotira blokiga kirishni so'raganda, ish faoliyatini
yo'qotadi. NUMA-ni qo'llab-quvvatlaydigan operatsion tizim protsessorlar va
xotirani qayta taqsimlash orqali ushbu turdagi kirish so'rovlarining chastotasini
poygalar va blokirovkalardan saqlaydigan tarzda kamaytirishga harakat qiladi.
ccNUMA arxitekturasiga ega ko'p protsessorli mashinalarga misol Silicon
Graphics SGI Origin 2000 (ingliz tili) dan bir qator mashinalardir. ASCI Blue
Mountain superkompyuteri - 1999 yilning eng kuchli superkompyuterlaridan biri -
har birida 128 protsessorga ega 48 ta SGI Origin 2000 mashinasidan iborat massiv
parallel klaster edi.
47
Tizim oz sonli protsessorlar va xotira blokidan iborat bir hil asosiy
modullardan (platalar) iborat. Modullar yuqori tezlikdagi kalit yordamida ulanadi.
Yagona manzil maydoni qo'llab-quvvatlanadi, masofaviy xotiraga kirish apparat
tomonidan qo'llab-quvvatlanadi, ya'ni boshqa modullarning xotirasiga. Bundan
tashqari, mahalliy xotiraga kirish masofaviy xotiraga qaraganda bir necha baravar
tezroq. Agar apparat butun tizimdagi keshlarning uyg'unligini qo'llab-quvvatlasa
(odatda shunday bo'ladi), ular cc-NUMA arxitekturasi (kesh-kogerent NUMA)
haqida gapirishadi.
Misollar: SCA konfiguratsiyalarida HP 9000 V-sinf, SGI Origin2000, Sun
HPC 10000, IBM / Sequent NUMA-Q 2000, SNI RM600 va boshqalar.
NUMA tizimlarining miqyosi manzil maydoni miqdori, kesh muvofiqligini
qo'llab-quvvatlaydigan apparat imkoniyatlari va operatsion tizimning ko'p sonli
protsessorlarni boshqarish qobiliyati bilan cheklangan. Hozirgi vaqtda NUMA
tizimlarida protsessorlarning maksimal soni 256 ta (Origin2000).
Operatsion tizim: Odatda butun tizim SMP da bo'lgani kabi bitta operatsion
tizim ostida ishlaydi. Shu bilan birga, tizimning alohida "bo'limlari" turli xil
operatsion tizimlar (masalan, NUMA-Q 2000 da Windows NT va UNIX) ostida
ishlaganda tizimni dinamik ravishda "bo'linish" ham mumkin.
NUMA katta SMP bo'lib, kichikroq va oddiyroq SMPlar to'plamiga
bo'lingan. Uskuna tizimning tarkibiy qismlari (odatda tugunlar deb ataladi) asosiy
xotirasining barcha individual qurilmalari bilan yagona ulkan xotira sifatida ishlash
imkonini beradi. Bunday yondashuv bir qator oqibatlarga olib keladi. Birinchidan,
tizimda barcha tugunlarga taqsimlangan bitta manzil maydoni mavjud.
Shuning uchun asosiy masala NUMA ning "heterojenlik" darajasidir. Misol
uchun, agar boshqa tugundan qiymat olish talab qilinsa faqat 10% uzoqroq, keyin u
hech kimga zarar bermaydi. Bunday holda, har bir kishi tizimni SMP deb
hisoblaydi va SMP uchun mo'ljallangan dasturlar juda yaxshi ishlaydi.
Biroq, NUMA tizimlarining hozirgi avlodida tugunlarni ulash uchun tarmoq
ishlatiladi. Bu tizimga ko'proq tugunlarni kiritish imkonini beradi, ba'zi tizimlarda
jami 128 ta protsessor uchun 64 ta tugungacha mavjud.
48
Umumiy va taqsimlangan xotiraga ega kompyuterlarning afzalliklari va
kamchiliklari Umumiy xotiraga ega kompyuterlar uchun parallel dasturlar yaratish
osonroq, lekin ularning maksimal unumdorligi protsessorlar sonining kamligi bilan
keskin cheklangan.Taqsimlangan xotiraga ega kompyuterlar uchun esa buning
aksi.Bir. Ushbu ikki sinfning afzalliklarini birlashtirishning mumkin bo'lgan
yo'nalishlaridan biri NUMA (Non Uniform Memory Access) arxitekturasiga ega
kompyuterlarni loyihalashdir.
Do'stlaringiz bilan baham: |