מעבדי EPYC דור שני – סקירה

אני רוצה לפתוח את הפוסט עם סיפור קצר "מאחורי הקלעים".

תכננתי זמן רב לכתוב את הפוסט הזה ולשחרר אותו היום (לאחר שהסתיים האמברגו אתמול) על המעבדים החדשים של AMD לשרתים, מעבדי EPYC דור שני (סידרה 7002) ולהשוות אותם למעבדים הנוכחיים של אינטל שמגיעים עם עד 56 ליבות במעבד. מהנדסי אינטל עשו עבודה מצויינת והמעבדים עם 40 או 56 ליבות יכולים לתת "פייט" מצוין למעבדי EPYC דור שני של AMD, אבל קרה מה שקורה לפעמים בחברות גדולות – בהנהלה באינטל "נפתח התאבון" והם החליטו שמעבדים בסידרה 92XX יהיו שונים פיזית ממעבדי Xeon Scalable האחרים. אם תיקחו מעבד כזה ותהפכו אותו, לא תמצאו פינים או ריבועי זהב קטנטנים. אתם תמצאו כדורים או מה שנקרא בשפה המקצועית BGA (כלומר Ball Grid Array), ובמילים אחרות – המעבדים הללו חייבים להיות מולחמים ללוח אם. בנוסף, אינטל החליטו שיצרן המעוניין לרכוש מעבדים כאלו ומעוניין לשלב אותם בשרתים – יצטרך גם לרכוש מאינטל עוד כמה שבבים והם מחוייבים להיות מוטמעים בשרתים ומה לעשות – אותם שבבים מתחרים בדיוק במה שהיצרנים מוכרים מבחינת ניהול – iDrac, iLO וכו'.

כך שכיום – גם אם יש לכם כסף, מערכות X86 הכוללים מעבדים עם יותר מ-28 ליבות –  לא תוכלו לרכוש כי אף יצרן לא מוכן לתנאים הללו. באינטל הבינו את השגיאה הפטאלית רק לפני מס' חודשים והיא תתוקן ב-2020 עם המשפחה החדשה Ice Lake AP.

בקיצור – AMD צריכים לשלוח פרחים ואולי עוגה עם שלט גדול של "תודה" לאינטל.

המעבדים החדשים של AMD – סידרה 7002 הם מעבדים שרבים מאוד בתעשיות השונות חיכו להם. מעבדי EPYC דור ראשון (סידרה 7001) היוו כניסה מחדש של AMD לתחום השרתים לאחר ש-AMD שחררה לפני יותר מעשור את מעבדי ה-Opteron שהיו מאכזבים בכל תחום למעט המחיר ואינטל לא היו צריכים להתאמץ יותר מדי בכדי לכבוש 99% מהשוק מאז 2006. ל-AMD לא היו שום פתרונות עם שהם פיתחו את ארכיטקטורת ZEN וגם כש-AMD הוציאו את ה-EPYC דור ראשון, לאותם מעבדים היה יתרון בהרצת מכונות וירטואליות, פתרונות VDI וקונטיינרים, אבל כשזה מגיע להרצת אפליקציות גדולות ופלטפורמות פיתוח על כל המעבדים בשרת (ללא וירטואליזציה) – אינטל ניצחה מבחינת ביצועים כמעט בכל קטגוריה.

בדור שני של ארכיטקטורת ZEN, ה-ZEN-2, הפיקו ב-AMD לקחים רבים ובאותה הזדמנות החליטו לשנות הכל. ה-EPYC סידרה 7002 זו ארכיטקטורה שונה לחלוטין מהדור הראשון, לא רק בתוספות ש-AMD הוסיפו, אלא גם בתכנון עצמו. בדור הראשון של EPYC היו בעצם 4 מעבדים שיצרו תצורת NUMA שהצריכו הגדרות וכיוונונים שונים על מנת לקבל ביצועים טובים וגם אז – היה Latency לא קטן עקב התצורה. בדור השני לעומת זאת, ישנו Chiplet מרכזי גדול (כפי שאתם יכולים לראות בתמונה לעיל) שאחראי לכל ה-I/O וכל שבבי הליבות "מדברים" דרכו בלבד, מה שחוסך בצורה ניכרת את ה-Latency. ככלל, תצורת המעבדים הללו (כמו גם מעבדי ה-Ryzen ש-AMD שחררו ומעבדי ה-Threadripper שישוחררו כנראה בחודש הבא) היא תצורה חדשה ושונה לחלוטין ממה שאינטל מתכננים ומייצרים מעבדים – וזה גם הכיוון שאינטל יעברו אליו במהלך השנה שנתיים הקרובות. חברה קטנה כמו AMD מקדימה את אינטל הענקית. כמה מרענן לראות זאת.

