השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה פי שלושה לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch

ענן מחשוב אלסטי של אמזון (אמזון EC2) מקרים של G5 הם המקרים הראשונים והיחידים בענן הכוללים NVIDIA A10G Tensor Core GPUs, שבהם אתה יכול להשתמש עבור מגוון רחב של מקרי שימוש עתירי גרפיקה ולמידת מכונה (ML). עם מופעי G5, לקוחות ML מקבלים ביצועים גבוהים ותשתית חסכונית לאימון ופריסה של מודלים גדולים ומתוחכמים יותר עבור עיבוד שפה טבעית (NLP), ראייה ממוחשבת (CV) ומקרי שימוש במנועי ממליצים.

מטרת הפוסט הזה היא להציג את יתרונות הביצועים של מופעי G5 עבור עומסי עבודה בקנה מידה גדול של מסקנות ML. אנו עושים זאת על ידי השוואת מחיר-ביצועים (נמדד כ-$ למיליון מסקנות) עבור דגמי NLP ו-CV עם מופעי G4dn. אנו מתחילים בתיאור גישת ה-benchmarking שלנו ולאחר מכן מציגים עקומות תפוקה לעומת חביון על פני גדלי אצווה ודיוק סוגי נתונים. בהשוואה למופעי G4dn, אנו מוצאים שמופעי G5 מספקים עלות נמוכה יותר למיליון מסקנות הן עבור דיוק מלא והן עבור מצבי דיוק מעורבים עבור דגמי NLP ו- CV תוך השגת תפוקה גבוהה יותר והשהייה נמוכה יותר.

גישת בנצ'מרקינג

כדי לפתח מחקר מחיר-ביצועים בין G5 ל-G4dn, עלינו למדוד תפוקה, חביון ועלות למיליון מסקנות כפונקציה של גודל האצווה. אנו גם חוקרים את ההשפעה של דיוק מלא לעומת דיוק מעורב. גם גרף המודל וגם התשומות נטענים ל-CUDA לפני ההסקה.

כפי שמוצג בתרשים הארכיטקטורה הבא, אנו יוצרים תחילה תמונות מיכל בסיס בהתאמה עם CUDA עבור המופע הבסיסי של EC2 (G4dn, G5). כדי לבנות את תמונות מיכל הבסיס, אנחנו מתחילים עם מיכלי למידה עמוקה של AWS, המשתמשות בתמונות Docker ארוזות מראש כדי לפרוס סביבות למידה עמוקות בתוך דקות. התמונות מכילות את הספריות והכלים של PyTorch ללמידה עמוקה הנדרשת. אתה יכול להוסיף ספריות וכלים משלך על גבי תמונות אלה לדרגה גבוהה יותר של שליטה על ניטור, תאימות ועיבוד נתונים.

לאחר מכן אנו בונים תמונת מיכל ספציפית לדגם המכילה את תצורת המודל, מעקב אחר המודל והקוד הקשור להרצת מעברים קדימה. כל תמונות המכולה נטענות לתוך אמזון ECR כדי לאפשר קנה מידה אופקי של דגמים אלה עבור תצורות מודל שונות. אנו משתמשים שירות אחסון פשוט של אמזון (Amazon S3) כמאגר נתונים נפוץ להורדת תצורה והעלאת תוצאות ביצועים לסיכום. אתה יכול להשתמש בארכיטקטורה זו כדי ליצור מחדש ולשחזר את תוצאות ההשוואה ולבצע ייעוד מחדש כדי לסמן דגמים שונים (כגון דגמי Hugging Face, דגמי PyTorch, דגמים מותאמים אישית אחרים) על פני סוגי מופעי EC2 (CPU, GPU, Inf1).

