לפני שנדון ב-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).
· 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 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 (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).
· 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 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
הודעתך לא התקבלה - נסה שוב מאוחר יותר
Oops! Something went wrong while submitting the form