ایک ایسا کمپیوٹیشنل پروگرام جو اصل میں نیوڈیا CUDA کے لیے ڈیزائن کیا گیا تھا، اس نے M3 Pro والے ایپل ڈیوائس پر کرنل کوڈ میں تقریباً کوئی تبدیلی کیے بغیر کام کرنا شروع کر دیا۔

یہ X کے صارف @Abhinav نے کل ایک ترقی کا اعلان کیا۔ اور زیادہ حیران کن بات یہ ہے کہ یہ صرف ایک "ویکٹر جمع، تفریق، ضرب، تقسیم" کا ڈیمو نہیں بلکہ ایک حقیقی تین ابعادی فلوڈ سیمولیشن کام میں تقریباً 10 گنا تیزی حاصل کرنے میں کامیاب ہوا۔

اس کے پیچھے ایک خاص شریک ہے — GPT-5.6 Sol.
یہ واقعہ اوپن سورس سائنسی کمپیوٹنگ پلیٹ فارم OpenFPM پر پیش آیا۔ تحقیق کاروں نے ایک ایسا کام کیا جسے بہت سے لوگ "نمٹنا مشکل" سمجھتے ہیں: CUDA/HIP GPU کے لیے ڈیزائن کیے گئے پرفارمنس بیسڈ کمپیوٹنگ پروگرامز کو پلیٹ فارم کی دیواروں کو عبور کرکے ایپل کے اپنے Metal GPU آرکیٹیکچر پر چلانا۔
یہ کیوں مشکل ہے؟ پچھلے دس سالوں میں، GPU کمپیوٹنگ کا شعبہ بہت ٹوٹا ہوا رہا ہے — نوڈیا کے پاس CUDA ہے، AMD کے پاس HIP ہے، اور ایپل کے پاس Metal ہے۔ یہ ایکسیسٹمز مختلف زبانوں کی طرح ہیں جو ایک دوسرے کے ساتھ مطابقت نہیں رکھتے۔ CUDA میں لکھا گیا ایک پروگرام عام طور پر دوسرے پلیٹ فارم پر چلانے کے لیے بڑی تعداد میں دوبارہ لکھنا پڑتا ہے۔
لیکن اس بار، ڈویلپرز نے میٹل ورژن کو دوبارہ ترقی دینے کے بجائے ایک تبدیلی کا راستہ بنایا: پروگرام پہلے Clang/HIP سے گزرتا ہے، پھر SPIR-V، Vulkan اور MoltenVK جیسے درمیانی لیئرز کے ذریعے، جس کے بعد ایپل میٹل GPU کو سمجھنے اور موثر طریقے سے انجام دینے کی اجازت دی جاتی ہے۔
اہم بات یہ ہے کہ انہوں نے کوئی بھی میٹل خاص پارٹیکل API شامل نہیں کیا۔ ایپلیکیشن لیول پر اب بھی قدیم CUDA/HIP انداز کے کرنل کالز برقرار ہیں، جس سے حقیقی ہارڈ ویئر شفافیت حاصل ہوتی ہے۔
اس عمل کے دوران، GPT-5.6 Sol نے اہم کردار ادا کیا۔ اس نے ڈیوائس پر میموری لے آؤٹ کی تعمیر میں مدد کی، MoltenVK اور SPIR-V میں مطابقت کے مسائل کو تقریباً 6 گھنٹوں میں دریافت کیا، اور موزوں حل تجویز کیے۔

