For the complete documentation index, see llms.txt. This page is also available as Markdown.

Workflow प्रोफ़ाइलिंग

Workflow निष्पादन समय मापें और Chrome-संगत प्रोफ़ाइलिंग ट्रेस के साथ बाधाओं की पहचान करें।

आप अपने Workflow के निष्पादन समय को मापने और प्रदर्शन बाधाओं की पहचान करने के लिए प्रोफाइलिंग सक्षम कर सकते हैं। प्रोफाइलिंग ट्रेस विज़ुअलाइज़ेशन के लिए Chrome के अंतर्निहित ट्रेसिंग टूल के साथ संगत हैं।

उदाहरण Workflow

इस गाइड में दिए गए स्क्रीनशॉट निम्नलिखित workflow को उदाहरण के रूप में उपयोग करते हैं; इसमें 2x object detection, dynamic cropping, एक Google Gemini call, और कई visualization steps शामिल हैं:

Example workflow in the Roboflow editor
नीचे दिए गए profiling screenshots के लिए उपयोग किया गया उदाहरण Workflow

Inference SDK के साथ Profiling

HTTP client के माध्यम से workflows चलाते समय profiling सक्षम करने के लिए, आपको पहले self-hosted चलाना होगा Inference Server के साथ ENABLE_WORKFLOWS_PROFILING=True env variable। फिर आप सेट करके HTTP client के माध्यम से workflows चलाते समय profiling सक्षम कर सकते हैं enable_profiling=True:

जब profiling सक्षम होती है, तो trace files स्वचालित रूप से डिफ़ॉल्ट रूप से इसमें सहेजी जाती हैं ./inference_profiling/ । प्रत्येक trace file का नाम होता है workflow_execution_tack_{timestamp}.json.

Profiling Traces देखना

Profiling traces Chrome Tracing Format में सहेजे जाते हैं। उन्हें विज़ुअलाइज़ करने के लिए:

  1. Chrome खोलें और यहाँ जाएँ chrome://tracing/.

  2. क्लिक करें Load और अपनी trace file चुनें (उदाहरण के लिए, workflow_execution_tack_2026_03_30_10_46_04.json).

  3. प्रत्येक workflow step के निष्पादन समय की जाँच करने के लिए timeline view का उपयोग करें।

किसी भी span पर क्लिक करने से उसकी duration, category, और arguments दिखते हैं - जैसे कि किस block का step_execution आप देख रहे हैं:

Chrome tracing timeline with a selected step

अधिकांश समय 2x object detection (process 57) और Gemini call (process 78) में खर्च हुआ। यदि आप zoom-in करते हैं, तो object detection steps के बीच अन्य steps (detection offset, dynamic cropping, visualization, आदि) देख सकते हैं:

Chrome tracing aggregated statistics view

मुख्य विवरण

विवरण
मान

ट्रेस फ़ॉर्मेट

JSON, Chrome के साथ संगत chrome://tracing/ टूल

आउटपुट स्थान

./inference_profiling/ डिफ़ॉल्ट रूप से (कॉन्फ़िगर करने योग्य)

फ़ाइल नामकरण

workflow_execution_tack_{YYYY_MM_DD_HH_MM_SS}.json

सीमाएँ

  • कम्पाइलेशन ओवरहेड: Workflow compilation 10-25ms की latency जोड़ती है, जो छोटे/तेज़ models के लिए महत्वपूर्ण है जहाँ GPU inference time तुलनीय होता है। यह ओवरहेड video processing के लिए केवल शुरुआत में एक बार होता है।

  • Execution engine latency: Workflows Execution Engine प्रति frame लगभग 1-2ms की nominal latency जोड़ता है।

  • Dynamic blocks: Dynamic blocks का उपयोग करने वाले self-hosted deployments को pydantic model rebuilding के कारण प्रति request +100-140ms latency का अनुभव हो सकता है। यह hosted platform या video processing पर लागू नहीं होता, जहाँ compilation एक बार होता है।

  • Model block dominance: आम तौर पर निष्पादन समय का लगभग 95% स्वयं model inference में व्यतीत होता है, जिसमें अतिरिक्त data transformations और metadata management शामिल हैं।

Performance Tips

  • Workflow definitions डिफ़ॉल्ट रूप से 15 मिनट के लिए cached रहती हैं। आवश्यकता होने पर उपयोग करें use_cache=False में run_workflow() caching को बायपास करने के लिए।

  • Video processing के लिए, compilation overhead नगण्य है क्योंकि यह केवल शुरुआत में एक बार होता है।

  • अपने workflows का प्रोफाइल करें ताकि यह पहचान सकें कि बाधाएँ model inference, data transformations, या workflow orchestration में हैं या नहीं।

अंतिम अपडेट

क्या यह उपयोगी था?