GPU (Graphics Processing Unit) — grafik ma'lumotlarni parallel qayta ishlash uchun ixtisoslashtirilgan protsessor bo'lib, har bir kadrda piksellar va uchlarda millionlab hisob-kitoblarni bajaradi. CPU ketma-ket vazifalar uchun optimallashtirilgan bo'lsa, GPU ommaviy matematik operatsiyalar uchun minglab kam quvvatli yadrolarni o'z ichiga oladi. NVIDIA Developer Blog (2025) ma'lumotlariga ko'ra, zamonaviy mobil GPU lar 1024 tagacha yadroga ega va hisoblash yuklamalarida 2 TFLOPS unumdorlikka erishadi. Dasturchilar GPU ni renderlash, post-ishlov berish va qurilmada mashina o'rganishi uchun integratsiya qiladilar.
Asosiy ma'lumotlar
GPU (Graphics Processing Unit) — ommaviy parallellik uchun mo'ljallangan ixtisoslashtirilgan mikrosxema. Birinchi GPU lar 1990 yillar oxirida ish stoli kompyuterlari uchun 3D grafik tezlatgichlari sifatida paydo bo'ldi. O'shandan beri arxitektura sobit konveyerdan dasturlashtiriladigan shayderlarga va universal hisoblash bloklarigacha rivojlandi.
GPU ning asosiy vazifasi — rasterizatsiya: geometrik ma'lumotlarni (uchlar, uchburchaklar) ekrandagi piksellarga aylantirish. Jarayon uchlarni transformatsiyasini, ko'rinmas sirtlarni kesishni, teksturalash va ranglarni aralashtirishni o'z ichiga oladi. Bu operatsiyalarning barchasi bir vaqtning o'zida minglab elementlar uchun parallel ravishda bajariladi.
Jon Peddie Research (2025) ma'lumotlariga ko'ra, mobil GPU bozori grafik protsessorlarning umumiy hajmining 58% ni tashkil qiladi, shaxsiy kompyuterlar va serverlar uchun diskret yechimlardan o'zib ketadi. Har bir smartfon CPU, DSP va neyroprotsessor bilan birga System-on-Chip (SoC) ga integratsiyalangan kamida bitta GPU ni o'z ichiga oladi.
Zamonaviy GPU lar ikki turga bo'linadi: integratsiyalangan (SoC ga o'rnatilgan, xotirani CPU bilan baham ko'radi) va diskret (o'z video xotirasiga ega alohida plata). Mobil ishlanmada faqat integratsiyalangan GPU lar ishlatiladi — Qualcomm Adreno, ARM Mali, Apple GPU va Imagination PowerVR.
GPU evolyutsiyasi uch bosqichdan o'tdi: sobit konveyer (1999–2006), birlashtirilgan shayderlar (2006–2016) va dasturlashtiriladigan hisoblash yadrolari (2016 — hozirgi kungacha). Birinchi bosqich qattiq operatsiyalar ketma-ketligini belgilagan — transformatsiya, yoritish, teksturalash. Dasturchi konveyerga aralasha olmadi.
Birlashtirilgan shayderlarning paydo bo'lishi bilan GPU HLSL yoki GLSL da yozilgan ixtiyoriy dasturlarni — shayderlarni bajarish imkoniyatiga ega bo'ldi. Bu GPGPU ga — GPU ni grafik bo'lmagan vazifalar uchun ishlatishga yo'l ochdi. Uchinchi bosqich mashina o'rganishi uchun tensor yadrolari va real vaqtda nur kuzatishni qo'shdi.
Mobil GPU larda asosiy burilish nuqtasi Tile-Based Deferred Rendering (TBDR) arxitekturasining joriy etilishi bo'ldi — bu arxitekturada kadr tayllarga (16x16 piksel) bo'linadi va tezkor lokal xotirada qayta ishlanadi. Bu ish stoli GPU lari uchun xos bo'lgan immediate mode rendering bilan solishtirganda energiya sarfini 3–5 baravar kamaytiradi.
GPU arxitekturasi CPU dan tubdan farq qiladi. Katta kesh xotirasiga ega bir necha kuchli yadro o'rniga, GPU SIMD (Single Instruction, Multiple Data) uchun optimallashtirilgan yuzlab yoki minglab sodda hisoblash bloklarini o'z ichiga oladi — bitta ko'rsatma ko'plab ma'lumot elementlari ustida bajariladi.
GPU ning asosiy bloki — Shader Core (NVIDIA terminologiyasida) yoki Execution Unit (Intel). Bir nechta bunday bloklar Compute Unit (AMD) yoki Streaming Multiprocessor (NVIDIA) ga birlashadi. Har bir blok arifmetika uchun ALU, registr fayli va varp rejalashtiruvchisini (oqim guruhlari) o'z ichiga oladi.
Mobil GPU lar arxitektura jihatidan ish stoli GPU laridan farq qiladi. Qualcomm Adreno dasturlashtiriladigan shayder protsessorlari va ajratilgan rasterizatsiya bloki bilan arxitekturadan foydalanadi. ARM Mali Bifrost yoki Valhall — varplarni kvartet qayta ishlash bilan arxitekturalarga asoslangan. Apple GPU 2017 yildan boshlab Metal va birlashtirilgan xotirani qo'llab-quvvatlaydigan o'z dizayniga ega.
| Ishlab chiqaruvchi | GPU liniyasi | Arxitektura | API |
|---|---|---|---|
| Qualcomm | Adreno 6xx/7xx/8xx | Dasturlashtiriladigan shayder protsessorlari | Vulkan, OpenGL ES |
| ARM | Mali-G seriyasi | Bifrost / Valhall | Vulkan, OpenGL ES |
| Apple | Apple GPU (A13–A18) | O'z dizayni | Metal |
| Imagination | PowerVR IMG | Furian / B-Series | Vulkan, OpenGL ES |
Mobil GPU larning asosiy xususiyati — Unified Memory Architecture (UMA). GPU va CPU alohida video xotirasiz umumiy operativ xotiradan foydalanadi. Bu ma'lumot almashishda kechikishlarni kamaytiradi va dasturlashni soddalashtiradi, ammo intensiv hisoblashlarda o'tkazish qobiliyatini cheklaydi.
CPU minimal kechikish bilan ketma-ket vazifalar uchun mo'ljallangan. Katta L1/L2/L3 kesh xotirasi, tarmoqlanish bashoratchisi va spekulyativ bajarish bilan 4–12 kuchli yadroni o'z ichiga oladi. GPU esa kechikishni o'tkazish qobiliyati uchun qurbon qiladi — minglab yadrolar ma'lumotlarni yuqori kechikish bilan, ammo ulkan umumiy unumdorlik bilan qayta ishlaydi.
Farq FLOPS da (sekundda suzuvchi nuqta operatsiyalari) namoyon bo'ladi. 2025 yilning eng yaxshi mobil SoC i: CPU — 200 GFLOPS, GPU — 2400 GFLOPS. GPU parallellikka imkon beradigan vazifalarda CPU dan 12 marta ustun. Biroq, ketma-ket algoritmlarda CPU oqimlarni boshqarish uchun kamroq xarajatlar tufayli tezroq qoladi.
Amalda, dasturchi CPU ni dastur mantig'i, UI va IO uchun, GPU ni esa renderlash, tasvirni qayta ishlash, fizika simulyatsiyasi va neyron tarmoq inferensiyasi uchun ishlatadi. Google Android Performance Patterns (2025) ma'lumotlariga ko'ra, mobil ilovalarda GPU ning optimal yuklanishi 60–80% ni tashkil qiladi — haddan tashqari yuklanish trottling va qizib ketishga olib keladi.
// CPU — ketma-ket qayta ishlash
for (int i = 0; i < N; i++) {
result[i] = data[i] * 2.0f;
}
// GPU — parallel qayta ishlash (GLSL compute shader)
#version 300 es
layout(local_size_x = 256) in;
void main() {
uint idx = gl_GlobalInvocationID.x;
result[idx] = data[idx] * 2.0f;
}
CPU dagi kod har bir element uchun ketma-ket ko'paytirishni bajaradi. GPU versiyasi parallel ravishda 256 oqimni ishga tushiradi, har biri o'z elementini ko'paytiradi. N=1 million bo'lganda, GPU vazifani bir yadrodagi CPU dan 100–1000 marta tezroq bajaradi.
Mobil GPU lar qattiq issiqlik chiqarish va energiya sarfi cheklovlari ostida ishlaydi. Mobil GPU ning odatiy TDP si 2–8 Vt ni tashkil qiladi, ish stoli analoglarida esa 150–450 Vt. Bu eng yuqori unumdorlik emas, balki energiya samaradorligiga urg'u beradigan maxsus arxitekturani talab qiladi.
Asosiy energiya tejash texnologiyasi — Tile-Based Rendering. Kadr 16x16 yoki 32x32 piksel tayllarga bo'linadi. Har bir tayl tezkor SRAM xotirasida (Tile Memory) to'liq qayta ishlanadi, so'ng tashqi DRAM ga yoziladi. Bu immediate mode bilan solishtirganda xotiraga murojaatlarni 4–10 marta kamaytiradi.
Qualcomm Adreno — eng keng tarqalgan mobil GPU. Adreno 750 (Snapdragon 8 Gen 3) umumiy registr hovuziga ega 12 shayder protsessorini o'z ichiga oladi. Vulkan 1.3, OpenGL ES 3.2, OpenCL 3.0 va yadro darajasida nur kuzatishni qo'llab-quvvatlaydi. Qualcomm (2025) ma'lumotlariga ko'ra, Adreno energiya sarfini saqlab, avlodda 45% unumdorlik o'sishini ta'minlaydi.
ARM Mali — Android qurilmalarida mashhurlik bo'yicha ikkinchi GPU. Mali-G720 Variable Rate Shading va ASTC HDR qo'llab-quvvatlashi bilan 5-avlod Valhall arxitekturasiga asoslangan. Mali ning xususiyati — kvartet qayta ishlash: to'rtta oqim ALU dan yaxshiroq foydalanish uchun bitta varpda birlashtiriladi.
Apple GPU faqat Metal API uchun mo'ljallangan. A13 Bionic dan boshlab, Apple Metal 3, nur kuzatish va mesh-shayderlarni qo'llab-quvvatlaydigan o'z GPU dizaynidan foydalanadi. Apple GPU arxitekturasi M4 Ultra da 800 GB/s o'tkazish qobiliyati bilan Unified Memory bilan ajralib turadi.
GPU trottlingi — qizib ketishda chastotani pasaytirish — mobil o'yinlarning asosiy muammosi. Uzoq muddatli yuk ostida SoC harorati 85–95°C ga etadi va GPU chastotani 30–50% ga kamaytiradi. AnandTech (2025) ma'lumotlariga ko'ra, Qualcomm Adreno 750 Genshin Impact da 15 daqiqadan so'ng unumdorligining 35% gacha yo'qotadi.
Dasturchi trottlingni draw chaqiruvlarini optimallashtirish, renderlash o'lchamini kamaytirish va Foveated Rendering dan foydalanish orqali yumshatishi mumkin. iOS da Metal Performance Shaders va Android da Android Frame Pacing API yukni qurilmaning issiqlik byudjeti bilan sinxronlashtirishga yordam beradi.
GPGPU (General-Purpose computing on GPU) — grafik protsessordan grafik bo'lmagan hisoblashlar uchun foydalanish. G'oya 2000 yillarning o'rtalarida, dasturchilar shayderlarni matritsa operatsiyalari, kriptografiya va fizika simulyatsiyasi uchun moslashtirish mumkinligini payqaganlarida paydo bo'ldi.
Bugun GPGPU ommaviy parallellikni talab qiladigan vazifalar uchun standart vositadir: mashina o'rganishi (neyron tarmoqlarni o'qitish va inferensiya), kriptografiya (heshlash, shifrlash), tasvir va video qayta ishlash (filtrlar, kodeklar), ilmiy simulyatsiyalar (gidrodinamika, kvant kimyosi).
Mobil qurilmalarda GPGPU Compute Shaders orqali qo'llaniladi — grafik chiqishi bo'lmagan, faqat ma'lumotlar bilan ishlaydigan shayderlar. Compute Shader ishchi guruhlaridan iborat Grid ni ishga tushiradi, har bir guruh bir nechta oqimni o'z ichiga oladi. Xotiraga kirish — ekranga bog'lanmagan buferlar va teksturalar orqali.
#version 310 es
layout(local_size_x = 16, local_size_y = 16) in;
layout(binding = 0) buffer Input { float data[]; };
layout(binding = 1) buffer Output { float result[]; };
void main() {
uvec2 idx = gl_GlobalInvocationID.xy;
uint offset = idx.y * gl_NumWorkGroups.x * gl_WorkGroupSize.x + idx.x;
result[offset] = sqrt(data[offset]) + 1.0;
}
Compute shader namunasi massivning har bir elementi uchun kvadrat ildizni hisoblaydi. 16x16 ishchi guruhi bir vaqtning o'zida 256 elementni qayta ishlaydi. Zamonaviy mobil GPU lar 1024 tagacha ishchi guruh va millionlab global oqimlarni qo'llab-quvvatlaydi.
GPU ga kirish API lari dasturchining grafik protsessorga buyruq va ma'lumotlarni qanday yuborishini belgilaydi. Mobil platformalarda uchta asosiy API ishlatiladi: Vulkan, Metal va OpenGL ES. Har birining unumdorlik va muvofiqlikka ta'sir qiladigan afzalliklari va cheklovlari bor.
Vulkan — Khronos Group tomonidan past darajadagi kross-platforma API si, OpenGL ning vorisi. Vulkan dasturchiga GPU xotirasi, buyruq navbatlari va sinxronizatsiya ustidan to'g'ridan-to'g'ri nazorat beradi. Khronos (2025) ma'lumotlariga ko'ra, Vulkan drayver xarajatlarini kamaytirish hisobiga OpenGL ES bilan solishtirganda 30–60% unumdorlik o'sishini ta'minlaydi.
Android da Vulkan Android 7.0 dan (API 24) majburiy, ammo barcha zamonaviy SoC lar Vulkan 1.3 ni qo'llab-quvvatlaydi. Vulkan Memory Allocator va oraliq kod sifatida SPIR-V shayderlarni GLSL, HLSL yoki Rust GPU da yozishga imkon beradi.
Metal — Apple ekotizimining barcha qurilmalarida GPU uchun mulkiy API: iPhone, iPad, Mac, Apple TV. Metal minimal xarajatlar va buyruqlarning bashorat qilinadigan bajarilish vaqtini ta'minlaydi. Apple Developer Documentation (2025) ma'lumotlariga ko'ra, Metal FPS pasaymasdan kadrda 100 000 tagacha draw chaqiruvini qayta ishlaydi.
Asosiy xususiyat — C++ asosidagi Metal Shading Language (MSL). Shayderlar ilova bilan birga mashina kodiga kompilyatsiya qilinadi, bu Vulkan uchun xos bo'lgan JIT kompilyatsiyasini yo'q qiladi. Metal Mesh Shaders, Ray Tracing va shayderlarni ish vaqtida yuklash uchun Dynamic Libraries ni qo'llab-quvvatlaydi.
OpenGL ES — o'rnatilgan tizimlar uchun OpenGL ning soddalashtirilgan versiyasi. Eski qurilmalarda va orqaga muvofiqlikni ta'minlash uchun ishlatiladi. OpenGL ES 3.2 Android Studio (2025) ma'lumotlariga ko'ra Android qurilmalarining 94% ida qo'llab-quvvatlanadi. Yangi loyihalar uchun Google OpenGL ES o'rniga Vulkan ni tavsiya qiladi.
WebGL — OpenGL ES ning brauzer analogi, vebda 3D grafikaning asosi. WebGL 2.0 (OpenGL ES 3.0 ga mos keladi) mobil brauzerlarning 92% ida qo'llab-quvvatlanadi. WebGPU — keyingi avlod, Vulkan va Metal ga yaqin arxitektura bilan.
Tez-tez beriladigan savollar
Mobil GPU 2–8 Vt issiqlik paketida ishlaydi, energiya tejash uchun Tile-Based Rendering dan foydalanadi va xotirani CPU bilan UMA orqali baham ko'radi. Ish stoli GPU 150–450 Vt iste'mol qiladi, alohida video xotiraga (GDDR) ega va Immediate Mode Rendering dan foydalanadi.
Apple GPU M4 Ultra va A18 Pro chiplarida — mobil GPU lar orasida vatt bo'yicha unumdorlik lideri. Android qurilmalari orasida Snapdragon 8 Gen 4 dagi Qualcomm Adreno 850 va MediaTek Dimensity 9500 dagi ARM Mali-G925 yetakchilik qiladi.
Ha, GPU neyron tarmoq inferensiyasi uchun iOS da Core ML va Android da TensorFlow Lite / NNAPI orqali faol ishlatiladi. Google (2025) ma'lumotlariga ko'ra, GPU tezlashtirish CPU bilan solishtirganda 3–10 marta tezlik o'sishini beradi.
Trottling issiqlik byudjetining oshib ketishi tufayli yuz beradi. Uzoq muddatli yuk ostida SoC harorati 85–95°C ga etadi va GPU kristalni himoya qilish uchun chastotani pasaytiradi. Yechim — renderlashni optimallashtirish va FPS cheklovlaridan (30–45 FPS) foydalanish.
Vulkan — yangi loyihalar uchun asosiy tanlov. OpenGL ES — eski qurilmalar bilan orqaga muvofiqlik uchun. Metal — iOS uchun majburiy. Kross-platforma ishlanmasi uchun Unity, Unreal Engine yoki Filament kabi freymvorklardan foydalaning.
Xulosa
Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz
IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.
Shuningdek o'qing