Benchmark CompiledModel API

LiteRT के बेंचमार्क टूल, परफ़ॉर्मेंस से जुड़ी इन अहम मेट्रिक के आंकड़े मेज़र और कैलकुलेट करते हैं:

  • शुरू होने में लगने वाला समय
  • वॉर्मअप की स्थिति में अनुमान लगाने में लगने वाला समय
  • स्थिर स्थिति का अनुमान लगाने में लगने वाला समय
  • शुरू होने के दौरान मेमोरी का इस्तेमाल
  • मेमोरी के इस्तेमाल का कुल डेटा

CompiledModel मानदंड टूल को C++ बाइनरी के तौर पर उपलब्ध कराया जाता है, benchmark_model. इस टूल को Android, Linux, macOS, Windows, और जीपीयू ऐक्सिलरेशन की सुविधा वाले एम्बेड किए गए डिवाइसों पर, शेल कमांड लाइन से चलाया जा सकता है.

पहले से बनी बैंचमार्क बाइनरी डाउनलोड करें

यहां दिए गए लिंक पर जाकर, कमांड-लाइन के लिए पहले से बनाए गए Nightly बाइनरी डाउनलोड करें:

सोर्स से बेंचमार्क बाइनरी बनाना

सोर्स से, बेंचमार्क बाइनरी बनाई जा सकती है.

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

Android NDK टूलचेन की मदद से बनाने के लिए, आपको पहले बिल्ड एनवायरमेंट सेट अप करना होगा. इसके लिए, इस गाइड में दिया गया तरीका अपनाएं. इसके अलावा, इस गाइड में बताए गए तरीके से, डॉकर इमेज का इस्तेमाल करें.

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 के सोर्स कोड में देखे जा सकते हैं.

जीपीयू ऐक्सेलरेटेड रेंडरिंग की परफ़ॉर्मेंस का आकलन करना

इन प्रीबिल्ट बाइनरी में, LiteRT GPU ऐक्सेलरेटर शामिल है. यह सुविधा,

  • Android: OpenCL
  • Linux: OpenCL और WebGPU (Vulkan के साथ काम करता है)
  • macOS: Metal
  • Windows: WebGPU (Direct3D की मदद से काम करता है)

GPU ऐक्सेलरेटर का इस्तेमाल करने के लिए, --use_gpu=true फ़्लैग पास करें.

प्रोफ़ाइल मॉडल ऑपरेशंस

बेंचमार्क मॉडल बाइनरी की मदद से, मॉडल ऑप्स को प्रोफ़ाइल किया जा सकता है. साथ ही, हर ऑपरेटर के एक्ज़ीक्यूशन टाइम की जानकारी पाई जा सकती है. ऐसा करने के लिए, इनवॉकेशन के दौरान फ़्लैग --use_profiler=true को benchmark_model पर पास करें.