השוואה בין ביצועים של CompiledModel API

הכלים להשוואה של LiteRT מודדים ומחשבים נתונים סטטיסטיים של מדדי הביצועים החשובים הבאים:

  • זמן האתחול
  • זמן ההסקה של מצב החימום
  • זמן ההסקה של מצב יציב
  • שימוש בזיכרון במהלך זמן האתחול
  • שימוש כולל בזיכרון

כלי ההשוואה לשוק CompiledModel מסופק כקובץ בינארי של C++‎‏, benchmark_model. אפשר להריץ את הכלי הזה משורת פקודה של מעטפת ב-Android,‏ Linux,‏ macOS,‏ Windows ובמכשירים מוטמעים עם הפעלת האצת GPU.

הורדה של קובצי השוואה לשוק של אפליקציות דומות שהוגדרו מראש

מורידים את הקבצים הבינאריים המוכנים מראש של שורת הפקודה מהקישורים הבאים:

בניית קובץ בינארי של השוואה לשוק ממקור

אפשר ליצור את קובץ ההשוואה הבינארי ממקור.

bazel build -c opt //litert/tools:benchmark_model

כדי לבצע build באמצעות ערכת הכלים של Android NDK, צריך להגדיר קודם את סביבת ה-build לפי המדריך הזה, או להשתמש בקובץ האימג' של Docker כמו שמתואר במדריך הזה.

bazel build -c opt --config=android_arm64 \
  //litert/tools:benchmark_model

הפעלת השוואה לשוק

כדי להריץ בדיקות השוואה, מריצים את הקובץ הבינארי מהמעטפת.

path/to/downloaded_or_built/benchmark_model \
  --graph=your_model.tflite \
  --num_threads=4

אפשרויות נוספות לפרמטרים מופיעות בקוד המקור של benchmark_model.

השוואת ביצועים של האצת GPU

הקבצים הבינאריים המוכנים מראש האלה כוללים את LiteRT GPU Accelerator. הוא תומך ב

  • ‫Android: OpenCL
  • ‫Linux: ‏ OpenCL ו-WebGPU (עם תמיכה של Vulkan)
  • ‫macOS: Metal
  • ‫Windows: WebGPU (עם גיבוי של Direct3D)

כדי להשתמש ב-GPU Accelerator, מעבירים את הדגל --use_gpu=true.

פעולות במודל פרופיל

קובץ הבינארי של מודל ההשוואה מאפשר גם ליצור פרופיל של פעולות המודל ולקבל את זמני הביצוע של כל אופרטור. כדי לעשות את זה, מעבירים את הדגל --use_profiler=true אל benchmark_model במהלך ההפעלה.