כפי שכתבתי, יצרניות רבות של שרתים, ספקי הענן הציבורי, יצרנים תעשייתיים של ציוד לשרתים וכו' חיכו ל-EPYC החדש מהסיבה הפשוטה שסוף סוף אפשר להתחיל מאפס עם טכנולוגיות יותר מתקדמות ממה שאינטל מציעה. עם 128 נתיבי PCIe אפשר לבנות דברים מדהימים ללא צורך ברכיבי מיתוג סופר-יקרים ליצרן (שמגלגל זאת כמובן ללקוח הסופי), אפשר להשתמש בזכרון יותר מהיר (3200 מגהרץ), אפשר לקבל תקשורת יותר מהירה כי כמעט כל תושבות ה-PCIe הם PCIe 4.0 עם רוחב פס של 16 ג'יגהבייט לשניה (כפול מ-PCIe 3.0), אפשר להכניס הרבה יותר דיסקים SSD NVME (לנובו בהחלט "משתוללים" בקטע הזה עם השרתים מבוססי EPYC שהם מציעים החל משבוע הבא. צפו בוידאו הזה), יש מעבדים עם עד 64 ליבות, יש זכרון מסמון בגודל 256 מגהבייט, ועוד ועוד. מי שרוצה את "רשימת המכולת" מוזמן לעיין בפוסט הארוך ש-STH שחררו כאן.

להלן טבלה שמראה את ההבדלים בין הדור השני של Xeon Scalable מבית אינטל ל-EPYC דור שני מבית AMD:

