בעולם ה-IT יש מאבק מתמיד למציאת פתרונות זיכרון חדשים. אחת העדיפויות היא להשיג זיכרון המשלב את הטוב שבשני העולמות: זיכרון RAM ו-SSD. כלומר, זיכרון מהיר כמו הזיכרון הראשי, אך עם הקיבולת והאופי הלא-נדיף של זיכרון משני. ולשם הדברים הולכים. ה-SCM שאנו מציגים בפניכם היום…
היררכיית הזיכרון הנוכחית
כתזכורת, נניח שלזיכרון בארכיטקטורת המחשב הנוכחית יש היררכיית זיכרון בצורת פירמידה, מהקיבולת המהירה, היקרה והנמוכה ביותר בראש, לזולה, האיטית והגבוהה ביותר בבסיס:
- רמת 0בראש יש לנו את המהירים מכולם, שהם ה- רשומות של המעבד, למרות שגם לו יש את הקיבולת הקטנה ביותר. אוגרים נעים בדרך כלל בגודלם בין 32 סיביות ל-64 סיביות ומעלה. עם זאת, למרות הקיבולת הקטנה שלהם, הם בנויים מכפיפים מהירים מאוד וניתן לגשת אליהם בפחות מ-0.5 ננו-שניות.
- רמת 1ממש מתחת לאוגרים נמצא זיכרון המטמון, מ-L0 או L1 ועד ל-LLC (Last Level Cache). ניתן אף לכלול כאן כמה חוצצים, כמו ה-TLB, שהוא גם סוג של מטמון. כלומר, לעתים קרובות ניתן למצוא את L1, L2 ו-L3, למעט כמה יוצאים מן הכלל. לזיכרון זה בדרך כלל קיבולות גדולות יותר מהאוגרים, החל מכמה KB ועד כמה MB. עם זאת, התאים בזיכרון זה הם SRAM. זה הופך אותם למהירים מאוד, אם כי לא מהירים כמו האוגרים, אך מהירים יותר מהרמות שמתחתיהם. כאן אנו מדברים על זמני גישה שבדרך כלל נעים בין 1 ננו-שנייה לכמה עשרות ננו-שניות, תלוי ברמה, או במילים אחרות, מכ-4 מחזורי שעון של המעבד ועד 50 או 70 מחזורים ברמות הגבוהות יותר. לדוגמה, זמני גישה אופייניים ל-L1 עשויים להיות של 1 ננו-שנייה, בעוד ש-L2 יכול להיות בסביבות 3.3 ננו-שנייה, L3 בין 12.8 ננו-שנייה ו-L4 ב-42.4 ננו-שנייה... יש להוסיף גם שגם רמה 0 וגם רמה 1 נמצאות בתוך המעבד עצמו במקרים הנוכחיים.
- רמת 2זהו מה שמכונה זיכרון ראשי, או זיכרון ראשי. כלומר, RAM (זיכרון וירטואלי יכול להיכלל כאן, אם כי יש לזכור שזהו חלק שנמצא ברמה 3). לזיכרון זה קיבולת גדולה יותר מהמטמון, כמה ג'יגה-בייט, אך נכון גם שזמני הגישה איטיים יותר, בסביבות 10 ננו-שניות. זה יכול להשתנות בהתאם לסוג הזיכרון, מכיוון שההשהיה ותדירות השעון אינם זהים בכולם, אבל רק כדי לתת לכם התייחסות. הסיבה לכך היא שמדובר בזיכרון המורכב מתאי DRAM, איטי יותר מ-SRAM, אך זול יותר, מה שמאפשר קיבולת גבוהה יותר במחיר מתון. רמה 0, רמה 1 ורמה 2 הם זיכרון שהמעבד יכול לגשת אליו ישירות. אגב, כידוע לכם, לכרטיס המסך יש גם זיכרון ראשי משלו, או VRAM, והוא בדרך כלל DRAM וגם HBM במקרים מסוימים. HBM יכול לשמש גם עבור המעבד, אם כי זה יותר אקזוטי.
- רמת 3ניתן לכלול כאן זיכרון לא נדיף (NVM), מכיוון שכל הרמות הקודמות היו נדיפות, כלומר כאשר אספקת החשמל מתאי הזיכרון מנותקת, תוכנם אובד. סוג זה של זיכרון שומר על כל המידע המאוחסן גם כאשר אספקת החשמל מנותקת. חשוב גם לציין כי סוג זה של זיכרון אינו ניתן לגישה ישירה על ידי המעבד, ובמקרים רבים הוא דורש סיוע ממערכת ההפעלה. רמה זו מכונה בדרך כלל זיכרון משני, בדיוק כפי שרמה 1 מכונה זיכרון ראשוני. רמה 3 כוללת כוננים קשיחים מסוג HDD ו-SSD. הראשונים הם מגנטיים ובעלי זמני גישה של כ-3 אלפיות השנייה, בעוד שהאחרונים הם יחידות זיכרון פלאש מהירות בהרבה, עם זמני גישה שיכולים להיות כ-0.1 אלפיות השנייה. כפי שניתן לראות, כאן אנו עוברים מננו-שניות לאלפיות-שניות, אך יש גם לומר שמדובר בזיכרון שזול משמעותית לייצור, כך שניתן ליישם אותו בקיבולות של מאות או אלפי ג'יגה-בייט או טרה-בייט.
- רמת 4במקרה זה, זמני הגישה ארוכים יותר מהקודמים, ויכולים להיות מעל 10 מילישניות במקרים מסוימים. זה עשוי לכלול מדיה נשלפת, זיכרון אופטי (CD/DVD/BD), קלטות מגנטיות וזיכרון קלט/פלט אחר.
אוקיי, אז ברגע שנבין את הפירמידה או ההיררכיה של הזיכרון, הצעד הבא הוא להתחיל לבחון מהו SCM...
בחיפוש אחר זיכרון אוניברסלי
כדי לנסות לשפר את היררכיית הזיכרון הזו, חוקרים מפתחים כל הזמן טכנולוגיות חדשות, ומחפשים אחר מה שנקרא "זיכרון אוניברסלי"מונח זה מתייחס להתקן אחסון שיכול לשלב את יתרונות העלות של DRAM, את המהירות של SRAM ואת האופי הבלתי נדיף של זיכרון פלאש, ובמקביל להיות בעל עמידות אינסופית וארוכת טווח.
ברור שאיחוד כל המאפיינים הללו בדוח אחד אינו קל, למעשה, מומחים רבים מפקפקים בכך שזה אפשרי.. כמה זיכרונות שפורסמו לאחרונה עשויים לעמוד בחלק מהמאפיינים הללו, למרות שהם אינם פתרון סופי מסיבה זו או אחרת.
אני מתייחס לזיכרונות כגון FRAM או FeRAM, MRAM, PCM, RRAM או ReRAM, NRAM או Nano-RAM, PRAM או PCRAM, זיכרון מבוסס ממריסטאָר, PMC, זיכרון בועות, זיכרון מרוץ, UltraRAM (מוליכים למחצה הנמצאים בחקירה כגון InGaAs, GaSb, AlGaAs, GaAs, AlSb, InAs), 3D XPoint, Millipede, זיכרון מבוסס FeFET, NOVRAM וכו'. לכולם יתרונות מעניינים, אך גם חסרונות שעדיין לא הופכים אותם למתאימים להיחשב לזיכרונות אוניברסליים ויכולים להחליף את רמות 2 ו-1, כפי שניתן לראות בפירמידה הקודמת, וכן להציב את עצמם כזיכרון בין הזיכרון הראשי לזיכרון המשני.
מה זה NVRAM?
La NVRAM (זיכרון גישה אקראית לא נדיף) זהו סוג של זיכרון גישה אקראית כמו RAM, אך הוא אינו מאבד את הנתונים שלו כאשר אינו מחובר אליו חשמל, מה שהופך אותו ללא נדיף. הרעיון הוא להשיג זיכרון זה עם תכונות של SRAM או DRAM מבחינת מהירות גישה, אך מבלי לאבד את המידע המאוחסן, כמו זיכרון משני. זוהי יכולה להיות טכנולוגיה טובה לשימוש במגוון רחב של חזיתות, החל מאחסון קושחה ועד מיקרו-בקרים לתעשייה, או לשימוש ביישומי HPC, יישומי תעופה וחלל, IoT, מחשוב מבוזר, יישומי מכונות וירטואליות, בין היתר.
תחשבו על כולם היתרונות מה היה לזיכרון הזה בהשוואה לפירמידה הקונבנציונלית הנוכחית, כגון:
- בהיותו מהיר כמו DRAM או SRAM, הוא משיג זמני גישה מהירים מאוד, מה שמאפשר להשתמש בו כזיכרון ראשי.
- מכיוון שהוא אינו נדיף, צריכתו תהיה נמוכה מאוד, מכיוון שלא יידרשו מחזורי רענון והזנה מתמדת של הזיכרון כפי שקורה בזיכרון נדיף.
- ניתן להשיג קיבולות גדולות לאחסון כמויות גדולות של מידע.
- לתאים אלה יש גם אמינות טובה יותר מתאי פלאש קיימים, כך שניתן לאחסן נתונים לטווח ארוך, מבלי להתדרדר לאחר אלפי או מיליוני מחזורים כפי שקורה כיום עם תאים אחרים אלה. כידוע לכם, תלוי אם ה- תאי זיכרון פלאש הם NOR, NAND או נגזרותיהם, אמינות יכולה להיות פחות או יותר קצרה.
זיכרון מתמשך זה יכול להיות הפתרון לחלק מהבעיות הנוכחיות בהתחשב במגבלות הטכנולוגיות הקיימות ובפער או פער ההישגים זרם בין ה-RAM למעבד.
כפי שאתם יודעים, יש כרגע כמה soluciones אלה כוללים זיכרון נדיף מהיר יותר לאחסון מידע במהלך השימוש, מה שמאפשר גישה מהירה יותר. כאשר אספקת החשמל עומדת להינתק, התוכן מועבר לזיכרון לא נדיף. עם זאת, משמעות הדבר היא הכללת שני סוגי זיכרון, מה שמגדיל את עלויות הייצור, בין היתר. אבל עם מודולים אלה, יהיה לכם הכל באחד.
לאחרונה הושקו מספר סטנדרטים כגון NVDIMM, כלומר, פורמט DIMM (מודול זיכרון כפול בשורה). עבור סוג זה של זיכרון קבוע או לא נדיף. בדרך זו, ניתן יהיה לממש את הזיכרונות הללו בצורת מודול כמו זיכרון RAM נוכחי ולהתקין אותם בחריצים דומים לאלה הזמינים כיום. עם זאת, בניגוד ל-DRAM קונבנציונלי, יהיו להם היתרונות המפורטים לעיל.
NVDIMMs התפתחו מהטכנולוגיה המכונה BBU DIMM (DIMM מגובה סוללה), אשר השתמשה בסוללת גיבוי כדי לשמור על אספקת חשמל בזיכרון נדיף למשך עד 72 שעות במקרה של הפסקת חשמל. עם זאת, זו אינה המטרה של SCM או זיכרון אוניברסלי זה, שכן השימוש בסוללות פירושו שיש לטעון אותן או להחליף אותן, יש לו השפעה סביבתית גדולה יותר וכן הלאה.
מקור כוח עזר זה נחוץ כדי לאפשר לזיכרון הנדיף הראשי זמן להעביר את תוכנו לזיכרון הלא נדיף במקרה של הפסקת חשמל. כיום, ישנם גם כמה מודולי NVDIMM שאינם מסתמכים על סוללות, אלא על מנקי-על, כלומר, קבלים בעלי קיבולת גבוהה שמתמלאים במהלך השימוש וכאשר מתרחשת הפסקת חשמל פתאומית, יש להם מספיק אנרגיה כדי להישאר פעילים מספיק זמן כדי למנוע אובדן נתונים.
חלק מהפתרונות הללו שימשו במקור לאחסון במטמון של מתאמי אפיק מארח (HBA) עבור כונני RAID, מה שאפשר למטמון לשרוד הפסקת חשמל. עם זאת, יש להם יישומים מעבר לכך, כפי שתראו.
כדי לצמצם את השימוש במערכות אלו, חלקן נולדו סטנדרטים תחת JEDEC עבור NVDIMM שכדאי לכם לדעת, כגון:
- NVDIMM-Fזהו חריץ סטנדרטי עבור מודולי DIMM עם שבבי זיכרון פלאש. משתמשי המערכת חייבים לשלב את רכיב ה-DIMM לאחסון עם רכיב DRAM DIMM מסורתי, כלומר, את שני המודולים בנפרד. הוא זמין מאז 2014, עם מוצרים כמו ה-3D XPoint PCM שהוכרזו על ידי אינטל ו-Micron Technology.
- NVDIMM-Nבמקרה זה, שני סוגי הזיכרון משולבים למודול DIMM יחיד. כלומר, יש לנו אחסון פלאש ו-DRAM מסורתי באותו מודול. זה מאפשר למערכת גישה ישירה ל-DRAM המסורתי בזמן שהמערכת פועלת. במקרה של הפסקת חשמל או כיבוי, המודול שומר את הנתונים מה-DRAM המסורתי הנדיף לזיכרון פלאש קבוע ומעתיק אותם בחזרה כאשר החשמל חוזר. מקור כוח גיבוי קטן משמש עבור המודול בזמן שהנתונים מועתקים מ-DRAM לזיכרון פלאש. סוני וויקינג טכנולוג'י הכריזו גם על זיכרון עבור סוג זה של חריץ המבוסס על ReRAM.
- NVDIMM-P: המפרט הופיע בפברואר 2021, ומאפשר זיכרון ראשי מתמשך, כאשר מודולי זיכרון אוניברסליים או SCM חדשים אלה צצו. יתר על כן, הם יכלו לחלוק חיבורים זהים ל-DIMM של DDR4 או DDR5. לכן ניתן היה להחליף אותם. דוגמאות לסוג זה כוללות את מודול סמסונג/נטליסט שהוכרז בשנת 2015, אשר ככל הנראה התבסס על Z-NAND.
- NVDIMM-Xזה לא תקן JEDEC, אבל זה גם מעניין. במקרה הזה, יש לנו מודול זיכרון DDR DIMM, אבל עם אחסון פלאש NAND, שפותח על ידי Xitore.
אוקיי, עכשיו נעבור ל-SCM, שקשור לכל מה שהסברתי כאן, כפי שתראו, אבל היה צורך להסביר את זה לפני שנתחיל לעבוד עם הקונספט החדש הזה...
מה זה SCM?
La SCM (זיכרון מחלקת אחסון), שהוא המוקד העיקרי של מאמר זה, הוא סוג של זיכרון פיזי שמנסה לבסס את עצמו כזיכרון אוניברסלי, או לפחות לכסות חלק מבסיסו. עם SCM, יש לנו זיכרון המשלב את הטוב ביותר של זיכרון גישה אקראית דינמי (DRAM), הטוב ביותר של זיכרון פלאש NAND, ומקור כוח לשמירת נתונים.
בקיצור, מה שהיינו משיגים עם SCM הוא שיהיה לנו גישה (כתיבה וקריאה) לנתונים מהירה יותר מאשר גישה לנתונים בכונני SSD המחוברים באופן מקומי דרך PCIe, כוננים קשיחים מגנטיים (HDD) ומערכי אחסון חיצוניים. SCM עמיד יותר מ-DRAM ויכול לקרוא ולכתוב נתונים עד פי 10 מהר יותר מכונני NAND. עם זאת, ניתן להשיג קיבולות גבוהות יותר מאשר RAM קונבנציונלי גם במחיר סביר, כמו גם תוחלת חיים ארוכה יותר מכונני SSD קיימים.
אחד היישומים שבהם ניתן לנצל את זיכרונות ה-SCM הללו הוא במרכזי נתוניםוהם יכולים לתרום:
- חֶבִיוֹןיש לנו אמצעי אחסון בעל ביצועים גבוהים עם השהייה נמוכה, כלומר זמני גישה מהירים יותר מאשר אמצעי אחסון משניים. זהו גורם חיובי לעומסי עבודה הדורשים טיפול בכמויות גדולות של נתונים עם ביצועים טובים.
- מתמידספק הכוח לגיבוי מבטיח שהנתונים וקוד התוכנית נשמרים במהלך כשל מערכת או הפסקת חשמל. זה מספק שכבת אחסון מתמשכת הניתנת לכתובת בתים בין DRAM לזיכרון הבזק. שימוש ב-SCM מרחיב את הביצועים המהירים של DRAM לאחסון לא נדיף. לכן, כאשר החשמל חוזר, המערכת יכולה להמשיך בדיוק מהנקודה שבה הפסיקה, מבלי לאבד נתונים או זמן - חיוני במערכות בעלות זמינות גבוהה. יתר על כן, במקרים רבים, הצורך ברענון מתמיד יבוטל.
- פחות תלוי במדיה משניתעם SCM, יש צורך להעביר פחות נתונים בין הזיכרון הראשי לאחסון משני, מכיוון שיש לו קיבולת גדולה יותר. זה מפחית את עומס העבודה של המעבד כאשר הוא זקוק לגישה של מערכת ההפעלה למדיה משנית, כפי שהסברתי קודם לכן, מה שמגביר את הביצועים. התקן SCM יכול להגיע למהירויות שעון כמעט כמו DRAM ו-SRAM סטטי, אך עם יתרון של עמידות.
יתרונות וחסרונות של SCM
כפי שציינתי לאורך המאמר, השימוש ב-SCM יכול להיות בעל השפעה יתרונות גדולים בהשוואה לזיכרון קונבנציונלי, כגון קיבולת גדולה יותר מאשר DRAMs הנוכחיים, עם זמני גישה דומים או מהירים יותר, אך ללא התנודתיות של האחרון. יתר על כן, רבות מהטכנולוגיות החדשות הנמצאות בפיתוח מציעות גם יעילות אנרגטית גבוהה יותר, דבר שחשוב במרכזי נתונים. ובמקרה של אספקת חשמל מקומית לצומת, הנתונים לא יאבדו. חשוב גם לזכור שנתונים המוצבים ב-SCM עוקבים אחר נתיב קלט/פלט קצר יותר ומפחיתים את איסוף האשפה על בלוקי נתונים גדולים.
במחשוב, איסוף זבל, או GC, היא דרך לניהול אוטומטי של זיכרון. ה-GC מנסה לשחזר זיכרון שהוקצה על ידי תוכנית אך אינו בשימוש עוד; במילים אחרות, הוא משחרר את משאב הזיכרון הזה. זה משחרר את התוכנית מביצוע משימות ניהול זיכרון; במילים אחרות, היא אינה צריכה לציין אילו אובייקטים לבטל ולפנות.
אבל, למרות יתרונותיהם, יש להם גם כמה חסרונות, וזו הסיבה שהן טרם אומצו באופן נרחב. אחת המלכודות הגדולות ביותר היא שהן מבוססות על טכנולוגיות שעדיין נמצאות בפיתוח או צריכות להתבגר, שכן המוצרים הראשונים שהושקו לא הגיעו לגבולות הפוטנציאל הצפוי תיאורטית. יתר על כן, מכיוון שמדובר בטכנולוגיות אקזוטיות, הן יכולות להיות יקרות יותר לייצור.
דוגמאות למוצרי SCM
כפי שציינתי לעיל, ישנם כמה דוגמאות למוצרים אשר הושקו בשוק ונחשבים לסוגים של יישומי SCM מסחריים, כגון:
- אינטל אופטאן: הושק בשנת 2018, מוצר שפותח במיוחד עבור HPC, בינה מלאכותית, בין היתר, ומאפשר שיפורי ביצועים הודות לזיכרון SCM זה המבוסס על 3D XPoint, טכנולוגיה שפותחה יחד עם Micron. למרות שהושקו מספר פורמטים של זיכרון זה, כגון פורמטי M.2 NVMe, כרטיסי הרחבה PCIe, היה גם אחד בפורמט DIMM בשם Optane Persistent Memory או PMem. הקיבולות של מודולי DIMM אלה נעו בין 128 ג'יגה-בייט ל-512 ג'יגה-בייט לכל מודול. עם זאת, בשנת 2021 החליטה אינטל להפסיק את פיתוח זיכרון זה, והמטרה התמקדה בתקן הפתוח Compute Express Link (CXL), שנראה מבטיח יותר.
- כונן SSD של סמסונג Zהחברה הדרום קוריאנית תיצור גם מדיום מסוג SCM בעל השהייה נמוכה, המבוסס על טכנולוגיה שונה מהקודמת. במקרה זה, נעשה שימוש בגרסה של V-NAND, הנקראת Z-NAND, שאורגנה ב-48 שכבות של תאי זיכרון המבוססים על טרנזיסטורי שער צפים.
- כונני הרחבת זיכרון Western Digital Ultrastar DC ME200ניתן להשתמש בו כדי להרחיב את זיכרון המערכת הקיים, לעודד איחוד שרתים ולהפחית את המורכבות של חלוקת מערכי נתונים גדולים בגודל של מספר טרה-בייט על פני שרתים מרובים. זהו פתרון SCM בו השתמשה AMD עבור המערכות מבוססות EPYC שלה כדי להתחרות בפתרון של אינטל.
- קיוקסיה XL-פלאש SCMחברה זו, לשעבר Toshiba Memory, פיתחה גם טכנולוגיית SCM משלה, המכונה זו. מוצרים אלה השתמשו בגורם צורה דמוי SSD, אך עם תוכניות להביא אותו לאפיק ה-DRAM.
- טכנולוגיות מודולריות חכמות DuraMemoryפתרון זיכרון מתמשך נוסף זה במודולים הוא גם דוגמה בולטת נוספת, אם כי במקרה זה הוא מיועד לתעשייה ולסביבות בהן חוסן ואמינות בתנאים קשים נחוצים.
כל ההתפתחויות הללו, בין היתר, גרמו לרבים ספקים גדולים חברות IT, ובמיוחד חברות HPC, יתעניינו במוצרים אלה וישלבו אותם בפתרונות שלהן. כמה דוגמאות לשימוש ב-SCM במערכות מסחריות וארגוניות כוללות:
- EMC של Dellהחברה האמריקאית הודיעה כי תשתמש ב-Intel Optane PMem כדי לשפר את ביצועי מערכות ה-PowerMax SAN שלה.
- Hewlett Packard Enterprise (HPE): יבצע גם חדירה ל-SCM עם פתרונות ארגוניים כגון רשתות SAN של Nimble Storage, המבוססות על Optane.
- Hitachi Vantara: החברה היפנית הציעה גם את סדרת Virtual Storage Platform 5000 שלה, עם אפשרות למשתמשים להשתמש ב-SCM, הפועל כזיכרון חיץ או מטמון.
- Lenovo: ענקית המחשוב האישי וה-HPC הסינית צפויה גם להכריז על תמיכה ב-Intel Optane עבור שרתי ThinkSystem שלה.
- ממרג'חברת הסטארט-אפ הזו, שנוסדה בשנת 2017, פיתחה מערכת בשם Memory Machine, אשר וירטואליתיזה DRAM ו-Intel Optane כדי ליצור אמצעי אחסון מתמשך בעל קיבולת גבוהה. הרעיון היה להשתמש במערכות אלו לצילומי מצב, שכפול שרתים ומטרות אחרות.
- NetAppעיצב את תוכנת Memory Accelerated Data (Max Data). פרויקט זה משתמש בטכנולוגיית Pleexistor ותומך ב-Intel Optane SCM.
- אחסון טהורהרעיון מאחורי חברה זו היה לשלב זיכרון פלאש NVMe ומודולים שפותחו על ידה ונקראו DirectMemory, וכתוצאה מכך נוצר מה שנודע מסחרית בשם FlashArray//X all-flash, באמצעות התקני Intel Optane בעלי שני יציאות.
- סטור וואןדומה לקודמת, מכיוון ש-All-Flash Array.next היא מערכת שאורזת זיכרון Optane יחד עם זיכרון Intel QLC 3D NAND, ומנוהלת על ידי תוכנת S1.
- נתונים עצומיםחברה אחרת זו יצרה מאגר כתיבה מבוסס SCM כדי להאיץ עומסי עבודה של בינה מלאכותית.
עתיד ה-SCM
בקיצור, ראינו כמה ניסיונות לטכנולוגיות ומוצרים המשתמשים בצורה כלשהי של SCM, אך הם לא ממש תפסו תאוצה בשוק מסיבה זו או אחרת. עדיין נדרש פיתוח, כמו גם בגרות של חלק מהטכנולוגיות עליהן מבוססים מכשירים אלה. ולמרות הפסימיות של רבים, דוח זה עשוי להיות לו עתיד מבטיח.