עם הגדרת הניסוי הזה, המטרה שלנו היא ללמוד את זמן ההשהיה כפונקציה של התפוקה. עקומה זו חשובה לתכנון יישום כדי להגיע לתשתית מיטבית לעלות עבור יישום היעד. כדי להשיג זאת, אנו מדמים עומסים שונים על ידי עמידה בתור שאילתות ממספר שרשורים ולאחר מכן מדידת זמן ההליכה הלוך ושוב עבור כל בקשה שהושלמה. התפוקה נמדדת על סמך מספר הבקשות שהושלמו ליחידת זמן שעון. יתר על כן, אתה יכול לשנות את גדלי האצווה ומשתנים אחרים כמו אורך רצף ודיוק מלא לעומת חצי דיוק כדי לטאטא באופן מקיף את מרחב העיצוב כדי להגיע למדדי ביצועים אינדיקטיביים. במחקר שלנו, באמצעות סריקה פרמטרית של גודל אצווה ושאילתות מלקוחות מרובי הליכי, נקבעת עקומת התפוקה לעומת ההשהיה. ניתן לקבץ כל בקשה כדי להבטיח ניצול מלא של המאיץ, במיוחד עבור בקשות קטנות שאולי לא ינצלו את צומת המחשוב במלואו. אתה יכול גם לאמץ הגדרה זו כדי לזהות את גודל האצווה בצד הלקוח לביצועים מיטביים.

לסיכום, אנו יכולים לייצג בעיה זו באופן מתמטי כ: (תפוקה, חביון) = פונקציה של (גודל אצווה, מספר חוטים, דיוק).

פירוש הדבר, בהתחשב בשטח הממצה, מספר הניסויים יכול להיות גדול. למרבה המזל, כל ניסוי יכול להתבצע באופן עצמאי. אנו ממליצים להשתמש אצווה AWS לבצע בנצ'מרק בקנה מידה אופקי זה בזמן דחוס ללא עלייה בעלות ההשוואה בהשוואה לגישה ליניארית לבדיקה. הקוד לשכפול התוצאות קיים ב- מאגר GitHub מוכן ל-AWS Re:Invent 2021. המאגר מקיף לביצוע השוואות על מאיצים שונים. אתה יכול להתייחס להיבט ה-GPU של הקוד כדי לבנות את המיכל (Dockerfile-gpu) ולאחר מכן עיין בקוד שבפנים Container-Root לדוגמאות ספציפיות עבור BERT ו- ResNet50.

השתמשנו בגישה הקודמת לפיתוח מחקרי ביצועים על פני שני סוגי מודלים: Bert-base-uncased (110 מיליון פרמטרים, NLP) ו- ResNet50 (25.6 מיליון פרמטרים, CV). הטבלה הבאה מסכמת את פרטי הדגם.

סוג דגם מספר סימוכין פרטים
NLP twmkn9/bert-base-uncased-squad2 110 מיליון פרמטרים אורך רצף = 128
CV 50. ResNetXNUMX 25.6 מיליון פרמטרים

בנוסף, כדי למדוד בין סוגי נתונים (מלא, חצי דיוק), אנו משתמשים torch.cuda.amp, המספק שיטות נוחות להתמודדות עם דיוק מעורב כאשר חלק מהפעולות משתמשות ב torch.float32 (צף) סוג נתונים ושימוש בפעולות אחרות torch.float16 (חֲצִי). לדוגמה, אופרטורים כמו שכבות ליניאריות ופיתולים מהירים הרבה יותר עם float16, בעוד שאחרים כמו הפחתות דורשים לעתים קרובות את הטווח הדינמי של float32. דיוק מעורב אוטומטי מנסה להתאים לכל מפעיל את סוג הנתונים המתאים לו כדי לייעל את זמן הריצה וטביעת הזיכרון של הרשת.

תוצאות בנצ'מרקינג

לשם השוואה הוגנת, בחרנו G4dn.4xlarge ו G5.4xlarge מופעים עם תכונות דומות, כפי שמופיע בטבלה הבאה.