אחת השאלות שכמובן מיד עולה היא: איך הביצועים? וכאן AMD מפתיעה. ברוב מוחלט של המבחנים מעבדי ה-EPYC פשוט עוקפים את המעבדים בקצה הגבוה (28 ליבות) של אינטל עם 50-90% ביצועים יותר מהירים, גם כשלאינטל יש יתרון כמו AVX512 – מעבדי EPYC עוקפים זאת (ע"י שימוש ברוחב פס כפול לתעבורת פקודות) ובמילים אחרים – לא חשוב מה ה-Work Load שאתה צריך להריץ, אם אתה חושב לרכוש ברזלים חדשים או לקחת Instances אצל ספק ענן ציבורי – כדאי מאוד להסתכל על מכונות המכילות את מעבדי EPYC החדשים. אגב, מיקרוסופט וגוגל הכריזו כי ניתן כבר מהיום לשכור Instances מבוססי EPYC דור שני. באמזון אם הבנתי נכון, זה יוצע בחודש הבא.

ומה בנוגע למחיר?

ובכן, בקצה הגבוה של מעבדי אינטל מהסידרה 9200 (כן, אלו שאי אפשר לרכוש כרגע מהיצרנים הפופולריים) אינטל דורשת לבלב, ריאה או משכנתא קטנה. מעבד בקצה הכי גבוה – Xeon 9282 עם 56 ליבות, מתחיל במחיר של $25000 (המחיר כמובן הוא לא מחיר ללקוח סופי, אלא ליצרן שרתים, אז המספר יעלה). לעומת זאת, המעבד בקצה הכי גבוה של AMD, ה-EPYC 7742 עם 64 ליבות עולה פחות משליש – ב-AMD מסתפקים ב-$6950.

ככלל, המשוואה ש-AMD מציעה היא פשוטה: תחליט כמה ליבות פר מעבד אתה צריך במעבדים של המתחרים. יש לך מספר? יפה. תוסיף בערך 100-150$ ותקבל כמות ליבות כפולה ובאותה הזדמנות יש מצב שלא תצטרך שרת עם 2 מעבדים אם אתה רוכש מעבד מבוסס EPYC דור שני.

יתרון גדול נוסף ללקוח הסופי הוא מבחינת רישוי. AMD מציעה לך מעבדים עם עד 64 ליבות ואם אתה משתמש בוירטואליזציה של VMWare, אז אתה חוסך 50% פר שרת במחיר הרישוי.

מבחינת זמינות שרתים לרכישה, אלו השרתים הזמינים כיום ובקרוב. חשוב לשים לב אלו מעבדים אתם בוחרים, המעבדים החדשים מתחילים במספר 77 ומסתיימים ב-2. לדוגמא: 7742.

  • HPE – מציעים את ה-DL325, DL385 ו-Apollo 35. את השרתים הללו ניתן לרכוש כבר כיום עם מעבדי EPYC דור ראשון או שני (יש תאימות אחורה). HPE הכריזו כי במהלך 2019-2020 הם יוציאו עוד 9 דגמים של שרתים מבוססי EPYC דור שני. השרתים המוצעים כיום הם עם PCIe 3.0 ולא עם PCIe 4.0.
  • DELL מציעים את שרתי R7425, R7415, R6415. את כל השרתים הללו ניתן לרכוש עם מעבדים דור קודם או נוכחי. בחודש ספטמבר DELL יציגו שרתים חדשים ובמהלך השנה הבאה יוצגו עוד 6 שרתים מבוססי EPYC דור שני.
  • LENOVO מציעים את SR635 ו-SR655. לנובו הם היחידים שמציעים החל משבוע הבא שרתים עם לוח אם שתוכנן מאפס למעבדי דור EPYC דור שני. גם לנובו יציעו החל מתחילת הבאה עוד מספר דגמי שרתים מבוססי EPYC דור שני.
  • Supermicro – החברה מציעה כרגע 4 שרתים דור 12 (H12) שניתן לראות כאן (נכון לכתיבת שורות אלו יש להם כמה בעיות באתר) כאשר Supermicro דוחפת יותר לכיוון ה-Twin (כלומר 2 שרתים במארז 2U).
  • Gigabyte – החברה החליטה להוציא לא פחות מ-13 שרתים מבוססי EPYC דור שני (די מדהים, בהתחשב שבדור הקודם של EPYC היו לחברה .. רק 2 שרתים להציע). אתם יכולים לראות את הרשימה כולה כאן.
  • TYAN (יש להם נציג בארץ?) – מציגים 6 שרתים ו-2 לוחות אם (לבנייה ואינטגרציה). הרשימה – כאן.
  • ASUS – בעת כתיבת שורות אלו, החברה הכריזה על שרתים חדשים (E10) ולוחות אם מבוססי EPYC דור שני. האתר עצמו עדיין לא מכיל את רשימת השרתים, סביר להניח שזה יעודכן היום או מחר.

לסיכום: אם אתם הולכים לרכוש שרתים בקרוב, סביר להניח שתיתקלו בשם "EPYC" מכאן ועד הודעה חדשה מצד כל יצרן שרתים. מבחינת ביצועים – מדובר בשיפור מאוד שנותן ביצועים יותר גבוהים בהשוואה למה שאינטל נותנת ומבחינת המחיר, מדובר בהנחה משמעותית מאוד בהשוואה לכל ה-SKU של אינטל. לאינטל יש מענה למעבדים הללו, אבל המענה (Ice Lake לשרתים) יצא רק בשנה הבאה – בערך באותו זמן ש-AMD תוציא את EPYC דור שלישי (Milan).

עכשיו אחרי ש-AMD הוציאו את EPYC, החברה הולכת לשחרר כנראה בחודש הבא את Threadripper דור שלישי שיהיה שונה משמעותית מהדורות הקודמים והוא מיועד לתחנות עבודה ועל כך אכתוב בפוסט אחר.

למעוניינים, להלן כמה קטעי וידאו שיכולים לעניין אתכם מבחינת ביצועים:

הראשון – מבחן ביצועים VMMark של VMWare:

השני – קונטיינרים (מבוססי Docker):

אינטל מציגה – הדור השמיני .. בערך

אינטל הציגה שלשום את הדור ה-8 של המעבדים החדשים שלה. אנחנו רגילים לשמוע אחת לשנה מאינטל הכרזות שונות על המעבדים החדשים, כמה הם מעולים, כמה הם מהירים וכו' וכו'. הפעם, בניגוד לעבר, הדברים .. שונים במעט.

אינטל הציגה לפני כשנה (ב-20 לאוגוסט 2016) את משפחת ה-Kaby Lake, מעבדים חדשים לדסקטופ ולמובייל, הדור השביעי החדש. כשמנפים את כל הילולי היח"צ, מבינים אנשי מקצוע רבים שקניה של המעבדים הללו לא תועיל בהרבה. כן, יש שיפור של 10-15% (וגם זה רק במקרים מאוד מסויימים), אבל שינויים ושיפורים משמעותיים – אין ממש כאן. בהמשך הדרך אינטל הציגה את ה-Kaby Lake-X, משפחת מעבדים שצריכה לוח אם חדש עם צ'יפ X299, רק שעד היום רבים וטובים לא הצליחו להבין מה עבר בראש להנהלת אינטל בחיפה. קניה ושימוש במעבד כזה מבטיחה לך מיידית שהלוח אם היקר שקנית – מחצית ממנו מיד תהיה מושבתת ברגע שתכניס מעבד Kaby Lake-X לתושבת, ושלא לדבר על כך שאין אפילו את היחידה הגרפית במעבד. בקיצור – אתה משלם יותר ממחיר מעבד Kaby Lake (ואם תכלול את מחיר הלוח אז המחיר יוצא הרבה יותר), ואתה מקבל .. פחות. מה בדיוק הטעם לרכוש מעבד כזה ממשפחה כזו? אין לי ולאחרים מושג ירוק.

אז שלשום אינטל ניסתה את מזלה בפעם השלישית בהצגת .. Kaby Lake Refresh כלומר "דור שלישי" ל-Kaby Lake (ובקיצור KLR), וגם הפעם אינטל הבטיחה ניסים ונפלאות, רק שהם יותר התרכזו בתוכן וידאו ברזולוציית 4K (ואם מי שקורא את הוידאו חושב שמעבד כזה ללא כרטיס גרפי חיצוני יתן פתרון טוב לעריכה – הוא טועה טעות מרה), וכרגיל גם הפעם אינטל הצהירה שהמעבדים החדשים יהיו מהירים ב-10-15% בהשוואה ל-Kaby Lake (על Kaby Lake-X אף אחד לא דיבר במהלך החשיפה).

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

להלן התשובה של אינטל (לחצו להגדלה):

עד היום בסידרת המעבדים U של אינטל בגירסת ה-15 וואט, היו 2 ליבות ו-4 נימים. אינטל סוף סוף בדגמים i7-8650U, i7-8550U, i5-8350U, i5-8250U מוסיפה 2 ליבות ומאיצה את מהירות השעון כשהמעבד נמצא במצב Turbo (אם כי מהירות הבסיס יותר נמוכה, לא באשמת אינטל, יש גבול למה שאפשר להוסיף במגבלת מעטפת של 15 וואט). בנוסף, אינטל הכפילה את זכרון המטמון בדגמי i7 ל-8 מגהבייט ובדגמי i5 ל-6 מגהבייט. אם נתרגם את זה לביצועים אז אם האפליקציה שאתה מריצה אינה מתפרסת על נימים וליבות נוספים, תקבל עוד 5-15% בביצועים אולם באפליקציות שיודעות לנצל כמות ליבות ונימים, תקבל ביצועים יותר גבוהים עד 40-50%. בכל הקשור לכמות זכרון במחשב, היצרנים יוכלו להציע עד כמות זכרון של 32 ג'יגהבייט (בניגוד למגבלת ה-16 ג'יגהבייט בעבר). שימו לב: המעבדים האלו לא יופיעו בכל המחשבים הניידים אלא יותר במחשבים בסקטור ה-Ultra Book במחירים שמתחילים ב-1000$ ומעלה (מחיר המעבד בלבד הוא בסביבות ה-410$!!)

