מאיץ עצבי (NPU)

עולם המוצר והעסקים

הגדרה

מאיץ עצבי (NPU) הוא רכיב חומרה ייעודי להרצת רשתות עצביות — משולב במעבד או כמודול נפרד — שתוכנן לצריכת חשמל נמוכה, ולכן מאפשר להריץ מודלים על מכשיר שפועל מסוללה.

מה זה מאיץ עצבי

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

למה שבב נפרד ולא המעבד הרגיל

רשת עצבית מבצעת בעיקר כפל וחיבור של מטריצות, שוב ושוב, על מספרים בדיוק נמוך. המאיץ בנוי בדיוק לזה, ותומך בטיפוסי נתונים חסכוניים כמו INT4, INT8, FP8 ו-FP16 במקום בחישוב עשרוני מלא. לפי AMD — צד מעוניין, שכן היא מוכרת מאיצים כאלה — החיסכון האמיתי אינו בחישוב עצמו אלא בהעברת הנתונים: ארכיטקטורה רגילה שולפת נתונים מהמטמון שוב ושוב, וזה מה שצורך אנרגיה, בעוד המאיץ מחזיק אותם בזיכרון מקומי צמוד לכל יחידת-חישוב. מדד ההשוואה הנפוץ הוא TOPS — טריליוני פעולות בשנייה; הוא אינו מציין באילו פעולות מדובר, ובפועל הכוונה בדרך כלל לפעולות INT8.

מה זה נותן לכם בפועל

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

מתי זה נכנס למכשירים

אפל הציגה מאיץ כזה בטלפון בספטמבר 2017, בשבב A11 Bionic של iPhone X. לפי הודעת החברה מדובר במנוע דו-ליבתי שמבצע עד 600 מיליארד פעולות בשנייה, והוא זה שאיפשר את זיהוי הפנים ואת האנימוג'י. רכיבים דומים נמצאים היום גם בשבבי-הטלפון של קוואלקום, סמסונג, וואווי וגוגל. מעבדי מחשב אישי הצטרפו מאוחר יותר, אינטל ו-AMD סביב 2022; כל דגמי Meteor Lake של אינטל, למשל, כוללים יחידה כזו להאצת הרצה בראייה ממוחשבת ובלמידה עמוקה.

שתי המגבלות

יש שתי מגבלות שכדאי להכיר. הראשונה: מאיץ במכשיר-צריכה תוכנן להיות קטן, חסכוני ומהיר-דיו למודלים קטנים — לא להריץ מודל שפה גדול מהשורה הראשונה. כדי שמודל ירוץ עליו הוא עובר בדרך כלל כימות (Quantization), הקטנת דיוק המספרים הפנימיים כדי לחסוך זיכרון וחישוב. השנייה היא תוכנה: לכל יצרן ממשק תכנות משלו — Ryzen AI של AMD, OpenVINO של אינטל, CoreML של אפל ו-SNPE של קוואלקום — כך שקוד שרץ על מאיץ אחד אינו רץ על אחר בלי התאמה.

מי מוכר מאיצים, ולמי

השוק מחולק לשלוש שכבות, ובכולן מדובר באותו רכיב. יש חברות שמוכרות את התכנון בלבד ולא שבב: סיוה הישראלית מרשה את משפחת ליבות NeuPro ליצרניות שבבים אחרות. יש יצרניות שמשלבות מאיץ בתוך המעבד שהן מוכרות — אפל, קוואלקום, אינטל ו-AMD. ויש חברות שמוכרות מאיץ עצמאי שמחברים למערכת קיימת, כמו היילו הישראלית, שמתמחה בשבבים למצלמות ולרכב. מה שמשתנה בין השכבות אינו הטכנולוגיה אלא מי מוכר אותה למי.

שאלות נפוצות ❓

במה מאיץ עצבי שונה ממעבד גרפי?

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

מה זה TOPS?

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

האם אפשר להריץ מודל שפה גדול על המאיץ שבטלפון?

לא מודל מהשורה הראשונה. מאיץ במכשיר-צריכה תוכנן להיות קטן וחסכוני ומהיר-דיו למודלים קטנים. מודל שכן רץ עליו עבר בדרך כלל כימות (Quantization) — הקטנת דיוק המספרים הפנימיים — ולכן הוא גם קטן יותר וגם פחות מדויק מהגרסה המלאה שרצה בענן.

יש לי כבר מאיץ עצבי במכשיר?

כנראה כן, אם הטלפון או המחשב הנייד שלכם חדשים יחסית. אפל הציגה רכיב כזה בטלפון ב-2017, ורכיבים דומים נמצאים היום בשבבים של קוואלקום, סמסונג, וואווי וגוגל. במעבדי מחשב אישי זה הגיע מאוחר יותר — אינטל ו-AMD סביב 2022.

צריך לעשות משהו כדי להשתמש בו?

לא כמשתמש. מערכת ההפעלה והאפליקציות מנתבות אליו משימות מתאימות מאחורי הקלעים. למפתחים המצב פחות נוח: לכל יצרן ממשק תכנות משלו — Ryzen AI של AMD, OpenVINO של אינטל, CoreML של אפל ו-SNPE של קוואלקום — וקוד שנכתב לאחד אינו רץ על אחר בלי התאמה.