מופע GPUs זיכרון GPU (GiB) מעבדי vCPU זיכרון (GiB) אחסון מופעים (GB) ביצועי רשת (Gbps) רוחב פס של EBS (Gbps) תמחור לינוקס לפי דרישה (us-east-1)
G5.4xlarge 1 24 16 64 1x 600 NVMe SSD עד 25 8 $ 1.204 / שעה
G4dn.4xlarge 1 16 16 64 1x 225 NVMe SSD עד 25 4.75 $ 1.624 / שעה

בסעיפים הבאים, אנו משווים ביצועי מסקנות ML של דגמי BERT ו-RESNET50 עם גישת גריד sweep עבור גדלי אצווה ספציפיים (32, 16, 8, 4, 1) ודיוק סוג נתונים (דיוק מלא וחצי) כדי להגיע לעקומת התפוקה לעומת השהייה. בנוסף, אנו חוקרים את ההשפעה של תפוקה לעומת גודל אצווה עבור דיוק מלא וחצי כאחד. לבסוף, אנו מודדים עלות למיליון מסקנות כפונקציה של גודל אצווה. התוצאות המאוחדות על פני הניסויים הללו מתמצות בהמשך פוסט זה.

תפוקה לעומת חביון

הנתונים הבאים משווים מופעי G4dn ו-G5 עבור עומסי עבודה של NLP ו-CV ברמת דיוק מלאה וחצי. בהשוואה למופעי G4dn, מופע ה-G5 מספק תפוקה של פי חמישה גבוה יותר (דיוק מלא) וכפי 2.5 גבוה יותר (חצי דיוק) עבור דגם בסיס BERT, וכפי 2-2.5 גבוה יותר עבור דגם ResNet50. בסך הכל, G5 היא בחירה מועדפת, עם גדלי אצווה הולכים וגדלים עבור שני הדגמים עבור דיוק מלא ומעורב גם מנקודת מבט של ביצועים.

הגרפים הבאים משווים תפוקה והשהיית P95 בדייקנות מלאה וחצי עבור BERT.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי. השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

הגרפים הבאים משווים תפוקה והשהיית P95 בדיוק מלא וחצי עבור ResNet50.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי. השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

תפוקה ואחזור לעומת גודל אצווה

הגרפים הבאים מציגים את התפוקה כפונקציה של גודל האצווה. בגדלים נמוכים של אצווה, המאיץ אינו מתפקד במלוא הקיבולת וככל שגודל האצווה גדל, התפוקה גדלה במחיר השהייה. עקומת התפוקה אסימפטוטה לערך מרבי שהוא פונקציה של ביצועי המאיץ. לעקומה שתי תכונות ברורות: קטע עולה וקטע אסימפטוטי שטוח. עבור דגם נתון, מאיץ ביצועים (G5) מסוגל למתוח את הקטע העולה לגדלי אצווה גבוהים יותר מ-G4dn ולאסימפטוטה בתפוקה גבוהה יותר. כמו כן, קיים פשרה ליניארית בין חביון לגודל אצווה. לכן, אם האפליקציה קשורה בחביון, נוכל להשתמש בהשהיה P95 לעומת גודל אצווה כדי לקבוע את גודל האצווה האופטימלי. עם זאת, אם המטרה היא למקסם את התפוקה בזמן ההשהיה הנמוכה ביותר, עדיף לבחור את גודל האצווה המתאים ל"ברך" בין הסעיפים העולה והאסימפטוטי, מכיוון שכל גידול נוסף בגודל האצווה יביא לאותה תפוקה עם חביון גרוע יותר. כדי להשיג את היחס הטוב ביותר בין מחיר לביצועים, תוך מיקוד לתפוקה גבוהה יותר בזמן האחזור הנמוך ביותר, עדיף לך לשנות את קנה המידה האופטימלי הזה באמצעות מספר שרתי הסקה במקום רק להגדיל את גודל האצווה.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

עלות לעומת גודל אצווה

בחלק זה, אנו מציגים את התוצאות ההשוואתיות של עלויות היסק ($ למיליון מסקנות) לעומת גודל האצווה. מהאיור הבא, אנו יכולים לראות בבירור שהעלות (נמדדת כ-$ למיליון מסקנות) נמוכה יותר באופן עקבי עם G5 לעומת G4dn שניהם (דיוק מלא וחצי).

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי. השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

