GPU (Graphics Processing Unit) گرافک ڈیٹا کی متوازی پروسیسنگ کے لیے ایک خصوصی پروسیسر ہے، جو فی فریم پکسلز اور عمودوں پر لاکھوں حسابات انجام دیتا ہے۔ CPU کے برعکس، جو کم تاخیر والے ترتیب وار کاموں کے لیے موزوں ہے، GPU بڑے پیمانے پر ریاضیاتی کارروائیوں کے لیے ہزاروں کم طاقت والے کور پر مشتمل ہوتا ہے۔ NVIDIA Developer Blog (2025) کے مطابق، جدید موبائل GPU 1024 کور تک پر مشتمل ہوتے ہیں اور کمپیوٹ ورک لوڈ میں 2 TFLOPS کی کارکردگی حاصل کرتے ہیں۔ ڈویلپرز رینڈرنگ، پوسٹ پروسیسنگ اور ڈیوائس پر مشین لرننگ کے لیے GPU کو ضم کرتے ہیں۔
اہم نکات
GPU (Graphics Processing Unit) ایک خصوصی مائکروچپ ہے جو بڑے پیمانے پر متوازی کارروائی کے لیے ڈیزائن کی گئی ہے۔ پہلی GPU 1990 کی دہائی کے آخر میں ڈیسک ٹاپ PC کے لیے 3D گرافکس ایکسلریٹر کے طور پر ظاہر ہوئیں۔ اس کے بعد سے، فن تعمیر فکسڈ پائپ لائن سے پروگرام ایبل شیڈرز اور یونیورسل کمپیوٹ یونٹس تک تیار ہوا ہے۔
GPU کا بنیادی مقصد راسٹرائزیشن ہے: ہندسی ڈیٹا (عمود، مثلث) کو اسکرین پر پکسلز میں تبدیل کرنا۔ اس عمل میں عمودی تبدیلی، غیر مرئی سطحوں کو ہٹانا، ٹیکسچرنگ اور رنگ مکسنگ شامل ہے۔ یہ تمام کارروائیاں ہزاروں عناصر کے لیے بیک وقت متوازی طور پر انجام دی جاتی ہیں۔
Jon Peddie Research (2025) کے مطابق، موبائل GPU مارکیٹ کل گرافکس پروسیسر حجم کا 58% ہے، جو PC اور سرورز کے لیے مجرد حل سے آگے ہے۔ ہر اسمارٹ فون میں CPU، DSP اور نیورل پروسیسر کے ساتھ System-on-Chip (SoC) میں کم از کم ایک GPU ضم ہوتا ہے۔
جدید GPU دو اقسام میں تقسیم ہیں: انٹیگریٹڈ (SoC میں شامل، CPU کے ساتھ میموری شیئر کرتا ہے) اور مجرد(اپنی ویڈیو میموری کے ساتھ علیحدہ بورڈ)۔ موبائل ڈویلپمنٹ میں صرف انٹیگریٹڈ GPU استعمال ہوتے ہیں — Qualcomm Adreno، ARM Mali، Apple GPU اور Imagination PowerVR۔
GPU کا ارتقا تین مراحل سے گزرا: فکسڈ پائپ لائن (1999–2006)، یونیفائیڈ شیڈرز (2006–2016) اور پروگرام ایبل کمپیوٹ کور (2016 — حال)۔ پہلے مرحلے نے کارروائیوں کا ایک سخت سلسلہ متعین کیا — تبدیلی، روشنی، ٹیکسچرنگ۔ ڈویلپر پائپ لائن میں مداخلت نہیں کر سکتا تھا۔
یونیفائیڈ شیڈرز کی آمد کے ساتھ، GPU کو صوابدیدی پروگرام — HLSL یا GLSL میں لکھے گئے شیڈرز — چلانے کی صلاحیت مل گئی۔ اس نے GPGPU — غیر گرافک کاموں کے لیے GPU کے استعمال کا راستہ کھول دیا۔ تیسرے مرحلے میں مشین لرننگ کے لیے ٹینسر کور اور ریئل ٹائم رے ٹریسنگ شامل کی گئی۔
موبائل GPU میں اہم سنگ میل Tile-Based Deferred Rendering (TBDR) کا تعارف تھا — ایک فن تعمیر جہاں فریم کو ٹائلس (16x16 پکسل) میں تقسیم کیا جاتا ہے اور تیز آن چپ میموری میں پروسیس کیا جاتا ہے۔ یہ ڈیسک ٹاپ GPU کی امیڈیٹ موڈ رینڈرنگ کے مقابلے میں بجلی کی کھپت کو 3–5 گنا کم کرتا ہے۔
GPU کا فن تعمیر CPU سے یکسر مختلف ہے۔ چند طاقتور کور اور بڑے کیشے کے بجائے، GPU میں SIMD (Single Instruction, Multiple Data) کے لیے موزوں سینکڑوں یا ہزاروں سادہ کمپیوٹ یونٹس ہوتے ہیں — ایک ہدایت متعدد ڈیٹا عناصر پر عمل میں لائی جاتی ہے۔
GPU کا بنیادی بلاک Shader Core (NVIDIA کی اصطلاح میں) یا Execution Unit (Intel) ہے۔ اس طرح کے متعدد بلاک Compute Units (AMD) یا Streaming Multiprocessors (NVIDIA) میں مل جاتے ہیں۔ ہر بلاک میں ریاضی کے لیے ALU، ایک رجسٹر فائل اور وارپ شیڈیولر (تھریڈ گروپس) شامل ہوتا ہے۔
موبائل GPU فن تعمیر کے لحاظ سے ڈیسک ٹاپ GPU سے مختلف ہیں۔ Qualcomm Adreno پروگرام ایبل شیڈر پروسیسرز اور ایک مخصوص راسٹرائزیشن بلاک کے ساتھ فن تعمیر استعمال کرتا ہے۔ ARM Mali Bifrost یا Valhall — کوارٹیٹ وارپ پروسیسنگ والے فن تعمیر پر مبنی ہے۔ Apple GPU کا 2017 سے اپنا ڈیزائن ہے جس میں Metal اور یونیفائیڈ میموری کی معاونت ہے۔
| کارخانہ دار | GPU سیریز | فن تعمیر | API |
|---|---|---|---|
| Qualcomm | Adreno 6xx/7xx/8xx | پروگرام ایبل شیڈر پروسیسرز | Vulkan، OpenGL ES |
| ARM | Mali-G سیریز | Bifrost / Valhall | Vulkan، OpenGL ES |
| Apple | Apple GPU (A13–A18) | اپنا ڈیزائن | Metal |
| Imagination | PowerVR IMG | Furian / B-Series | Vulkan، OpenGL ES |
موبائل GPU کی ایک اہم خصوصیت Unified Memory Architecture (UMA) ہے۔ GPU اور CPU مخصوص ویڈیو میموری کے بغیر ایک ہی RAM شیئر کرتے ہیں۔ یہ ڈیٹا کے تبادلے میں تاخیر کم کرتا ہے اور پروگرامنگ کو آسان بناتا ہے، لیکن گہرے حسابات کے تحت بینڈوتھ کو محدود کرتا ہے۔
CPU کم سے کم تاخیر کے ساتھ ترتیب وار کاموں کے لیے ڈیزائن کیا گیا ہے۔ اس میں بڑے L1/L2/L3 کیشے، برانچ پریڈکٹرز اور قیاسی عملدرآمد کے ساتھ 4–12 طاقتور کور ہوتے ہیں۔ GPU، اس کے برعکس، تھروپٹ کے لیے تاخیر قربان کرتا ہے — ہزاروں کور اعلی تاخیر کے ساتھ لیکن زبردست مجموعی کارکردگی کے ساتھ ڈیٹا پروسیس کرتے ہیں۔
فرق FLOPS (فی سیکنڈ فلوٹنگ پوائنٹ آپریشن) میں واضح ہے۔ 2025 کا ایک اعلی موبائل SoC: CPU — 200 GFLOPS، GPU — 2400 GFLOPS۔ GPU متوازی کارروائی کی اجازت دینے والے کاموں میں CPU سے 12 گنا بہتر کارکردگی دکھاتا ہے۔ تاہم، ترتیب وار الگورتھم کے لیے، کم تھریڈ مینجمنٹ اوور ہیڈ کی وجہ سے CPU تیز رہتا ہے۔
عملی طور پر، ڈویلپرز ایپلیکیشن منطق، UI اور I/O کے لیے CPU استعمال کرتے ہیں، اور رینڈرنگ، امیج پروسیسنگ، فزکس سمولیشن اور نیورل نیٹ ورک انفرنس کے لیے GPU استعمال کرتے ہیں۔ Google Android Performance Patterns (2025) کے مطابق، موبائل ایپلیکیشنز میں زیادہ سے زیادہ GPU لوڈ 60–80% ہے — اوور لوڈ تھروٹلنگ اور زیادہ گرمی کا باعث بنتا ہے۔
// CPU — sequential processing
for (int i = 0; i < N; i++) {
result[i] = data[i] * 2.0f;
}
// GPU — parallel processing (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 کوڈ ہر عنصر کے لیے ترتیب وار ضرب انجام دیتا ہے۔ GPU ورژن متوازی طور پر 256 تھریڈ لانچ کرتا ہے، ہر ایک اپنے عنصر کو ضرب دیتا ہے۔ N=10 لاکھ کے ساتھ، GPU ایک CPU کور کے مقابلے میں 100–1000 گنا تیزی سے کام مکمل کرے گا۔
موبائل GPU سخت حرارتی اور طاقت کی پابندیوں کے تحت کام کرتے ہیں۔ عام موبائل GPU کا TDP 2–8 W ہے، جبکہ ڈیسک ٹاپ کے ہم منصبوں کا 150–450 W ہے۔ اس کے لیے چوٹی کی کارکردگی کے بجائے توانائی کی کارکردگی پر مرکوز ایک خاص فن تعمیر کی ضرورت ہوتی ہے۔
بنیادی توانائی بچانے والی ٹیکنالوجی Tile-Based Rendering ہے۔ فریم کو 16x16 یا 32x32 پکسل کی ٹائلس میں تقسیم کیا جاتا ہے۔ ہر ٹائل تیز SRAM (Tile Memory) میں مکمل طور پر پروسیس ہوتی ہے، پھر بیرونی DRAM میں لکھی جاتی ہے۔ یہ امیڈیٹ موڈ کے مقابلے میں میموری تک رسائی کو 4–10 گنا کم کرتا ہے۔
Qualcomm Adreno سب سے زیادہ پھیلا ہوا موبائل GPU ہے۔ Adreno 750 (Snapdragon 8 Gen 3) میں مشترکہ رجسٹر پول کے ساتھ 12 شیڈر پروسیسرز ہیں۔ یہ Vulkan 1.3، OpenGL ES 3.2، OpenCL 3.0 اور ہارڈویئر رے ٹریسنگ کو سپورٹ کرتا ہے۔ Qualcomm (2025) کے مطابق، Adreno بجلی کی کھپت برقرار رکھتے ہوئے نسل در نسل 45% کارکردگی بہتری فراہم کرتا ہے۔
ARM Mali Android آلات میں دوسرا مقبول ترین GPU ہے۔ Mali-G720 متغیر شرح شیڈنگ اور ASTC HDR کی معاونت کے ساتھ 5ویں نسل کے Valhall فن تعمیر پر مبنی ہے۔ Mali کی ایک مخصوص خصوصیت کوارٹیٹ پروسیسنگ ہے: بہتر ALU استعمال کے لیے چار تھریڈ ایک وارپ میں مل جاتے ہیں۔
Apple GPU خصوصی طور پر Metal API کے لیے ڈیزائن کیا گیا ہے۔ A13 Bionic سے، Apple Metal 3، رے ٹریسنگ اور میش شیڈرز کی معاونت کے ساتھ اپنا GPU ڈیزائن استعمال کرتا ہے۔ Apple GPU فن تعمیر میں M4 Ultra پر 800 GB/s تک کی بینڈوتھ کے ساتھ Unified Memory ہے۔
GPU تھروٹلنگ — زیادہ گرمی پر فریکوئنسی میں کمی — موبائل گیمنگ کا سب سے بڑا مسئلہ ہے۔ مسلسل بوجھ کے تحت، SoC کا درجہ حرارت 85–95°C تک پہنچ جاتا ہے، اور GPU چپ کی حفاظت کے لیے فریکوئنسی 30–50% کم کر دیتا ہے۔ AnandTech (2025) کے مطابق، Qualcomm Adreno 750 Genshin Impact میں 15 منٹ کے بعد 35% تک کارکردگی کھو دیتا ہے۔
ڈویلپر ڈرا کال آپٹیمائزیشن، رینڈرنگ ریزولوشن کم کرکے اور Foveated Rendering استعمال کرکے تھروٹلنگ کو کم کر سکتا ہے۔ iOS پر Metal Performance Shaders اور Android پر Android Frame Pacing API ڈیوائس کے تھرمل بجٹ کے ساتھ بوجھ کو ہم آہنگ کرنے میں مدد کرتے ہیں۔
GPGPU (General-Purpose computing on GPU) غیر گرافک حسابات کے لیے گرافکس پروسیسر کا استعمال ہے۔ یہ خیال 2000 کی دہائی کے وسط میں پیدا ہوا، جب ڈویلپرز نے محسوس کیا کہ شیڈرز کو میٹرکس آپریشنز، خفیہ نگاری اور فزکس سمولیشن کے لیے ڈھالا جا سکتا ہے۔
آج، GPGPU بڑے پیمانے پر متوازی کارروائی کی ضرورت والے کاموں کے لیے ایک معیاری ٹول ہے: مشین لرننگ (نیورل نیٹ ورکس کی تربیت اور انفرنس)، خفیہ نگاری (ہیشنگ، خفیہ کاری)، امیج اور ویڈیو پروسیسنگ (فلٹرز، کوڈیک) اور سائنسی سمولیشن (سیال حرکیات، کوانٹم کیمسٹری)۔
موبائل آلات پر، GPGPU تک Compute Shaders کے ذریعے رسائی حاصل کی جاتی ہے — بغیر گرافک آؤٹ پٹ کے شیڈرز جو صرف ڈیٹا کے ساتھ کام کرتے ہیں۔ Compute Shader کام کے گروپس کا ایک گرڈ لانچ کرتا ہے، ہر گروپ میں متعدد تھریڈ ہوتے ہیں۔ اسکرین سے بائنڈنگ کے بغیر بفرز اور ٹیکسچرز کے ذریعے میموری تک رسائی ہوتی ہے۔
#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 ہر صف عنصر کے لیے جذر مربع حساب کرتا ہے۔ 16x16 کا کام کرنے والا گروپ بیک وقت 256 عناصر پروسیس کرتا ہے۔ جدید موبائل GPU 1024 کام کرنے والے گروپس اور لاکھوں عالمی تھریڈ تک سپورٹ کرتے ہیں۔
GPU تک رسائی کے API یہ طے کرتے ہیں کہ ڈویلپر گرافکس پروسیسر کو کمانڈز اور ڈیٹا کیسے بھیجتا ہے۔ موبائل پلیٹ فارمز پر تین اہم API استعمال ہوتے ہیں: Vulkan، Metal اور OpenGL ES۔ ہر ایک کے اپنے فوائد اور حدود ہیں جو کارکردگی اور مطابقت کو متاثر کرتے ہیں۔
Vulkan Khronos Group کا ایک نچلی سطح کا کراس پلیٹ فارم API ہے، جو OpenGL کا جانشین ہے۔ Vulkan ڈویلپرز کو GPU میموری، کمانڈ قطاروں اور مطابقت پذیری پر براہ راست کنٹرول دیتا ہے۔ Khronos (2025) کے مطابق، Vulkan ڈرائیور اوور ہیڈ کم کرکے OpenGL ES کے مقابلے میں 30–60% کارکردگی بہتری فراہم کرتا ہے۔
Android پر، Vulkan Android 7.0 (API 24) سے لازمی ہے، اور تمام جدید SoC Vulkan 1.3 کو سپورٹ کرتے ہیں۔ Vulkan Memory Allocator اور ایک درمیانی نمائندگی کے طور پر SPIR-V GLSL، HLSL یا Rust GPU میں شیڈرز لکھنے کی اجازت دیتے ہیں۔
Metal Apple کا ملکیتی GPU API ہے جو ماحولیاتی نظام کے تمام آلات: iPhone، iPad، Mac، Apple TV کے لیے ہے۔ Metal کم سے کم اوور ہیڈ اور پیش گوئی کے قابل کمانڈ عملدرآمد وقت فراہم کرتا ہے۔ Apple Developer Documentation (2025) کے مطابق، Metal FPS گراوٹ کے بغیر فی فریم 100,000 ڈرا کالز تک ہینڈل کرتا ہے۔
ایک اہم خصوصیت C++ پر مبنی Metal Shading Language (MSL) ہے۔ شیڈرز ایپلیکیشن کے ساتھ مشین کوڈ میں کمپائل ہوتے ہیں، جو Vulkan کے عام JIT کمپائلیشن کو ختم کرتا ہے۔ Metal Mesh Shaders، Ray Tracing اور رن ٹائم پر شیڈرز لوڈ کرنے کے لیے Dynamic Libraries کو سپورٹ کرتا ہے۔
OpenGL ES ایمبیڈڈ سسٹمز کے لیے OpenGL کا ایک آسان ورژن ہے۔ یہ پرانے آلات پر اور پسماندہ مطابقت کے لیے استعمال ہوتا ہے۔ Android Studio (2025) کے مطابق، OpenGL ES 3.2 Android آلات کے 94% پر سپورٹ ہے۔ نئے پروجیکٹس کے لیے، Google OpenGL ES کے بجائے Vulkan تجویز کرتا ہے۔
WebGL براؤزر پر مبنی OpenGL ES کا مشابہ ہے، ویب پر 3D گرافکس کی بنیاد ہے۔ WebGL 2.0 (OpenGL ES 3.0 کے مساوی) موبائل براؤزرز کے 92% پر سپورٹ ہے۔ WebGPU اگلی نسل ہے، جس کا فن تعمیر Vulkan اور Metal کے قریب ہے۔
اکثر پوچھے گئے سوالات
موبائل GPU 2–8 W کے تھرمل بجٹ میں کام کرتا ہے، توانائی بچانے کے لیے Tile-Based Rendering استعمال کرتا ہے اور UMA کے ذریعے CPU کے ساتھ میموری شیئر کرتا ہے۔ ڈیسک ٹاپ GPU 150–450 W استعمال کرتا ہے، اس کی مخصوص ویڈیو میموری (GDDR) ہوتی ہے اور یہ Immediate Mode Rendering استعمال کرتا ہے۔
Apple GPU M4 Ultra اور A18 Pro چپس میں فی واٹ کارکردگی میں موبائل GPU کے درمیان سرفہرست ہے۔ Android آلات میں، Snapdragon 8 Gen 4 میں Qualcomm Adreno 850 اور MediaTek Dimensity 9500 میں ARM Mali-G925 سرفہرست ہیں۔
ہاں، GPU iOS پر Core ML اور Android پر TensorFlow Lite / NNAPI کے ذریعے نیورل نیٹ ورک انفرنس کے لیے فعال طور پر استعمال ہوتا ہے۔ Google (2025) کے مطابق، GPU ایکسلریشن CPU کے مقابلے میں 3–10 گنا رفتار بہتری فراہم کرتا ہے۔
تھروٹلنگ تھرمل بجٹ سے تجاوز کرنے کی وجہ سے ہوتی ہے۔ مسلسل بوجھ کے تحت، SoC کا درجہ حرارت 85–95°C تک پہنچ جاتا ہے، اور GPU چپ کی حفاظت کے لیے فریکوئنسی کم کر دیتا ہے۔ حل رینڈرنگ آپٹیمائزیشن اور FPS کیپس (30–45 FPS) کا استعمال ہے۔
Vulkan نئے پروجیکٹس کے لیے بنیادی انتخاب ہے۔ OpenGL ES پرانے آلات کے ساتھ پسماندہ مطابقت کے لیے ہے۔ Metal iOS کے لیے لازمی ہے۔ کراس پلیٹ فارم ڈویلپمنٹ کے لیے Unity، Unreal Engine یا Filament جیسے فریم ورک استعمال کریں۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں