✕ סגור 
צור קשר
תודה על ההתעניינות .

Thank you! Your submission has been received!

Oops! Something went wrong while submitting the form

כיצד להריץ HPC בענן?

אייל אסטרין
|
Sep 29, 2020
alt="blogs"
alt="blogs"
title="Google"

 

האם ניתן להריץ HPC בסביבת ענן? במה שונה HPC cluster בסביבת ה-on premise מסביבת הענן ומה החלופות הנפוצות להרצת HPC בסביבת ענן?

 

הקדמה

לפני שנדון ב-HPC (High Performance Computing) בסביבת ענן, מה זה בכלל אומר HPC?

"המונח High Performance Computing מתייחס לאוסף של משאבי מחשוב בעלי יכולת חישוב גבוהה, ביחס להרצת מחשב בודד, במטרה לפתור בעיות מורכבות בעולם המחקר, ההנדסה או בעולם העסקי". (https://www.usgs.gov/core-science-systems/sas/arc/about/what-high-performance-computing)

 

במונחים טכניים – הכוונה ל-Cluster של שרתים הבנוי ממספר רב של מעבדים (פיזיים או וירטואליים), כמויות גדולות של זיכרון RAM, מערך אחסון מקבילי מהיר במיוחד (לצורכי קריאה/כתיבה) וחיבור תקשורתי מהיר בין המחשבים החברים ב-Cluster.

 

HPC שימושי לתרחישים בהם קיים צורך במשאבי מחשוב רבים, מעיבוד תמונה או וידאו (בתהליכי Batch), ועד היכולת לחזות את מזג האוויר (דבר המחייב חיבור מהיר בין רכיבי ה-Cluster).

 

עולם ה-HPC מתחלק לשתי קטגוריות:

· Loosely coupled – בתרחיש זה נדרשים משאבי מחשוב רבים, אך כל משימה רצה בנפרד מיתר המשימות, אין צורך בחיבור מהיר בין רכיבי המערכת ולא קיימת תלות בין הרכיבים על-מנת לסיים את המשימה בשלמותה.

דוגמאות לתרחיש זה: עיבוד תמונה, ריצוף גנטי ועוד.

· Tightly coupled – בתרחיש זה נדרש חיבור מהיר בין רכיבי ה-cluster (דוגמת שיתוף משאבי זיכרון ומעבד) וכל רכיב ב-cluster תלוי ביתר הרכיבים לצורך השלמת המשימה כולה.

· דוגמאות לתרחיש זה: חישוב דינמיקת נוזל, ניסיון לחזות מזג אוויר ועוד.

 

שיקולי עלויות

התקנת HPC Cluster בסביבת ה-on premise מחייבת השקעה גדולה בחומרה (מספר רב של שרתים המחוברים ביניהם ב-Cluster, עם כמות גדולה של מעבדי CPU ומעבדי GPU, עם מערך אחסון מקבילי מהיר ולעיתים עם חיבור תקשורתי מבוסס טכנולוגיית RDMA בין רכיבי ה-Cluster), השקעה בכוח אדם (בעל ידע מתאים לתמוך בפלטפורמה), דרישה לחיבור חשמל בעל הספק גבוה ועוד.

 

גם להתקנת HPC Cluster בענן יש את החסרונות שלו בכל הנוגע לעלויות. עלויות שרתים עם כמות גדולה של מעבדי CPU ומעבדי GPU, או כמות גבוהה של זיכרון RAM עשויה להוות השקעה יקרה, ביחס לרכישת החומרה לסביבת ה-on premise, בה ניתן להשתמש בהשקעה שנרכשה 24x7 שעות לתקופה של בין 3 ל-5 שנים (של אחריות היצרן).

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

 

הפתרון להרצת HPC clusters בסביבת ענן, ועדיין להיות מסוגלים להנאות מיתרונות של משאבי מחשוב (כמעט) בלתי מוגבלים (דוגמת שרתים, זיכרון, נפחי אחסון), הינו לבנות את ה-Clusters בצורה דינאמית.

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

דוגמאות לחלופות להרצת HPC בסביבת ענן:

סיכום

כפי שניתן לקרוא ממאמר זה, הרצת HPC Cluster בסביבת ענן הינה אופציה מעשית, אך עליכם לתכנן מראש את הפתרון, לאחר איסוף דרישות הלקוח (כגון כמות דרישות חומרה, דרישות תוכנה וכמובן הערכת עלויות/תקציב).

 

תיעוד מאתר היצרן

· Azure Batch

https://azure.microsoft.com/en-us/services/batch/

· Azure CycleCloud

https://azure.microsoft.com/en-us/features/azure-cyclecloud/

· AWS ParallelCluster

https://aws.amazon.com/hpc/parallelcluster/

· Slurm on Google Cloud Platform

https://github.com/SchedMD/slurm-gcp

· HPC on Oracle Cloud Infrastructure

https://www.oracle.com/cloud/solutions/hpc.html


המאמר נכתב ע"י אייל אסטרין, ארכיטקט ענן במרכז החישובים הבינאוניברסיטאי


 

האם ניתן להריץ HPC בסביבת ענן? במה שונה HPC cluster בסביבת ה-on premise מסביבת הענן ומה החלופות הנפוצות להרצת HPC בסביבת ענן?

 

הקדמה

לפני שנדון ב-HPC (High Performance Computing) בסביבת ענן, מה זה בכלל אומר HPC?

"המונח High Performance Computing מתייחס לאוסף של משאבי מחשוב בעלי יכולת חישוב גבוהה, ביחס להרצת מחשב בודד, במטרה לפתור בעיות מורכבות בעולם המחקר, ההנדסה או בעולם העסקי". (https://www.usgs.gov/core-science-systems/sas/arc/about/what-high-performance-computing)

 

במונחים טכניים – הכוונה ל-Cluster של שרתים הבנוי ממספר רב של מעבדים (פיזיים או וירטואליים), כמויות גדולות של זיכרון RAM, מערך אחסון מקבילי מהיר במיוחד (לצורכי קריאה/כתיבה) וחיבור תקשורתי מהיר בין המחשבים החברים ב-Cluster.

 

HPC שימושי לתרחישים בהם קיים צורך במשאבי מחשוב רבים, מעיבוד תמונה או וידאו (בתהליכי Batch), ועד היכולת לחזות את מזג האוויר (דבר המחייב חיבור מהיר בין רכיבי ה-Cluster).

 

עולם ה-HPC מתחלק לשתי קטגוריות:

· Loosely coupled – בתרחיש זה נדרשים משאבי מחשוב רבים, אך כל משימה רצה בנפרד מיתר המשימות, אין צורך בחיבור מהיר בין רכיבי המערכת ולא קיימת תלות בין הרכיבים על-מנת לסיים את המשימה בשלמותה.

דוגמאות לתרחיש זה: עיבוד תמונה, ריצוף גנטי ועוד.

· Tightly coupled – בתרחיש זה נדרש חיבור מהיר בין רכיבי ה-cluster (דוגמת שיתוף משאבי זיכרון ומעבד) וכל רכיב ב-cluster תלוי ביתר הרכיבים לצורך השלמת המשימה כולה.

· דוגמאות לתרחיש זה: חישוב דינמיקת נוזל, ניסיון לחזות מזג אוויר ועוד.

 

שיקולי עלויות

התקנת HPC Cluster בסביבת ה-on premise מחייבת השקעה גדולה בחומרה (מספר רב של שרתים המחוברים ביניהם ב-Cluster, עם כמות גדולה של מעבדי CPU ומעבדי GPU, עם מערך אחסון מקבילי מהיר ולעיתים עם חיבור תקשורתי מבוסס טכנולוגיית RDMA בין רכיבי ה-Cluster), השקעה בכוח אדם (בעל ידע מתאים לתמוך בפלטפורמה), דרישה לחיבור חשמל בעל הספק גבוה ועוד.

 

גם להתקנת HPC Cluster בענן יש את החסרונות שלו בכל הנוגע לעלויות. עלויות שרתים עם כמות גדולה של מעבדי CPU ומעבדי GPU, או כמות גבוהה של זיכרון RAM עשויה להוות השקעה יקרה, ביחס לרכישת החומרה לסביבת ה-on premise, בה ניתן להשתמש בהשקעה שנרכשה 24x7 שעות לתקופה של בין 3 ל-5 שנים (של אחריות היצרן).

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

 

הפתרון להרצת HPC clusters בסביבת ענן, ועדיין להיות מסוגלים להנאות מיתרונות של משאבי מחשוב (כמעט) בלתי מוגבלים (דוגמת שרתים, זיכרון, נפחי אחסון), הינו לבנות את ה-Clusters בצורה דינאמית.

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

דוגמאות לחלופות להרצת HPC בסביבת ענן:

סיכום

כפי שניתן לקרוא ממאמר זה, הרצת HPC Cluster בסביבת ענן הינה אופציה מעשית, אך עליכם לתכנן מראש את הפתרון, לאחר איסוף דרישות הלקוח (כגון כמות דרישות חומרה, דרישות תוכנה וכמובן הערכת עלויות/תקציב).

 

תיעוד מאתר היצרן

· Azure Batch

https://azure.microsoft.com/en-us/services/batch/

· Azure CycleCloud

https://azure.microsoft.com/en-us/features/azure-cyclecloud/

· AWS ParallelCluster

https://aws.amazon.com/hpc/parallelcluster/

· Slurm on Google Cloud Platform

https://github.com/SchedMD/slurm-gcp

· HPC on Oracle Cloud Infrastructure

https://www.oracle.com/cloud/solutions/hpc.html


המאמר נכתב ע"י אייל אסטרין, ארכיטקט ענן במרכז החישובים הבינאוניברסיטאי


לפרטים נוספים ויצירת קשר עם נציג אורקל

תודה הודעתך התקבלה

הודעתך לא התקבלה - נסה שוב מאוחר יותר

אייל אסטרין

הירשם לרשימת הדיוור של IsraelClouds

Thank you! Your submission has been received!

Oops! Something went wrong while submitting the form

מילון מונחיםהשירותים שלנו תנאי שימושהרשמה לניוזלטרמדיניות פרטיות