הטבלה הבאה מסכמת השוואות תפוקה, חביון ועלות ($ למיליון מסקנות) עבור דגמי BERT ו-RESNET50 בשני מצבי הדיוק עבור גדלי אצווה ספציפיים. למרות עלות גבוהה יותר למופע, G5 מתגבר באופן עקבי על G4dn בכל ההיבטים של זמן השהייה, תפוקה ועלות ($ למיליון הסקה), עבור כל גדלי האצווה. שילוב המדדים השונים לכדי עלות ($ למיליון מסקנות), דגם BERT (גודל אצווה מלא, דיוק מלא) עם G32 הוא פי 5 נוח יותר מ-G3.7dn, ועם מודל ResNet4 (גודל אצווה של 50, דיוק מלא), הוא נוח פי 32 מ-G1.6dn.

מספר סימוכין גודל אצווה דיוק

התפוקה

(גודל אצווה X בקשות/שנייה)

זמן אחזור (אלפיות השנייה)

$/מיליון

מסקנות (לפי דרישה)

עלות - תועלת

(G5 מעל G4dn)

. . . G5 G4dn G5 G4dn G5 G4dn
ברט-בסיס-לא מארז 32 מלא 723 154 44 208 $0.6 $2.2 3.7X
מעורב 870 410 37 79 $0.5 $0.8 1.6X
16 מלא 651 158 25 102 $0.7 $2.1 3.0X
מעורב 762 376 21 43 $0.6 $0.9 1.5X
8 מלא 642 142 13 57 $0.7 $2.3 3.3X
מעורב 681 350 12 23 $0.7 $1.0 1.4X
. 1 מלא 160 116 6 9 $2.8 $2.9 1.0X
מעורב 137 102 7 10 $3.3 $3.3 1.0X
50. ResNetXNUMX 32 מלא 941 397 34 82 $0.5 $0.8 1.6X
מעורב 1533 851 21 38 $0.3 $0.4 1.3X
16 מלא 888 384 18 42 $0.5 $0.9 1.8X
מעורב 1474 819 11 20 $0.3 $0.4 1.3X
8 מלא 805 340 10 24 $0.6 $1.0 1.7X
מעורב 1419 772 6 10 $0.3 $0.4 1.3X
. 1 מלא 202 164 5 6 $2.2 $2 0.9X
מעורב 196 180 5 6 $2.3 $1.9 0.8X

מדדי מסקנות נוספים

בנוסף לתוצאות BERT בסיס ו- ResNet50 בסעיפים הקודמים, אנו מציגים תוצאות השוואת ביצועים נוספות עבור דגמי NLP ו-CV גדולים אחרים בשימוש ב- PyTorch. יתרון הביצועים של G5 על פני G4dn הוצג עבור דגמי BERT Large במגוון דיוק, ודגמי Yolo-v5 לגדלים שונים. לקוד לשכפול המדד, עיין ב דוגמאות ללמידה עמוקה של NVIDIA עבור ליבות טנזור. תוצאות אלו מראות את היתרון של שימוש ב-G5 על פני G4dn עבור מגוון רחב של משימות מסקנות המשתרעות על סוגי מודלים שונים.

מספר סימוכין דיוק גודל אצווה אורך רצף תפוקה (נשלח/שנייה) תפוקה: G4dn Speedup מעל G4dn
BERT-גדול FP16 1 128 93.5 40.31 2.3
BERT-גדול FP16 4 128 264.2 87.4 3.0
BERT-גדול FP16 8 128 392.1 107.5 3.6
BERT-גדול FP32 1 128 68.4 22.67 3.0
BERT-גדול 4 128 118.5 32.21 3.7
BERT-גדול 8 128 132.4 34.67 3.8
מספר סימוכין GFLOPS מספר פרמטרים עיבוד מקדים (ms) מסקנות (ms) הסקה (לא דיכוי מקסימלי) (NMS/תמונה)
YOLOv5s 16.5 7.2 מ"ר 0.2 3.6 4.5
YOLOv5m 49.1 21 מ"ר 0.2 6.5 4.5
YOLOv5l 109.3 46 מ"ר 0.2 9.1 3.5
YOLOv5x 205.9 86 מ"ר 0.2 14.4 1.3

