כיצד משתלב ערימת התוכנה RK3588 NPU
ערימת התוכנה RKNN של Rockchip מפרידה בין הכנה לדגם לבין ביצוע במכשיר. RKNN-Toolkit2 מספק כלי המרות והערכה. RKNN-Toolkit-Lite2 מספקת ממשק Python בפלטפורמות יעד נתמכות, בעוד RKNN Runtime מספקת ממשקי C/C++. מנהל ההתקן של הליבה מחבר את זמן הריצה ל-NPU. בדוק את התאימות של רכיבים אלה עם חבילת התמיכה של הלוח שסופקה עבור המודול שלך.
רשומת פריסה שימושית מזהה את הלוח והגרסה SoM, התמונה Linux, מנהל ההתקן, זמן הריצה, גרסת כלי ההמרה, הדגם המקורי והדגם שהומר. שמור את סקריפט הבנייה והגדרות העיבוד המקדים לצד חפץ הדגם. שם קובץ כגון detector.rknn לבדו אינו יכול להסביר מדוע פריסה אחת מתנהגת בצורה שונה מהאחרת.
שלב 1: צור הפניה לפני ההמרה
הפעל את המודל המקורי על ערכת אימות מייצגת. שמור את התפוקות הגולמיות ואת מדד היישום החשוב: דיוק סיווג, איכות זיהוי או מדד אחר ספציפי למשימה. עבור גלאי, שמור על סדר התוויות, ספי ביטחון והגדרות שלאחר עיבוד. זו הופכת לנקודת ההשוואה עבור הדגם שהוסב.
רשום את כל חוזה הקלט. כלול מידות, גודל אצווה, סדר RGB או BGR, פריסה, טווח מספרי, נורמליזציה, שינוי גודל וריפוד. מודל נכון יכול להניב תוצאות גרועות אם היישום מעביר תמונה שונה מההדרכה או מחסיר היסט פעמיים. המשך עיבוד אחר מחוץ לרשת מתועד באותה זהירות.
השתמש ב-Rockchip RKNN דגם גן חיות כנקודת התחלה כאשר הוא כולל מודל ומטרה תואמים. דוגמאות ההמרה וההסקה שלה מועילות יותר מהנחה שכל רשת מיוצאת תעבוד ללא שינוי. בחר גרסת מאגר ידוע ופעל לפי ההוראות עבור הדוגמה הספציפית הזו.
שלב 2: המר את הדגם ובדוק את תמיכת המפעיל
- התאם את היעד. בחר את היעד RK3588 ושרשרת כלים התואמת לתמונת הלוח המיועדת.
- בדוק את הגרף. אשר צורות, עיבוד מקדים, פלטים ותמיכה עבור הפעולות בפועל במודל המיוצא.
- בניית המרת הפניה. השתמש באפשרויות הדיוק הנתמכות על ידי הגרף וגרסת התוכנה.
- קרא את יומן הבנייה המלא. פתור כשלים וחקור אזהרות לפני הוספת רכישת מצלמה או ממשק משתמש.
- השוו תפוקות. הפעל את אותן קלטות דרך המודלים המקוריים והמרה, עם אותו עיבוד לאחר.
פעולה שאינה נתמכת עשויה לדרוש ייצוא אחר, שכתוב גרף או שלב עיבוד CPU מפורש. אל תניח שזמן הריצה יבצע בשקיפות כל שכבה שאינה נתמכת. אם חלק מעומס העבודה עובר למעבד, כלול העברות וסנכרון במדידת הביצועים.
שלב 3: הערך את INT8 מול דרישת הדיוק שלך
קוונטיזציה משנה ייצוג מספרי. כאשר זרימת ההמרה שנבחרה משתמשת בנתוני כיול, בחרו תשומות המייצגות את הפריסה: תאורה, גודל אובייקט, רקע ותנאי הפעלה. שמור ערכת אימות נפרדת כדי להעריך את התוצאה. המרה שמסתיימת בהצלחה עדיין זקוקה לבדיקת דיוק.
השווה את פלט היישום, לא רק את ההבדל בין שני טנסורים. לדוגמה, שינוי מספרי קטן יכול להעביר זיהוי על פני סף ביטחון. בדוק מקרים קשים, שיעורים עם מעט דוגמאות ותנאים שבהם הדגם המקורי כבר היה שולי. אם הדיוק יורד מתחת למגבלת הקבלה, בדוק שוב את כיסוי הכיול והעיבוד המקדים לפני החלפת החומרה.
ה ONNX תיעוד לכימות זמן ריצה הוא רקע שימושי על פשרות מספריות וחקירת דיוק. עדיין יש לבדוק RKNN אפשרויות המרה ודיוק נתמך בתיעוד של Rockchip עבור המהדורה שנבחרה.
שלב 4: למדוד יותר מזמן הסקת מסקנות
מדוד את עומס העבודה שנפרס לאחר חימום ושוב במהלך ריצה מתמשכת. רשום את הטמפרטורה, מצב הספק, תהליכים במקביל ואת סידור המתחם או הקירור. התוצאה השימושית היא מעטפת ביצועים הניתנת לשחזור, כולל דיוק ועיכוב, בתנאים שבהם המוצר יפעל.
| מדידה | מה זה עונה | מה להקליט |
|---|---|---|
| משך ביצוע הדגם | כמה זמן נמשכת שיחת זמן הריצה הזו? | צורת קלט, דיוק, גבולות תזמון וגרסת זמן ריצה |
| זמן אחזור מקצה לקצה | בת כמה התצפית כשמסירת התוצאה? | זמן לכידה, עיבוד מקדים, עמידה בתור, מסקנות וזמן פלט |
| תפוקה מתמשכת | כמה תוצאות שהושלמו נמסרות לאורך זמן? | אורך הריצה, בקשות שהושלמו והורדת או דילוג על תשומות |
| דיוק היישום | האם המודל הפרוס עומד בדרישת המשימה? | ערכת אימות, מדד משימה וספי החלטה |
| התנהגות תרמית | האם התוצאה יציבה לאחר התחממות המערכת? | תנאי הסביבה, קירור, טמפרטורות ושעונים אם זמינים |
כתקציב להמחשה, אפליקציה שמקבלת פריים חדש בכל 40 מילי-שנייה חייבת לעמוד בקצב של 25 פריימים לשנייה אם היא מעבדת כל פריים. מדידת הסקת מסקנות של 12 אלפיות השנייה תשאיר את שאר התקציב לרכישה, הכנה ואספקה רק בתכנון מתוזמן מתאים. זה לא מוכיח עיכוב של 12 אלפיות השנייה של מצלמה לתוצאה. המספרים האלה הם דוגמה תכנונית, לא נמדדו ביצועים של ForgeEdge.
השתמש בשעון מונוטוני עבור משכי תוכנה. דווח על זמן אחזור חציוני וזנב במקום על תצפית מיטבית אחת, ושמר את המדידות הגולמיות. עבור מספר מצלמות, חשבו על עומס העבודה של כל הזרמים הפעילים, כולל פענוח, המרת תמונה, תנועת זיכרון והקלטה. תור שגדל לאורך המבחן מצביע על כך שהקיבולת הממוצעת היא מתחת לעומס העבודה הנכנס.
תסמיני פריסה נפוצים
| סימפטום | חקירה ראשונה |
|---|---|
| דגם נכון, תוויות או קופסאות שגויות | סדר צבעים, נורמליזציה, שינוי גודל/ריפוד, פריסת פלט ועיבוד לאחר |
| הדגם שהומר לא יכול לאתחל | בחירת יעד, תאימות זמן ריצה/נהגים ושלמות חפצי דגם |
| אמת מידה קצרה טובה, ביצועים מתמשכים גרועים | טמפרטורה, מצב כוח, לחץ זיכרון ועבודה מתחרה |
| זמן הסקה מקובל, תוצאות מאוחרות בעליל | לכידת חציצה, גיל תור, עותקים ותזמון פלט |
| פלט INT8 מאבד זיהויים שימושיים | כיסוי כיול, שקילות עיבוד מקדים ואימות ברמת המשימה |
הפוך את אב הטיפוס למוצר שניתן לחזור עליו
ארוז את הדגם, זמן הריצה ותצורת האפליקציה כגרסה מבוקרת. הגדר בדיקות הפעלה, דיווח על כשלים, שחזור ונתיב חזרה לאחור. שמור על מבחן קלט-עזר קטן שיכול לזהות פריסה שגויה לפני חיבור מצלמה. הפרד את בדיקת התוכנה הזו מבדיקת החיישנים הפיזיים, שמפעילה גם כבלים, דרייברים והגדרות חשיפה.
כאשר הלוח צריך מחברים שונים, מיזוג חשמל או ממשקי חיישנים, סקור את החלטה SoM לעומת SBC ואת תהליך עיצוב לוח נושא. החלטות אלו קובעות כיצד הדגמת מודל מוצלחת הופכת למערכת הניתנת לתחזוקה.
שאלות פריסה של RK3588 NPU
האם כל דגם ONNX יכול לפעול על ה-RK3588 NPU?
התאימות תלויה בגרף בפועל, בצורות, בפעולות ובשרשרת הכלים שנבחרה. צור תמיכה באמצעות המרה ואימות במכשיר של הדגם שאתה מתכוון לשלוח.
האם דירוג מאיץ מפורסם מנבא FPS של אפליקציה?
לא. הרשת, הדיוק, התנהגות הזיכרון, העיבוד המקדים וזמן הריצה קובעים את התפוקה הנמדדת של האפליקציה. השתמש בעומס העבודה היעד ובנתיב הנתונים המלא שלו בעת השוואת פלטפורמות.
האם עלי לבצע אופטימיזציה של הרשת העצבית תחילה?
קודם כל פרופיל. אם רכישה, המרת תמונה או תור שולטים, לצמצום זמן ביצוע המודל עשויה להיות השפעה מועטה על גיל התוצאה שחווית האפליקציה.
השוואת משימת הראייה הממוחשבת השלמה
עבור יישום זיהוי אובייקטים, מדוד לכידת מצלמה, שינוי גודל ונורמליזציה, הסקת NPU, פענוח פלט ומסירת ההחלטה. דווח על גרסת הדגם, רזולוציית הקלט, הדיוק, סף הביטחון ומערך הנתונים להערכה עם תוצאת התזמון. אחרת, שני מדדים דומים לכאורה edge AI עשויים לתאר משימות שונות.
בדוק את הגרף המיוצא ואת האופרטורים הנדרשים באמצעות שרשרת הכלים RKNN שנבחרה לפני התחייבות לארכיטקטורת מודל. בדוק את הדיוק לאחר קוונטיזציה והתנהגות במהלך ביצוע מתמשך, לא רק אם ההמרה מצליחה. לזיהוי אובייקט, לפילוח ולסיווג יש עלויות עיבוד פלט שונות; לאמת את עומס העבודה בפועל שנבחר עבור הפרויקט.
השווה תפקידי עיצוב של FPGA, NPU ו-MPU
הפניות טכניות
היקפו את עומס העבודה של edge AI.
שתף את הדגם, רזולוציית הקלט, ממשקי המצלמה, קצב התוצאה הנדרש ומעטפת הספק. אנו יכולים להעריך את עבודת האינטגרציה סביב פלטפורמת קצה המבוססת על RK3588.
