ایمیزون سیج میکر ملٹی ماڈل اینڈ پوائنٹس (MMEs) مشین لرننگ (ML) ماڈلز کی ایک بڑی تعداد کو تعینات کرنے کے لیے ایک قابل توسیع اور سرمایہ کاری مؤثر طریقہ فراہم کرتے ہیں۔ یہ آپ کو ایک ہی اختتامی نقطہ کے پیچھے ایک ہی سرونگ کنٹینر میں متعدد ML ماڈلز کو تعینات کرنے کی صلاحیت فراہم کرتا ہے۔ وہاں سے، SageMaker آپ کے ٹریفک پیٹرن کی بنیاد پر آپ کی جانب سے ماڈلز کی لوڈنگ اور ان لوڈنگ اور اسکیلنگ کے وسائل کا انتظام کرتا ہے۔ آپ ہوسٹنگ کے وسائل کو بانٹنے اور دوبارہ استعمال کرنے سے فائدہ اٹھائیں گے اور ماڈلز کی ایک بڑی مقدار کو منظم کرنے کے آپریشنل بوجھ کو کم کریں گے۔
نومبر 2022 میں، MMEs نے GPU کے لیے تعاون شامل کیا۔s، جو آپ کو ایک ہی GPU ڈیوائس پر متعدد ماڈلز چلانے اور ایک اختتامی نقطہ کے پیچھے GPU مثالوں کو پیمانے کی اجازت دیتا ہے۔ یہ ڈیپ نیورل نیٹ ورک (DNN) ماڈلز کی مضبوط MME مانگ کو پورا کرتا ہے جو GPUs کے ساتھ تیز رفتار کمپیوٹ سے فائدہ اٹھاتے ہیں۔ ان میں کمپیوٹر ویژن (CV)، نیچرل لینگویج پروسیسنگ (NLP)، اور جنریٹیو AI ماڈلز شامل ہیں۔ طلب کی وجوہات میں درج ذیل شامل ہیں:
- DNN ماڈل عام طور پر سائز اور پیچیدگی میں بڑے ہوتے ہیں اور تیز رفتاری سے بڑھتے رہتے ہیں۔ مثال کے طور پر NLP ماڈلز کو لے کر، ان میں سے بہت سے اربوں پیرامیٹرز سے تجاوز کرتے ہیں، جس میں کم تاخیر اور اعلی تھرو پٹ کی ضروریات کو پورا کرنے کے لیے GPUs کی ضرورت ہوتی ہے۔
- ہم نے انفرادی صارفین کو ہائپر پرسنلائزڈ تجربات فراہم کرنے کے لیے ان ماڈلز کو حسب ضرورت بنانے کی بڑھتی ہوئی ضرورت کا مشاہدہ کیا ہے۔ جیسے جیسے ان ماڈلز کی مقدار میں اضافہ ہوتا ہے، بہت سے ماڈلز کو پیمانے پر تعینات کرنے اور چلانے کے لیے ایک آسان حل کی ضرورت ہے۔
- GPU مثالیں مہنگی ہیں اور آپ GPU کے استعمال کو زیادہ سے زیادہ کرنے اور آپریٹنگ لاگت کو کم کرنے کے لیے ان مثالوں کو زیادہ سے زیادہ دوبارہ استعمال کرنا چاہتے ہیں۔
اگرچہ یہ تمام وجوہات DNN ماڈلز کے لیے ایک مثالی اختیار کے طور پر GPU والے MMEs کی طرف اشارہ کرتی ہیں، لیکن یہ مشورہ دیا جاتا ہے کہ صحیح اینڈ پوائنٹ کنفیگریشن تلاش کرنے کے لیے لوڈ ٹیسٹنگ کریں جو آپ کے استعمال کے کیس کی ضروریات کو پورا کرتی ہے۔ بہت سے عوامل لوڈ ٹیسٹنگ کے نتائج کو متاثر کر سکتے ہیں، جیسے مثال کی قسم، مثالوں کی تعداد، ماڈل کا سائز، اور ماڈل فن تعمیر۔ اس کے علاوہ، لوڈ ٹیسٹنگ خودکار اسکیلنگ کی حکمت عملیوں کی رہنمائی میں مدد کر سکتی ہے نہ کہ تکراری آزمائش اور غلطی کے طریقوں کی بجائے صحیح میٹرکس کا استعمال کرتے ہوئے۔
ان وجوہات کی بناء پر، ہم نے یہ پوسٹ آپ کو GPU کے ساتھ MMEs پر مناسب لوڈ ٹیسٹنگ انجام دینے اور آپ کے ML کے استعمال کے کیس کے لیے بہترین ترتیب تلاش کرنے میں مدد کرنے کے لیے رکھی ہے۔ ہم NLP اور CV میں کچھ مقبول ترین DNN ماڈلز کے لیے اپنے لوڈ ٹیسٹنگ کے نتائج کو مختلف مثالوں کی اقسام پر MMEs کا استعمال کرتے ہوئے ہوسٹ کرتے ہیں۔ ہم اپنے ٹیسٹ کے نتائج سے حاصل کردہ بصیرت اور نتیجہ کا خلاصہ کرتے ہیں تاکہ آپ کی اپنی تعیناتیوں کو ترتیب دینے کے بارے میں باخبر فیصلہ کرنے میں آپ کی مدد کی جا سکے۔ راستے میں، ہم GPU پر MMEs کے لیے لوڈ ٹیسٹنگ انجام دینے کے لیے اپنے تجویز کردہ نقطہ نظر کا اشتراک بھی کرتے ہیں۔ تجویز کردہ ٹولز اور تکنیک ان ماڈلز کی زیادہ سے زیادہ تعداد کا تعین کرتی ہے جو فی مثال کی قسم لوڈ کیے جاسکتے ہیں اور قیمت کی بہترین کارکردگی حاصل کرنے میں آپ کی مدد کرتے ہیں۔
حل جائزہ
GPU کے ساتھ MMEs اور MMEs کے تعارف کے لیے، رجوع کریں۔ ایک ملٹی ماڈل اینڈ پوائنٹ بنائیں اور Amazon SageMaker ملٹی ماڈل اینڈ پوائنٹس کے ساتھ GPU پر متعدد ڈیپ لرننگ ماڈلز چلائیں۔. اس پوسٹ میں لوڈ ٹیسٹنگ کے سیاق و سباق کے لیے، آپ ہمارے نمونے کوڈ سے ڈاؤن لوڈ کر سکتے ہیں۔ GitHub repo نتائج کو دوبارہ پیش کرنے کے لیے یا اپنے ماڈلز کو بینچ مارک کرنے کے لیے اسے بطور ٹیمپلیٹ استعمال کریں۔ ریپو میں دو نوٹ بک فراہم کی گئی ہیں: ایک لوڈ ٹیسٹنگ CV ماڈلز کے لیے اور دوسری NLP کے لیے۔ مختلف سائز اور آرکیٹیکچرز کے متعدد ماڈلز کو مختلف قسم کے GPU مثالوں پر بینچ مارک کیا گیا تھا: ml.g4dn.2xlarge، ml.g5.2xlarge، اور ml.p3.2xlarge۔ اسے ہر ایک مثال اور ماڈل کی قسم کے لیے درج ذیل میٹرکس میں کارکردگی کا ایک معقول کراس سیکشن فراہم کرنا چاہیے:
- ماڈلز کی زیادہ سے زیادہ تعداد جنہیں GPU میموری میں لوڈ کیا جا سکتا ہے۔
- ہر ایک استفسار کے لیے کلائنٹ کی طرف سے اختتام سے آخر تک جواب میں تاخیر کا مشاہدہ کیا گیا۔
- فی سیکنڈ سوالات کا زیادہ سے زیادہ تھرو پٹ جس پر اختتامی نقطہ بغیر کسی غلطی کے کارروائی کر سکتا ہے۔
- ایک ناکام درخواست دیکھنے سے پہلے فی مثال زیادہ سے زیادہ موجودہ صارفین
درج ذیل جدول میں جانچے گئے ماڈلز کی فہرست دی گئی ہے۔
کیس کا استعمال کریں | ماڈل کا نام | ڈسک پر سائز | پیرامیٹرز کی تعداد |
CV | resnet50 |
100Mb | 25M |
CV | convnext_base |
352Mb | 88M |
CV | vit_large_patch16_224 |
1.2Gb | 304M |
ینیلپی | bert-base-uncased |
436Mb | 109M |
ینیلپی | roberta-large |
1.3Gb | 335M |
درج ذیل جدول میں جانچ کی گئی GPU مثالوں کی فہرست دی گئی ہے۔
مثال کی قسم | جی پی یو کی قسم | GPUs کی تعداد | GPU میموری (GiB) |
ml.g4dn.2xlarge | NVIDIA T4 GPUs | 1 | 16 |
ml.g5.2xlarge | NVIDIA A10G ٹینسر کور GPU | 1 | 24 |
ml.p3.2xlarge | NVIDIA® V100 Tensor Core GPU | 1 | 16 |
جیسا کہ پہلے ذکر کیا گیا ہے، کوڈ کی مثال دوسرے ماڈلز اور مثال کی اقسام میں اپنایا جا سکتا ہے۔
نوٹ کریں کہ MMEs فی الحال صرف ایک GPU مثالوں کو سپورٹ کرتے ہیں۔ معاون مثال کی اقسام کی فہرست کے لیے، رجوع کریں۔ تعاون یافتہ الگورتھم، فریم ورک، اور مثالیں۔.
بینچ مارکنگ کا طریقہ کار درج ذیل مراحل پر مشتمل ہے:
- ماڈل ہب سے پہلے سے تربیت یافتہ ماڈل بازیافت کریں۔
- SageMaker MMEs پر پیش کرنے کے لیے ماڈل آرٹفیکٹ تیار کریں (دیکھیں۔ Amazon SageMaker ملٹی ماڈل اینڈ پوائنٹس کے ساتھ GPU پر متعدد ڈیپ لرننگ ماڈلز چلائیں۔ مزید تفصیلات کے لیے).
- GPU مثال پر SageMaker MME تعینات کریں۔
- ماڈلز کی زیادہ سے زیادہ تعداد کا تعین کریں جنہیں GPU میموری میں ایک مخصوص حد کے اندر لوڈ کیا جا سکتا ہے۔
- لوکسٹ لوڈ ٹیسٹنگ فریم ورک کو ٹریفک کی نقل کرنے کے لیے استعمال کریں جو مثال کے طور پر لوڈ کیے گئے ماڈلز کو تصادفی طور پر طلب کرتا ہے۔
- ڈیٹا اکٹھا کریں اور نتائج کا تجزیہ کریں۔
- اختیاری طور پر، TensorRT پر ماڈل مرتب کرنے کے بعد 2-6 مراحل کو دہرائیں۔
مراحل 4 اور 5 گہری نظر کی ضمانت دیتے ہیں۔ SageMaker GPU MME کے اندر ماڈلز کو متحرک انداز میں میموری میں لوڈ کیا جاتا ہے۔ لہذا، مرحلہ 4 میں، ہم ایک ابتدائی ماڈل نمونے کو اپ لوڈ کرتے ہیں۔ ایمیزون سادہ اسٹوریج سروس (ایمیزون S3) اور اسے میموری میں لوڈ کرنے کے لیے ماڈل کو طلب کریں۔ ابتدائی درخواست کے بعد، ہم استعمال شدہ GPU میموری کی مقدار کی پیمائش کرتے ہیں، ابتدائی ماڈل کی ایک کاپی بناتے ہیں، ماڈل کی کاپی کو میموری میں لوڈ کرنے کے لیے طلب کرتے ہیں، اور استعمال شدہ GPU میموری کی کل مقدار کی دوبارہ پیمائش کرتے ہیں۔ یہ عمل اس وقت تک دہرایا جاتا ہے جب تک کہ GPU میموری کے استعمال کی ایک مخصوص حد تک نہ پہنچ جائے۔ بینچ مارک کے لیے، ہم نے بڑے بیچوں پر اندازہ لگانے کے لیے یا کم استعمال ہونے والے دوسرے ماڈلز کو لوڈ کرنے کے لیے کچھ جگہ چھوڑنے کے لیے ایک معقول میموری بفر فراہم کرنے کے لیے حد کو 90% پر سیٹ کیا ہے۔
صارف ٹریفک کی نقل کریں۔
ماڈلز کی تعداد کا تعین کرنے کے بعد، ہم استعمال کرکے لوڈ ٹیسٹ چلا سکتے ہیں۔ ٹڈی لوڈ ٹیسٹنگ فریم ورک. لوڈ ٹیسٹ بے ترتیب ماڈلز کے لیے صارف کی درخواستوں کی تقلید کرتا ہے اور خود بخود میٹرکس کی پیمائش کرتا ہے جیسے ردعمل میں تاخیر اور تھرو پٹ۔
Locust اپنی مرضی کے مطابق لوڈ ٹیسٹ کی شکلوں کی حمایت کرتا ہے جو آپ کو اپنی مرضی کے مطابق ٹریفک پیٹرن کی وضاحت کرنے کی اجازت دیتا ہے. اس بینچ مارک میں استعمال ہونے والی شکل مندرجہ ذیل چارٹ میں دکھائی گئی ہے۔ پہلے 30 سیکنڈ میں، اختتامی نقطہ 10 ہم آہنگ صارفین کے ساتھ گرم ہو جاتا ہے۔ 30 سیکنڈ کے بعد، نئے صارفین کو دو فی سیکنڈ کی شرح سے پیدا کیا جاتا ہے، جو 20 سیکنڈ کے نشان پر 40 ساتھی صارفین تک پہنچ جاتے ہیں۔ اس کے بعد اختتامی نقطہ کو 20 ہم آہنگ صارفین کے ساتھ 60 سیکنڈ کے نشان تک مستقل طور پر بینچ مارک کیا جاتا ہے، اس مقام پر Locust دوبارہ صارفین کو دو فی سیکنڈ کی رفتار سے بڑھانا شروع کر دیتا ہے جب تک کہ 40 ایک ساتھ استعمال کنندہ ہوں۔ ریمپنگ اپ اور مستقل جانچ کے اس انداز کو اس وقت تک دہرایا جاتا ہے جب تک کہ اختتامی نقطہ کو 200 کنکرنٹ صارفین تک ریمپ نہ کر دیا جائے۔ آپ کے استعمال کے معاملے پر منحصر ہے، آپ اپنے متوقع ٹریفک پیٹرن کو زیادہ درست طریقے سے ظاہر کرنے کے لیے locust_benchmark_sm.py میں لوڈ ٹیسٹ کی شکل کو ایڈجسٹ کرنا چاہیں گے۔ مثال کے طور پر، اگر آپ بڑے زبان کے ماڈلز کی میزبانی کرنے کا ارادہ رکھتے ہیں، تو ہو سکتا ہے کہ 200 ایک ساتھ استعمال کنندگان کے ساتھ لوڈ ٹیسٹ کسی ایک موقع پر ہوسٹ کیے گئے ماڈل کے لیے ممکن نہ ہو، اور اس لیے آپ صارف کی تعداد کو کم کرنا یا مثالوں کی تعداد میں اضافہ کر سکتے ہیں۔ آپ لوڈ ٹیسٹ کے دورانیے کو بڑھانا بھی چاہیں گے تاکہ زیادہ درست طریقے سے اینڈ پوائنٹ کے استحکام کو طویل مدت میں اندازہ لگایا جا سکے۔
stages = [
{"duration": 30, "users": 10, "spawn_rate": 5},
{"duration": 60, "users": 20, "spawn_rate": 1},
{"duration": 90, "users": 40, "spawn_rate": 2},
…
]
نوٹ کریں کہ ہم نے صرف PyTorch یا TensorRT کا استعمال کرتے ہوئے ایک مستقل سرونگ بیسز پر چلنے والے یکساں ماڈلز کے ساتھ اختتامی نقطہ کا بینچ مارک کیا ہے۔ اس کی وجہ یہ ہے کہ MMEs ایک جیسی خصوصیات کے حامل بہت سے ماڈلز کی میزبانی کے لیے بہترین موزوں ہیں، جیسے کہ میموری کی کھپت اور رسپانس ٹائم۔ میں فراہم کردہ بینچ مارکنگ ٹیمپلیٹس GitHub repo اب بھی اس بات کا تعین کرنے کے لیے استعمال کیا جا سکتا ہے کہ آیا MMEs پر متضاد ماڈل پیش کرنے سے مطلوبہ کارکردگی اور استحکام حاصل ہو گا۔
سی وی ماڈلز کے بینچ مارک کے نتائج
کمپیوٹر ویژن ماڈلز کے لیے لوڈ ٹیسٹنگ چلانے کے لیے cv-benchmark.ipynb نوٹ بک استعمال کریں۔ آپ پہلے سے تربیت یافتہ ماڈل کے نام اور مثال کی قسم کے پیرامیٹرز کو مختلف ماڈل اور مثال کی قسم کے امتزاج پر کارکردگی لوڈ ٹیسٹنگ میں ایڈجسٹ کر سکتے ہیں۔ ہم نے جان بوجھ کر تین CV ماڈلز کو مختلف سائز کی حدود میں چھوٹے سے بڑے تک آزمایا: resnet50
(25M) convnext_base
(88M)، اور vit_large_patch16_224
(304M)۔ اگر آپ اس فہرست سے باہر کوئی ماڈل چنتے ہیں تو آپ کو کوڈ میں ایڈجسٹ کرنے کی ضرورت پڑ سکتی ہے۔ مزید برآں، نوٹ بک ان پٹ امیج کی شکل کو 224x224x3 امیج ٹینسر پر ڈیفالٹ کرتی ہے۔ اگر آپ کو مختلف سائز کی تصویر لینے والے ماڈلز کو بینچ مارک کرنے کی ضرورت ہو تو اس کے مطابق ان پٹ کی شکل کو ایڈجسٹ کرنا یاد رکھیں۔
پوری نوٹ بک کو چلانے کے بعد، آپ کو کارکردگی کے تجزیہ کے کئی تصورات ملیں گے۔ پہلے دو تفصیلی ماڈل کی کارکردگی کے ساتھ ساتھ صارفین کو بڑھانے کے حوالے سے۔ مندرجہ ذیل اعداد و شمار مثال کے طور پر تخلیق کردہ تصورات ہیں۔ ResNet50
ml.g4dn.2xlarge پر چلنے والا ماڈل، PyTorch (بائیں) بمقابلہ TensorRT (دائیں) کا موازنہ کرتا ہے۔ ٹاپ لائن گرافس y-axis پر ماڈل کی تاخیر اور تھرو پٹ کو دکھاتے ہیں جس کے ساتھ ساتھ کلائنٹ کے کارکنوں کی بڑھتی ہوئی تعداد x-axis پر ظاہر ہوتی ہے۔ نیچے بار چارٹس کامیاب اور ناکام درخواستوں کی گنتی دکھاتے ہیں۔
ہم نے جانچے تمام کمپیوٹر وژن ماڈلز کو دیکھتے ہوئے، ہم نے مندرجہ ذیل مشاہدہ کیا:
- تاخیر (ملی سیکنڈ میں) زیادہ ہے، اور بڑے ماڈلز کے لیے تھرو پٹ (درخواستیں فی سیکنڈ) کم ہے (
resnet50 > convnext_base > vit_large_patch16_224
). - تاخیر میں اضافہ صارفین کی تعداد کے ساتھ متناسب ہے کیونکہ انفرنس سرور پر مزید درخواستوں کی قطار لگی ہوئی ہے۔
- بڑے ماڈلز زیادہ کمپیوٹ وسائل استعمال کرتے ہیں اور چھوٹے ماڈل سے کم صارفین کے ساتھ اپنی زیادہ سے زیادہ تھرو پٹ کی حد تک پہنچ سکتے ہیں۔ اس کے ساتھ مشاہدہ کیا جاتا ہے۔
vit_large_patch16_224
ماڈل، جس نے 140 سمورتی صارفین پر پہلی ناکام درخواست ریکارڈ کی۔ دوسرے دو ماڈلز کے مقابلے میں نمایاں طور پر بڑے ہونے کی وجہ سے، اس میں اعلی ہم آہنگی پر بھی مجموعی طور پر سب سے زیادہ ناکام درخواستیں تھیں۔ یہ ایک واضح اشارہ ہے کہ اختتامی نقطہ کو کسی ایک مثال سے آگے پیمانہ کرنے کی ضرورت ہوگی اگر ارادہ 140 سے زیادہ ہم وقت صارفین کی حمایت کرنا ہے۔
نوٹ بک رن کے اختتام پر، آپ کو چار کلیدی میٹرکس میں سے ہر ایک کے لیے PyTorch بمقابلہ TensorRT ماڈلز کا خلاصہ موازنہ بھی ملتا ہے۔ ہمارے بینچ مارک ٹیسٹنگ سے، تمام CV ماڈلز نے TensorRT کی تالیف کے بعد ماڈل کی کارکردگی میں اضافہ دیکھا۔ ہمارے لے جا رہے ہیں۔ ResNet50
مثال کے طور پر ایک بار پھر، لیٹنسی میں 32% کمی واقع ہوئی ہے جبکہ تھرو پٹ میں 18% اضافہ ہوا ہے۔ اگرچہ سمورتی صارفین کی زیادہ سے زیادہ تعداد اسی کے لیے رہی ResNet50
، دوسرے دو ماڈلز دونوں نے ایک ساتھ صارفین کی تعداد میں 14% بہتری دیکھی جس کی وہ حمایت کر سکتے ہیں۔ TensorRT کی کارکردگی میں بہتری، تاہم، زیادہ میموری کے استعمال کی قیمت پر آئی، جس کے نتیجے میں MMEs کی طرف سے کم ماڈلز کو لوڈ کیا گیا۔ کنوولیشنل نیورل نیٹ ورک (CNN) کا استعمال کرنے والے ماڈلز پر اثر زیادہ ہوتا ہے۔ درحقیقت، ہمارے ResNet50 ماڈل نے PyTorch سے TensorRT جانے والی GPU میموری سے تقریباً دوگنا استعمال کیا، جس کے نتیجے میں 50% کم ماڈل لوڈ ہوئے (46 بمقابلہ 23)۔ ہم مندرجہ ذیل سیکشن میں اس رویے کی مزید تشخیص کرتے ہیں۔
NLP ماڈلز کے لیے بینچ مارک کے نتائج
NLP ماڈلز کے لیے، لوڈ ٹیسٹ چلانے کے لیے nlp-benchmark.ipynb نوٹ بک استعمال کریں۔ نوٹ بک کا سیٹ اپ بہت ملتا جلتا نظر آنا چاہیے۔ ہم نے دو NLP ماڈلز کا تجربہ کیا: bert-base-uncased (109M) اور roberta-large (335M)۔ پہلے سے تربیت یافتہ ماڈل اور ٹوکنائزر دونوں ہیگنگ فیس ہب سے ڈاؤن لوڈ کیے جاتے ہیں، اور ٹیسٹ پے لوڈ نمونے کی تار کا استعمال کرتے ہوئے ٹوکنائزر سے تیار کیا جاتا ہے۔ زیادہ سے زیادہ ترتیب کی لمبائی 128 پر طے شدہ ہے۔ اگر آپ کو لمبی تاروں کی جانچ کرنے کی ضرورت ہے، تو اس پیرامیٹر کو ایڈجسٹ کرنا یاد رکھیں۔ NLP نوٹ بک کے ذریعے چلنے سے تصورات کا ایک ہی سیٹ تیار ہوتا ہے: Pytorch (بائیں) بمقابلہ TensorRT (دائیں)۔
ان سے، ہم نے NLP ماڈلز کے لیے TensorRT کے اور بھی زیادہ کارکردگی کے فوائد کا مشاہدہ کیا۔ لے جانا roberta-large
مثال کے طور پر ایک ml.g4dn.2x بڑی مثال پر، انفرنس لیٹینسی ڈرامائی طور پر 180 ملی سیکنڈ سے کم ہو کر 56 ملی سیکنڈ (70% بہتری) ہو گئی ہے، جبکہ تھرو پٹ 406% فی سیکنڈ سے 33 درخواستوں سے 167 تک بہتر ہوا ہے۔ صارفین میں 50 فیصد اضافہ ہوا ناکام درخواستوں کا مشاہدہ اس وقت تک نہیں کیا گیا جب تک کہ ہم 180 ایک ساتھ استعمال کنندگان تک نہ پہنچ جائیں، جبکہ اصل PyTorch ماڈل کے 120 کے مقابلے۔ میموری کے استعمال کے لحاظ سے، ہم نے TensorRT (نو ماڈل سے آٹھ تک) کے لیے ایک کم ماڈل دیکھا۔ تاہم، منفی اثر اس کے مقابلے میں بہت چھوٹا ہے جو ہم نے CNN پر مبنی ماڈلز کے ساتھ دیکھا۔
میموری کے استعمال پر تجزیہ
مندرجہ ذیل جدول PyTorch سے TensorRT تک میموری کے استعمال کے اثرات پر مکمل تجزیہ دکھاتا ہے۔ ہم نے پہلے ذکر کیا کہ CNN پر مبنی ماڈلز زیادہ منفی طور پر متاثر ہوتے ہیں۔ دی ResNet50
ماڈل میں تینوں GPU مثالوں کی اقسام میں بھری ہوئی ماڈلز کی تعداد میں 50% سے زیادہ کمی تھی۔ Convnext_base
بورڈ بھر میں تقریباً 70% کی اس سے بھی بڑی کمی تھی۔ دوسری طرف، ٹرانسفارمر ماڈلز پر اثر چھوٹا یا ملا جلا ہے۔ vit_large_patch16_224
اور roberta-large
بالترتیب تقریباً 20% اور 3% کی اوسط کمی تھی۔ bert-base-uncased
تقریباً 40 فیصد بہتری تھی۔
مجموعی طور پر تمام ڈیٹا پوائنٹس کو دیکھتے ہوئے تاخیر، تھرو پٹ، اور بھروسے میں اعلیٰ کارکردگی، اور لوڈ کیے جانے والے ماڈلز کی زیادہ سے زیادہ تعداد پر معمولی اثر کے حوالے سے، ہم ٹرانسفارمر پر مبنی ماڈل آرکیٹیکچرز کے لیے TensorRT ماڈل کی سفارش کرتے ہیں۔ CNNs کے لیے، ہمیں یقین ہے کہ مزید لاگت کی کارکردگی کے تجزیے کی ضرورت ہے تاکہ یہ یقینی بنایا جا سکے کہ کارکردگی کا فائدہ اضافی ہوسٹنگ انفراسٹرکچر کی لاگت سے زیادہ ہے۔
ایم ایل استعمال کیس | آرکیٹیکچر | ماڈل کا نام | مثال کی قسم | فریم ورک | زیادہ سے زیادہ ماڈلز بھری ہوئی ہیں۔ | فرق (%) | اوسط فرق (%) |
CV | سی این این | Resnet50 |
ml.g4dn.2xlarge | پی ٹورچ | 46 | -50٪ | -50٪ |
TensorRT | 23 | ||||||
ml.g5.2xlarge | پی ٹورچ | 70 | -51٪ | ||||
TensorRT | 34 | ||||||
ml.p3.2xlarge | پی ٹورچ | 49 | -51٪ | ||||
TensorRT | 24 | ||||||
Convnext_base |
ml.g4dn.2xlarge | پی ٹورچ | 33 | -50٪ | -70٪ | ||
TensorRT | 10 | ||||||
ml.g5.2xlarge | پی ٹورچ | 50 | -70٪ | ||||
TensorRT | 16 | ||||||
ml.p3.2xlarge | پی ٹورچ | 35 | -69٪ | ||||
TensorRT | 11 | ||||||
ٹرانسفارمر | vit_large_patch16_224 |
ml.g4dn.2xlarge | پی ٹورچ | 10 | -30٪ | -20٪ | |
TensorRT | 7 | ||||||
ml.g5.2xlarge | پی ٹورچ | 15 | -13٪ | ||||
TensorRT | 13 | ||||||
ml.p3.2xlarge | پی ٹورچ | 11 | -18٪ | ||||
TensorRT | 9 | ||||||
ینیلپی | Roberta-large |
ml.g4dn.2xlarge | پی ٹورچ | 9 | -11٪ | -3٪ | |
TensorRT | 8 | ||||||
ml.g5.2xlarge | پی ٹورچ | 13 | 0% | ||||
TensorRT | 13 | ||||||
ml.p3.2xlarge | پی ٹورچ | 9 | 0% | ||||
TensorRT | 9 | ||||||
Bert-base-uncased |
ml.g4dn.2xlarge | پی ٹورچ | 26 | 62٪ | 40٪ | ||
TensorRT | 42 | ||||||
ml.g5.2xlarge | پی ٹورچ | 39 | 28٪ | ||||
TensorRT | 50 | ||||||
ml.p3.2xlarge | پی ٹورچ | 28 | 29٪ | ||||
TensorRT | 36 |
مندرجہ ذیل جدولوں میں تینوں GPU مثالوں کی اقسام کے تمام میٹرکس کے لیے ہمارے مکمل بینچ مارک کے نتائج درج ہیں۔
ml.g4dn.2xlarge |
||||||||||||
کیس کا استعمال کریں | آرکیٹیکچر | ماڈل کا نام | پیرامیٹرز کی تعداد | فریم ورک | زیادہ سے زیادہ ماڈلز بھری ہوئی ہیں۔ | فرق (%) | لطیسی (ایم ایس) | فرق (%) | تھرو پٹ (qps) | فرق (%) | زیادہ سے زیادہ کنکرنٹ صارفین | فرق (%) |
CV | سی این این | resnet50 |
25M | پی ٹورچ | 46 | -50٪ | 164 | -32٪ | 120 | 18٪ | 180 | NA |
TensorRT | 23 | . | 111 | . | 142 | . | 180 | . | ||||
convnext_base |
88M | پی ٹورچ | 33 | -70٪ | 154 | -22٪ | 64 | 102٪ | 140 | 14٪ | ||
TensorRT | 10 | . | 120 | . | 129 | . | 160 | . | ||||
ٹرانسفارمر | vit_large_patch16_224 |
304M | پی ٹورچ | 10 | -30٪ | 425 | -69٪ | 26 | 304٪ | 140 | 14٪ | |
TensorRT | 7 | . | 131 | . | 105 | . | 160 | . | ||||
ینیلپی | bert-base-uncased |
109M | پی ٹورچ | 26 | 62٪ | 70 | -39٪ | 105 | 142٪ | 140 | 29٪ | |
TensorRT | 42 | . | 43 | . | 254 | . | 180 | . | ||||
roberta-large |
335M | پی ٹورچ | 9 | -11٪ | 187 | -70٪ | 33 | 406٪ | 120 | 50٪ | ||
TensorRT | 8 | . | 56 | . | 167 | . | 180 | . |
ml.g5.2xlarge |
||||||||||||
کیس کا استعمال کریں | آرکیٹیکچر | ماڈل کا نام | پیرامیٹرز کی تعداد | فریم ورک | زیادہ سے زیادہ ماڈلز بھری ہوئی ہیں۔ | فرق (%) | لطیسی (ایم ایس) | فرق (%) | تھرو پٹ (qps) | فرق (%) | زیادہ سے زیادہ کنکرنٹ صارفین | فرق (%) |
CV | سی این این | resnet50 |
25M | پی ٹورچ | 70 | -51٪ | 159 | -31٪ | 146 | 14٪ | 180 | 11٪ |
TensorRT | 34 | . | 110 | . | 166 | . | 200 | . | ||||
convnext_base |
88M | پی ٹورچ | 50 | -68٪ | 149 | -23٪ | 134 | 13٪ | 180 | 0% | ||
TensorRT | 16 | . | 115 | . | 152 | . | 180 | . | ||||
ٹرانسفارمر | vit_large_patch16_224 |
304M | پی ٹورچ | 15 | -13٪ | 149 | -22٪ | 105 | 35٪ | 160 | 25٪ | |
TensorRT | 13 | . | 116 | . | 142 | . | 200 | . | ||||
ینیلپی | bert-base-uncased |
109M | پی ٹورچ | 39 | 28٪ | 65 | -29٪ | 183 | 38٪ | 180 | 11٪ | |
TensorRT | 50 | . | 46 | . | 253 | . | 200 | . | ||||
roberta-large |
335M | پی ٹورچ | 13 | 0% | 97 | -38٪ | 121 | 46٪ | 140 | 14٪ | ||
TensorRT | 13 | . | 60 | . | 177 | . | 160 | . |
ml.p3.2xlarge |
||||||||||||
کیس کا استعمال کریں | آرکیٹیکچر | ماڈل کا نام | پیرامیٹرز کی تعداد | فریم ورک | زیادہ سے زیادہ ماڈلز بھری ہوئی ہیں۔ | فرق (%) | لطیسی (ایم ایس) | فرق (%) | تھرو پٹ (qps) | فرق (%) | زیادہ سے زیادہ کنکرنٹ صارفین | فرق (%) |
CV | سی این این | resnet50 |
25M | پی ٹورچ | 49 | -51٪ | 197 | -41٪ | 94 | 18٪ | 160 | -12٪ |
TensorRT | 24 | . | 117 | . | 111 | . | 140 | . | ||||
convnext_base |
88M | پی ٹورچ | 35 | -69٪ | 178 | -23٪ | 89 | 11٪ | 140 | 14٪ | ||
TensorRT | 11 | 137. | 137 | . | 99 | . | 160 | . | ||||
ٹرانسفارمر | vit_large_patch16_224 |
304M | پی ٹورچ | 11 | -18٪ | 186 | -28٪ | 83 | 23٪ | 140 | 29٪ | |
TensorRT | 9 | . | 134 | . | 102 | . | 180 | . | ||||
ینیلپی | bert-base-uncased |
109M | پی ٹورچ | 28 | 29٪ | 77 | -40٪ | 133 | 59٪ | 140 | 43٪ | |
TensorRT | 36 | . | 46 | . | 212 | . | 200 | . | ||||
roberta-large |
335M | پی ٹورچ | 9 | 0% | 108 | -44٪ | 88 | 60٪ | 160 | 0% | ||
TensorRT | 9 | . | 61 | . | 141 | . | 160 | . |
مندرجہ ذیل جدول تمام مثالوں کی اقسام کے نتائج کا خلاصہ کرتا ہے۔ ml.g5.2xlarge مثال بہترین کارکردگی فراہم کرتی ہے، جبکہ ml.p3.2xlarge مثال عام طور پر تینوں میں سب سے مہنگی ہونے کے باوجود کم کارکردگی کا مظاہرہ کرتی ہے۔ g5 اور g4dn مثالیں انفرنس ورک بوجھ کے لیے بہترین قدر کو ظاہر کرتی ہیں۔
کیس کا استعمال کریں | آرکیٹیکچر | ماڈل کا نام | پیرامیٹرز کی تعداد | فریم ورک | مثال کی قسم | زیادہ سے زیادہ ماڈلز بھری ہوئی ہیں۔ | فرق (%) | لطیسی (ایم ایس) | فرق (%) | تھرو پٹ (qps) | فرق (%) | زیادہ سے زیادہ کنکرنٹ صارفین |
CV | سی این این | resnet50 |
25M | پی ٹورچ | ml.g5.2xlarge | 70 | . | 159 | . | 146 | . | 180 |
. | . | . | . | . | ml.p3.2xlarge | 49 | . | 197 | . | 94 | . | 160 |
. | . | . | . | . | ml.g4dn.2xlarge | 46 | . | 164 | . | 120 | . | 180 |
CV | CN | resnet50 |
25M | TensorRT | ml.g5.2xlarge | 34 | -51٪ | 110 | -31٪ | 166 | 14٪ | 200 |
. | . | . | . | . | ml.p3.2xlarge | 24 | -51٪ | 117 | -41٪ | 111 | 18٪ | 200 |
. | . | . | . | . | ml.g4dn.2xlarge | 23 | -50٪ | 111 | -32٪ | 142 | 18٪ | 180 |
ینیلپی | ٹرانسفارمر | bert-base-uncased |
109M | پیٹورچ۔ | ml.g5.2xlarge | 39 | . | 65 | . | 183 | . | 180 |
. | . | . | . | . | ml.p3.2xlarge | 28 | . | 77 | . | 133 | . | 140 |
. | . | . | . | . | ml.g4dn.2xlarge | 26 | . | 70 | . | 105 | . | 140 |
ینیلپی | ٹرانسفارمر | bert-base-uncased |
109M | TensorRT | ml.g5.2xlarge | 50 | 28٪ | 46 | -29٪ | 253 | 38٪ | 200 |
. | . | . | . | . | ml.p3.2xlarge | 36 | 29٪ | 46 | -40٪ | 212 | 59٪ | 200 |
. | . | . | . | . | ml.g4dn.2xlarge | 42 | 62٪ | 43 | -39٪ | 254 | 142٪ | 180 |
صاف کرو
اپنا بوجھ ٹیسٹ مکمل کرنے کے بعد، اضافی چارجز سے بچنے کے لیے پیدا کردہ وسائل کو صاف کریں۔ اہم وسائل ایمیزون S3 میں سیج میکر اینڈ پوائنٹس اور ماڈل آرٹفیکٹ فائلیں ہیں۔ آپ کے لیے آسان بنانے کے لیے، نوٹ بک فائلوں میں درج ذیل کلین اپ کوڈ ہوتا ہے تاکہ آپ انہیں حذف کر سکیں:
نتیجہ
اس پوسٹ میں، ہم نے GPU کے ساتھ SageMaker ملٹی ماڈل اینڈ پوائنٹس پر چلنے والے مختلف ڈیپ نیورل نیٹ ورک ماڈلز کے لیے اپنے ٹیسٹ کے نتائج اور تجزیے کا اشتراک کیا۔ ہم نے جو نتائج اور بصیرتیں شیئر کی ہیں انہیں مختلف میٹرکس اور مثال کی اقسام میں کارکردگی کا ایک معقول کراس سیکشن فراہم کرنا چاہیے۔ اس عمل میں، ہم نے GPU کے ساتھ SageMaker MMEs کے لیے بینچ مارک ٹیسٹنگ چلانے کے لیے اپنا تجویز کردہ طریقہ بھی متعارف کرایا۔ ہمارے فراہم کردہ ٹولز اور نمونہ کوڈ آپ کو اپنے بینچ مارک ٹیسٹنگ کو جلدی شروع کرنے اور تیز رفتار کمپیوٹ ہارڈویئر پر سیکڑوں DNN ماڈلز کی لاگت سے مؤثر طریقے سے میزبانی کرنے کے بارے میں مزید باخبر فیصلہ کرنے میں مدد کر سکتے ہیں۔ GPU کے لیے MME سپورٹ کے ساتھ اپنے ماڈلز کی بینچ مارکنگ شروع کرنے کے لیے، رجوع کریں۔ تعاون یافتہ الگورتھم، فریم ورک، اور مثالیں۔ اور GitHub repo اضافی مثالوں اور دستاویزات کے لیے۔
مصنفین کے بارے میں
جیمز وو AWS میں ایک سینئر AI/ML ماہر حل آرکیٹیکٹ ہے۔ AI/ML سلوشنز کو ڈیزائن اور بنانے میں صارفین کی مدد کرنا۔ جیمز کا کام ایم ایل کے استعمال کے کیسز کی ایک وسیع رینج پر محیط ہے، جس میں کمپیوٹر ویژن، گہری سیکھنے، اور پورے انٹرپرائز میں ایم ایل کی پیمائش میں بنیادی دلچسپی ہے۔ AWS میں شامل ہونے سے پہلے، جیمز 10 سال سے زائد عرصے تک ایک معمار، ڈویلپر، اور ٹیکنالوجی لیڈر تھے، جس میں 6 سال انجینئرنگ اور 4 سال مارکیٹنگ اور اشتہاری صنعتوں میں شامل تھے۔
وکرم ایلنگو ورجینیا USA میں مقیم Amazon Web Services میں AI/ML ماہر حل آرکیٹیکٹ ہے۔ وکرم مالیاتی اور انشورنس انڈسٹری کے صارفین کو ڈیزائن، سوچی سمجھی قیادت کے ساتھ مشین لرننگ ایپلی کیشنز کو بڑے پیمانے پر بنانے اور تعینات کرنے میں مدد کرتا ہے۔ وہ فی الحال پورے انٹرپرائز میں قدرتی لینگویج پروسیسنگ، ذمہ دار AI، انفرنس آپٹیمائزیشن اور اسکیلنگ ایم ایل پر مرکوز ہے۔ اپنے فارغ وقت میں، وہ اپنے خاندان کے ساتھ سفر، پیدل سفر، کھانا پکانے اور کیمپنگ سے لطف اندوز ہوتا ہے۔
سائمن زمرین ایک AI/ML سلوشنز آرکیٹیکٹ ہے جس کی بنیادی توجہ صارفین کو ان کے ڈیٹا اثاثوں سے قیمت نکالنے میں مدد کرنا ہے۔ اپنے فارغ وقت میں، سائمن کو فیملی کے ساتھ وقت گزارنے، سائنس فائی پڑھنے، اور مختلف DIY ہاؤس پروجیکٹس پر کام کرنا پسند ہے۔
سوربھ تریکنڈے Amazon SageMaker Inference کے لیے ایک سینئر پروڈکٹ مینیجر ہے۔ وہ صارفین کے ساتھ کام کرنے کا شوق رکھتا ہے اور مشین لرننگ کو جمہوری بنانے کے مقصد سے حوصلہ افزائی کرتا ہے۔ وہ پیچیدہ ایم ایل ایپلی کیشنز، ملٹی ٹیننٹ ایم ایل ماڈلز، لاگت کی اصلاح، اور ڈیپ لرننگ ماڈلز کی تعیناتی کو مزید قابل رسائی بنانے سے متعلق بنیادی چیلنجوں پر توجہ مرکوز کرتا ہے۔ اپنے فارغ وقت میں، سوربھ کو پیدل سفر کرنا، اختراعی ٹیکنالوجیز کے بارے میں سیکھنا، TechCrunch کی پیروی کرنا اور اپنے خاندان کے ساتھ وقت گزارنا پسند ہے۔
- SEO سے چلنے والا مواد اور PR کی تقسیم۔ آج ہی بڑھا دیں۔
- پلیٹو بلاک چین۔ Web3 Metaverse Intelligence. علم میں اضافہ۔ یہاں تک رسائی حاصل کریں۔
- ماخذ: https://aws.amazon.com/blogs/machine-learning/achieve-high-performance-at-scale-for-model-serving-using-amazon-sagemaker-multi-model-endpoints-with-gpu/
- 10
- 100
- 11
- 2022
- 7
- a
- کی صلاحیت
- ہمارے بارے میں
- تیز
- قابل رسائی
- اس کے مطابق
- درست طریقے سے
- حاصل
- کے پار
- شامل کیا
- اس کے علاوہ
- ایڈیشنل
- اس کے علاوہ
- اپنایا
- اشتہار.
- کے بعد
- AI
- AI / ML
- یلگوردمز
- تمام
- کی اجازت دیتا ہے
- اگرچہ
- ایمیزون
- ایمیزون سیج میکر
- ایمیزون ویب سروسز
- رقم
- تجزیہ
- تجزیے
- اور
- ایک اور
- ایپلی کیشنز
- نقطہ نظر
- تقریبا
- فن تعمیر
- اثاثے
- آٹو
- خود کار طریقے سے
- اوسط
- AWS
- بار
- کی بنیاد پر
- کیونکہ
- اس سے پہلے
- پیچھے
- کیا جا رہا ہے
- یقین ہے کہ
- معیار
- بینچ مارک
- بینچ مارکنگ
- فائدہ
- BEST
- سے پرے
- بڑا
- اربوں
- بورڈ
- بڑھانے کے
- پایان
- بفر
- تعمیر
- بوجھ
- کیس
- مقدمات
- چیلنجوں
- خصوصیات
- بوجھ
- چارٹ
- چارٹس
- واضح
- کلائنٹ
- سی این این
- کوڈ
- کے مجموعے
- مقابلے میں
- موازنہ
- موازنہ
- مکمل
- پیچیدہ
- پیچیدگی
- پر مشتمل
- کمپیوٹنگ
- کمپیوٹر
- کمپیوٹر ویژن
- اختتام
- سمورتی
- ترتیب
- متواتر
- بسم
- بسم
- کھپت
- کنٹینر
- سیاق و سباق
- جاری
- کور
- قیمت
- سرمایہ کاری مؤثر
- کا احاطہ کرتا ہے
- پار
- موجودہ
- اس وقت
- اپنی مرضی کے
- گاہکوں
- اعداد و شمار
- ڈیٹا پوائنٹس
- فیصلہ
- گہری
- گہری سیکھنے
- گہرے
- غلطی
- نجات
- ڈیمانڈ
- جمہوری بنانا
- مظاہرہ
- منحصر ہے
- تعیناتی
- تعینات
- تعیناتی
- تعینات
- ڈیزائن
- مطلوبہ
- کے باوجود
- تفصیل
- تفصیلات
- اس بات کا تعین
- کا تعین
- ڈیولپر
- آلہ
- مختلف
- ڈی آئی
- دستاویزات
- ڈاؤن لوڈ، اتارنا
- ڈرامائی طور پر
- متحرک
- ہر ایک
- اس سے قبل
- آسان
- یا تو
- اختتام پوائنٹ
- انجنیئرنگ
- انٹرپرائز
- پوری
- خرابی
- بھی
- مثال کے طور پر
- مثال کے طور پر
- حد سے تجاوز
- توقع
- مہنگی
- تجربات
- توسیع
- نکالنے
- چہرہ
- عوامل
- ناکام
- خاندان
- فیشن
- ممکن
- اعداد و شمار
- فائلوں
- مالی
- مل
- پہلا
- توجہ مرکوز
- توجہ مرکوز
- توجہ مرکوز
- کے بعد
- فریم ورک
- فریم ورک
- سے
- مکمل
- مزید
- عام طور پر
- پیدا
- پیدا ہوتا ہے
- پیداواری
- پیداواری AI۔
- حاصل
- فراہم کرتا ہے
- مقصد
- جا
- GPU
- GPUs
- گرافکس
- بڑھتے ہوئے
- رہنمائی
- ہاتھ
- ہارڈ ویئر
- مدد
- مدد
- مدد کرتا ہے
- ہائی
- اعلی
- میزبان
- میزبانی کی
- ہوسٹنگ
- ہاؤس
- کس طرح
- کیسے
- تاہم
- HTML
- HTTPS
- حب
- سینکڑوں
- مثالی
- تصویر
- اثر
- متاثر
- بہتر
- بہتری
- in
- شامل
- سمیت
- اضافہ
- اضافہ
- اضافہ
- اضافہ
- انفرادی
- صنعتوں
- صنعت
- اثر و رسوخ
- مطلع
- انفراسٹرکچر
- ابتدائی
- جدید
- جدید ٹیکنالوجیز
- ان پٹ
- بصیرت
- مثال کے طور پر
- انشورنس
- ارادے
- دلچسپی
- متعارف
- تعارف
- پکارتے ہیں۔
- IT
- شمولیت
- کلیدی
- زبان
- بڑے
- بڑے
- سب سے بڑا
- تاخیر
- رہنما
- قیادت
- سیکھنے
- چھوڑ کر
- لمبائی
- حدود
- لائن
- لسٹ
- فہرستیں
- لوڈ
- لوڈ کر رہا ہے
- اب
- دیکھو
- لو
- مشین
- مشین لرننگ
- مین
- بنا
- بنانا
- مینیجر
- انتظام کرتا ہے
- مینیجنگ
- بہت سے
- نشان
- مارکیٹنگ
- مارکیٹنگ اور اشتہار بازی
- میکس
- زیادہ سے زیادہ
- زیادہ سے زیادہ
- پیمائش
- اقدامات
- یاد داشت
- ذکر کیا
- طریقوں
- پیمائش کا معیار
- معمولی
- مخلوط
- ML
- ماڈل
- ماڈل
- زیادہ
- سب سے زیادہ
- سب سے زیادہ مقبول
- حوصلہ افزائی
- MS
- ایک سے زیادہ
- نام
- قدرتی
- قدرتی زبان عملیات
- ضرورت ہے
- منفی
- منفی طور پر
- نیٹ ورک
- عصبی نیٹ ورک
- نئی
- ویزا
- نوٹ بک
- نومبر
- تعداد
- تعداد
- ایک
- کام
- آپریشنل
- اصلاح کے
- زیادہ سے زیادہ
- اختیار
- اصل
- دیگر
- باہر
- مجموعی طور پر
- خود
- امن
- پیرامیٹر
- پیرامیٹرز
- جذباتی
- پاٹرن
- پیٹرن
- فیصد
- انجام دیں
- کارکردگی
- کارکردگی کا مظاہرہ
- مدت
- لینے
- پلاٹا
- افلاطون ڈیٹا انٹیلی جنس
- پلیٹو ڈیٹا
- پوائنٹ
- پوائنٹس
- مقبول
- ممکن
- پوسٹ
- پہلے
- پرائمری
- پہلے
- عمل
- پروسیسنگ
- مصنوعات
- پروڈکٹ مینیجر
- منصوبوں
- مناسب
- فراہم
- فراہم
- فراہم کرتا ہے
- ڈال
- pytorch
- مقدار
- ریمپ
- ریمپنگ
- بے ترتیب
- رینج
- تیزی سے
- شرح
- تک پہنچنے
- پہنچ گئی
- پہنچنا
- پڑھنا
- مناسب
- وجوہات
- سفارش
- سفارش کی
- درج
- کو کم
- کم
- کی عکاسی
- جھلکتی ہے
- جہاں تک
- متعلقہ
- وشوسنییتا
- یاد
- دوبارہ
- بار بار
- درخواست
- درخواستوں
- ضروریات
- کی ضرورت ہے
- وسائل
- جواب
- ذمہ دار
- نتیجے
- نتائج کی نمائش
- رن
- چل رہا ہے
- sagemaker
- سیج میکر کا اندازہ
- اسی
- توسیع پذیر
- پیمانے
- سکیلنگ
- سائنس FI
- دوسری
- سیکنڈ
- سیکشن
- سینئر
- تسلسل
- سروسز
- خدمت
- مقرر
- سیٹ اپ
- کئی
- شکل
- سائز
- سیکنڈ اور
- مشترکہ
- اشتراک
- ہونا چاہئے
- دکھائیں
- دکھایا گیا
- شوز
- کی طرف
- اشارہ
- نمایاں طور پر
- اسی طرح
- سائمن
- سادہ
- ایک
- سائز
- سائز
- چھوٹے
- چھوٹے
- حل
- حل
- کچھ
- خلا
- ماہر
- مخصوص
- خرچ کرنا۔
- استحکام
- شروع
- ٹھہرے رہے
- مستحکم
- مرحلہ
- مراحل
- ابھی تک
- ذخیرہ
- حکمت عملیوں
- مضبوط
- کامیاب
- اس طرح
- مختصر
- خلاصہ
- اعلی
- حمایت
- تائید
- کی حمایت کرتا ہے
- ٹیبل
- لے لو
- لینے
- TechCrunch
- ٹیکنالوجی
- ٹیکنالوجی
- سانچے
- سانچے
- شرائط
- ٹیسٹ
- ٹیسٹنگ
- ۔
- ان
- لہذا
- سوچا
- سوچا قیادت۔
- تین
- حد
- کے ذریعے
- تھرو پٹ
- وقت
- کرنے کے لئے
- مل کر
- اوزار
- سب سے اوپر
- کل
- ٹریفک
- سفر
- مقدمے کی سماعت
- دوپہر
- اقسام
- عام طور پر
- امریکا
- استعمال کی شرائط
- استعمال کیس
- رکن کا
- صارفین
- قیمت
- مختلف
- ورجینیا
- نقطہ نظر
- وارینٹ
- ویب
- ویب خدمات
- کیا
- چاہے
- جس
- جبکہ
- پوری
- وسیع
- وسیع رینج
- گے
- کے اندر
- بغیر
- کام
- کارکنوں
- کام کر
- گا
- سال
- پیداوار
- تم
- اور
- زیفیرنیٹ