סיכום

בפוסט זה, הראינו כי להסיק עם דגמי NLP ו- CV PyTorch גדולים, מופעי EC2 G5 הם בחירה טובה יותר בהשוואה למופעי G4dn. למרות שהעלות השעתית לפי דרישה עבור מופעי G5 גבוהה יותר ממופעי G4dn, הביצועים הגבוהים יותר יכולים להשיג פי 2-5 מהתפוקה בכל דיוק עבור דגמי NLP ו-CV, מה שהופך את העלות למיליון מסקנות לטובה פי 1.5-3.5 ממופעי G4dn. אפילו עבור יישומים הקשורים להשהיה, G5 טוב פי 2.5-5 מ-G4dn עבור דגמי NLP ו-CV.

לסיכום, מופעי AWS G5 הם בחירה מצוינת לצרכי ההסקה שלך הן מנקודת מבט של ביצועים והן מבחינת עלות לכל מסקנות. האוניברסליות של מסגרת CUDA וקנה המידה והעומק של מאגר המופעים של G5 ב-AWS מספקים לך יכולת ייחודית לבצע הסקה בקנה מידה.


על המחברים

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.אנקור סריבסטאבה הוא אדריכל פתרונות Sr. בצוות ML Frameworks. הוא מתמקד בסיוע ללקוחות עם הכשרה מבוזרת בניהול עצמי והסקת מסקנות בקנה מידה על AWS. הניסיון שלו כולל תחזוקה חיזוי תעשייתי, תאומים דיגיטליים, אופטימיזציה של עיצוב הסתברותי והשלים את לימודי הדוקטורט שלו מהנדסת מכונות באוניברסיטת רייס ומחקר פוסט-דוקטורט מהמכון הטכנולוגי של מסצ'וסטס.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.סונדאר רנגנתן הוא ראש הפיתוח העסקי, ML Frameworks בצוות Amazon EC2. הוא מתמקד בעומסי עבודה בקנה מידה גדול של ML בשירותי AWS כמו Amazon EKS, Amazon ECS, Elastic Fabric Adapter, AWS Batch ו-Amazon SageMaker. הניסיון שלו כולל תפקידי מנהיגות בניהול מוצר ופיתוח מוצרים ב-NetApp, Micron Technology, Qualcomm ו-Mentor Graphics.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.מהדבן באלאסוברמניאם הוא ארכיטקט פתרונות עיקרי למחשוב אוטונומי עם כמעט 20 שנות ניסיון בתחום הלמידה העמוקה המושקעת בפיזיקה, בנייה ופריסה של תאומים דיגיטליים למערכות תעשייתיות בקנה מידה. Mahadevan השיג את הדוקטורט שלו בהנדסת מכונות מהמכון הטכנולוגי של מסצ'וסטס ולזכותו למעלה מ-25 פטנטים ופרסומים.

השג תפוקת מסקנות ML גבוהה פי 2 בעלות נמוכה יותר לכל הסקה עם מופעי Amazon EC5 GXNUMX עבור דגמי NLP ו- CV PyTorch PlatoBlockchain Data Intelligence. חיפוש אנכי. איי. אמר רגב הוא ארכיטקט פתרונות ראשי עבור פלטפורמות מואצות של EC2 עבור AWS, המוקדש לעזור ללקוחות להפעיל עומסי עבודה חישוביים בקנה מידה. בזמנו הפנוי הוא אוהב לטייל ולמצוא דרכים חדשות לשילוב טכנולוגיה בחיי היומיום.

בול זמן:

עוד מ למידת מכונות AWS