אינטל בחודשים הקרובים תציג את שאר המעבדים שמיועדים לדסקטופ או למחשבים ניידים כתחנות עבודה (Mobile Workstation – סידרת ה-35 וואט) תחת השם Coffee Lake ובשנה הבאה היא תציג עוד מעבדים באותו דור (אם כי ביצור של 10 ננומטר) תחת שם הקוד Ice Lake. על מעבדי ה-Coffee Lake אפרסם פוסט בקרוב אבל ממה שכבר ידוע, אינטל החליטה להוסיף לכל המעבדים עוד 2 ליבות ולהרחיב את הזכרון מטמון בחלק מהמקרים.

כפי שציינתי לעיל, עניין הליבות הוא מאוד חשוב ואני שמח שאינטל החלה לזוז בעניין. אחד הצעדים המבורכים שאינטל עשתה היא להוציא את סידרת ה-Sky Lake X שסוף סוף מאפשרת לצרכנים לרכוש מעבדים ופתרונות עם 8 עד 18 ליבות מבלי למכור כליה או למשכן את הבית בקניית מעבדי Xeon (הסידרה הזו לא מחליפה את Kaby Lake אלא רק מוסיפה דגמים לשוק היותר מקצועי). אפשר לראות זאת גם בסידרת מעבדי ה-Atom C3000 החדשה שמיועדת לשרתים קטנים (דגש על "קטנים", זה מובנה בתוך לוח אם Mini ITX) ששם אינטל סוף סוף מציעה מעבדים עם 16 ליבות ו-16 מגהבייט זכרון מטמון במחיר זול (יחסית!) של 449$ (הלוח עם המעבד עולה בערך $1000).