پروجیکٹ لنک: https://github.com/mosaic-group/openfpm/pull/18
اس کام کا اصل امتحان ایک پیچیدہ ٹیسٹ کیس ہے — تین بعدی SPH ڈیم توڑنے کا شبیہہ۔ اس کام کے لیے سکیننگ، ترتیب دینا اور دوبارہ ترتیب دینا، سیل اور پڑوسی فہرستوں کی تعمیر، گوسٹ ذرات کا تبادلہ، ریڈکشن آپریشنز اور اٹومک آپریشنز جیسے کئی پیچیدہ ماڈیولز کو одно وقت میں ہینڈل کرنا پڑتا ہے، اور ان میں سے کسی بھی مرحلے میں مسئلہ ہونے سے پرفارمنس میں کمی یا فزکل نتائج میں انحراف ہو سکتا ہے۔
لیکن ٹیسٹ کے نتائج متوقع سے زیادہ تھے۔ M3 Pro چپ والے ایپل ڈیوائس پر، میٹل GPU کا استعمال کرتے ہوئے، 6 سیکنڈ میں مکمل ہو گیا؛ جبکہ CPU کے سیکوئنسل کمپیوٹنگ کے ساتھ، 60 سیکنڈ میں مکمل ہو گیا۔ یعنی، ایک ہی پروگرام، صرف کمپیوٹنگ ہارڈویئر بدل کر، تقریباً 10 گنا تیزی حاصل کی گئی، اور GPU کا استعمال تقریباً 100% تھا (جو یہ ظاہر کرتا ہے کہ تبدیلی کی کارکردگی بہت زیادہ تھی)۔
مزید اہم بات یہ ہے کہ رفتار میں اضافہ درستگی کے نقصان کے بغیر حاصل کیا گیا ہے۔ ڈویلپرز نے محاکمہ کے نتائج کا مزید جائزہ لیا اور پایا کہ ایپل GPU اور اصل کمپیوٹیشن ورژن دونوں سے حاصل ہونے والے فزیکل نتائج، جیسے کہ اہم پیرامیٹرز اور محاکمہ کے ٹریکس، بہت قریب تھے۔ اس کا مطلب یہ ہے کہ ایپل GPU صرف چل رہا ہی نہیں، بلکہ اس نے سائنسی کمپیوٹیشن کا کام بھی درست طریقے سے مکمل کیا ہے۔
ڈیولپرز نے مزید واضح کیا کہ پارٹیکل اسٹوریج پارٹیکل کی تعداد N کے ساتھ لینیئر طور پر بڑھتی ہے، جبکہ پڑوسی تلاش جیسے کاموں کا بوجھ تقریباً O(N・k) ہوتا ہے (j میں ثابت اسپیشل ڈینسٹی کے تحت پڑوسیوں کی تعداد)۔ ابھی دکھائے گئے 10 گنا تیز رفتاری کا موازنہ ایک ہی مشین کے بیک اینڈ سے کیا گیا ہے۔ مستقبل میں، ایپل کے تھنڈر بولٹ کے ذریعہ RDMA ٹیکنالوجی کے استعمال سے متعدد مشینوں پر ڈائنامک لود بینسنگ حاصل کی جا سکتی ہے، جس سے سیمولیشن متعدد ڈیوائسز پر اسکیل ہو سکتی ہے۔
یقیناً، یہ کامیابی پورے GPU صنعت کو بدلنے کے لیے ابھی دور ہے۔ اب تک ایپل میٹل GPU کا ایک بڑا انتظام ہائی پریسیژن فلوٹنگ پوائنٹ کمپوٹیشن کی کمی ہے، جبکہ بہت سے پیشہ ورانہ سائنسی کمپوٹیشن کے شعبے ڈبل پریسیژن کمپوٹیشن پر انحصار کرتے ہیں۔ اس لیے، موسم کی پیشن گوئی، ایئر اسپیس سیمولیشن جیسے سупر کمپوٹنگ سیناریوز میں، نوڈیا کے پیشہ ورانہ GPU اب بھی برتری رکھتے ہیں۔
تاہم، کچھ لوگوں نے اس تجربے کے معنی کو لے کر سوال اٹھایا، ایک صارف نے کہا: "بازار میں تو بہت سے زیادہ مناسب نظام موجود ہیں، میک پر ایسی چھوٹی سی شیمیولیشن چلانے کا کیا فائدہ؟" اس کا مطلب یہ ہے کہ MacBook کا GPU اتنا ہی تیز کیوں نہ ہو، لیکن وہ سائنسی کمپوٹیشن کے لیے بنایا گیا نہیں ہے، اور یہ بات زیادہ تر ایک دکھاوے جیسی لگتی ہے۔
ڈیولپر کا جواب بہت صاف ہے: "اس کا سب سے بڑا فائدہ یہ ہے کہ یہ مزیدار ہے اور کام آسان بناتا ہے۔" وہ واضح کرتے ہیں کہ ٹیم کا بڑا سیمولیشن پہلے سے ہی کلسٹر پر چل رہا تھا، اور اس بار اسے ایپل آرکیٹیکچر پر چلانا، ڈیوائس ایبسٹرکشن لیئر کے ڈیزائن کی درستگی کی تصدیق کرتا ہے۔ ایک زیادہ عملی وجوہات روزمرہ کے ڈویلپمنٹ میں چھپی ہوئی ہے — بڑے سیمولیشن کو چلانے سے پہلے، ہمیشہ چھوٹے سیمولیشن سے ڈیبگ کرنا پڑتا ہے، اور سی پی یو پر مقامی ڈیبگنگ بہت سست ہوتی ہے؛ سیمولیشن کے نتائج عام طور پر کئی جیگا باٹس ہوتے ہیں، جنہیں SSH کے ذریعے واپس نہیں لایا جا سکتا، اور ریموٹ ڈسکٹاپ بھی بھاری اور استعمال میں مشکل ہوتا ہے، اس لیے بہتر ہے کہ آپ اسے مقامی طور پر چلائیں۔ سب سے بہتر بات یہ ہے کہ جو کوڈ آپ نے اپنے لینپاک پر ڈیبگ کر لیا، وہی کوڈ بغیر کسی تبدیلی کے جی پی یو کلسٹر پر لگا دیا جائے تو خودبخود اس کا سائز بڑھ جاتا ہے۔

اس تحقیق نے یہ بھی ثابت کیا کہ ایک ہی CUDA/HIP انداز کے الگورتھم کو Apple Silicon جیسے مختلف ہارڈویئر بیک اینڈز پر نسبتاً شفاف طریقے سے چلایا جا سکتا ہے۔ مستقبل میں، سافٹ ویئر ڈویلپرز شاید صرف ایک ہی GPU ایکوسسٹم سے منسلک نہ ہوں۔

اس کے علاوہ، یہ ظاہر کرتا ہے کہ AI (GPT-5.6 Sol) "کوڈ لکھنے میں مدد کرنا" سے "بنیادی سسٹم ڈیزائن، بہتری اور کراس پلیٹ فارم انجینئرنگ ڈیبگنگ میں شرکت" کے نئے مرحلے کی طرف بڑھ رہا ہے۔
ایپل کا GPU اس بار CUDA کے فرق کو عبور کر رہا ہے، جو صرف ایک شروعات ہو سکتی ہے۔
حوالہ لنک: https://x.com/Abhinavsns/status/2079774018748694696
یہ مضمون ویچن گروپ "机器之心" (ID: almosthuman2014) سے حاصل کیا گیا ہے، مصنف:机器之心