מה שעכשיו אינטל צריכה לעשות, זה להפסיק עם ההתנהגות של "בשביל מה לך?". אינטל מדור לדור של מעבדים ו-Chipset מקצצת בכמות ניתובי ה-PCIe. מילא היה מדובר בחסכון מחיר לצרכן אך כפי ש-AMD מוכיחה עם מעבד ה-Threadripper 1900X שלה (ששם AMD מציעים 8 ליבות ו-16 נימים עם 60 ניתובי PCIe זמינים למשתמש! במחיר של 549$ למעבד) – אין כאן שום חסכון. גרוע מכך – בלוחות עם ה-X299 Chipset, כל מקל M.2 SSD עובר דרך ה-Chipset ואם יש לך 2 מקלות או יותר, אתה תקבל ביצועים שמוגבלים ע"י ה-Chipset. ב-AMD אין שום מגבלה כזו במעבדי ה-Threadripper, ואין שום בעיה להכניס אפילו 4 כרטיסים גרפיים ולקבל PCIe X16 על כל כרטיס, דבר שהוא בלתי אפשרי בלוחות המבוססים על X299 וחבל.

עוד נקודה שאינטל צריכה להבין – היא עניין המחירים. כש-AMD יצאו עם מעבדי ה-Ryzen, אינטל חתכה במכה אחת את המעבד עם הכי הרבה ליבות שהיה לה לדסקטופ (ה-6950X) מ-1700$ למחיר של 628$ (כיום באמזון ניתן להשיג אותו במחיר מצחיק של $359!). כיום בסידרת מעבדי ה-Sky Lake-X, מחיר מעבד של 16 ליבות ו-32 נימים שיצא בקרוב יעלה לא פחות מ-1700$ (בשעה שמעבד Threadripper עם 16 ליבות ו-32 נימים עולה $1000). כפי שתיארתי לעיל, גם מעבד כזה יסבול מהגבלות בגלל ה-X299 Chipset אולם עד כה אינטל לא חשבה להוריד מחירים.

לסיכום: לעניות דעתי, אינטל צריכה הרבה יותר להקשיב לצרכנים שהם הלקוחות שלה. מבחינת מכירות, אינטל מוכרת הרבה יותר ללקוחות הדסקטופ והמחשבים הניידים מאשר לשרתים או לסקטורים אחרים. לקוחות רוצים יותר ואם לקוחות מעוניינים, אז כדאי לספק להם את מה שהם רוצים במחיר הוגן. אם לקוח רוצה שהמחשב שלו ירוץ בצורה מעולה ללא תקלות ורוצה להשתמש בזכרון מסוג ECC – אינטל צריכה לאפשר לו במקום לחסום את זה ברמת ה-Chipset. אם לקוח רוצה להכניס 4 מקלות M.2 ולקבל מהירות מקסימלית ב-RAID-5 ולא להיות מוגבל על ידי Chipset – אפשרו לו ותחסכו את הפדיחות ש-AMD מציעה כל מה שלא הצעתם ובמחיר יותר זול.