অ্যান্ড্রয়েড জিপিইউ ইন্সপেক্টর কুইকস্টার্ট

Android GPU Inspector (AGI) ব্যবহার করে আপনার অ্যান্ড্রয়েড অ্যাপে সিস্টেম প্রোফাইলিং এবং ফ্রেম প্রোফাইলিং কীভাবে সঞ্চালন করবেন এই বিষয়টি বর্ণনা করে।

এই কুইকস্টার্টটি ডেভেলপারদের জন্য তৈরি করা হয়েছে যারা অ্যান্ড্রয়েডে গ্রাফিক্স ডেভেলপমেন্টের সাথে পরিচিত৷

কম্পিউটারের প্রয়োজনীয়তা

যে কম্পিউটারটি AGI চালায় তাকে অবশ্যই এই প্রয়োজনীয়তাগুলি পূরণ করতে হবে:

AGI ডাউনলোড এবং ইনস্টল করুন

আপনার অপারেটিং সিস্টেমের জন্য AGI ডাউনলোড এবং ইনস্টল করুন।

অ্যান্ড্রয়েড অ্যাপের প্রয়োজনীয়তা

এই বিভাগটি Android অ্যাপের প্রয়োজনীয়তা বর্ণনা করে যা প্রোফাইল করা হচ্ছে:

  • আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশন ডিবাগযোগ্য হতে হবে; অ্যাপের অ্যান্ড্রয়েড ম্যানিফেস্টে ডিবাগযোগ্য অ্যাট্রিবিউটটি true সেট করতে হবে। এই বৈশিষ্ট্যটি গ্রাফিক্স ড্রাইভার থেকে সঠিক যন্ত্রগুলি সক্ষম করে। Vulkan অ্যাপ্লিকেশনের জন্য, এই বৈশিষ্ট্যটি AGI কে অ্যাপ্লিকেশন শুরু হলে নিজস্ব Vulkan স্তর যোগ করতে সক্ষম করে।

    <application [...] android:debuggable="true">
    

যদি আপনার অ্যাপটি ভলকান নেটিভভাবে ব্যবহার করে, তাহলে AGI এরও নিম্নলিখিতগুলি প্রয়োজন:

  • আপনার অ্যাপে ভলকান যাচাইকরণ স্তরগুলি সক্রিয় থাকতে হবে। যদি সেগুলি সক্ষম না করা থাকে, তাহলে আপনি নিম্নলিখিত কমান্ডগুলি চালাতে পারেন যাতে আপনার অ্যাপটিকে AGI apk ( com.google.android.gapid.<abi> ):

    app_package=<YOUR APP PACKAGE NAME HERE>
    abi=arm64v8a # Possible values: arm64v8a, armeabi-v7a, x86
    
    adb shell settings put global enable_gpu_debug_layers 1
    adb shell settings put global gpu_debug_app ${app_package}
    adb shell settings put global gpu_debug_layer_app com.google.android.gapid.${abi}
    adb shell settings put global gpu_debug_layers VK_LAYER_KHRONOS_validation
    

    যখন আপনি প্রোফাইলিং সম্পন্ন করেন তখন নিম্নলিখিত কমান্ডগুলির সাহায্যে এই বৈধতা স্তরগুলি অক্ষম করতে পারে:

    adb shell settings delete global enable_gpu_debug_layers
    adb shell settings delete global gpu_debug_app
    adb shell settings delete global gpu_debug_layers
    adb shell settings delete global gpu_debug_layer_app
    
  • Vulkan যাচাইকরণ স্তরগুলি সক্রিয় থাকা অবস্থায় আপনার অ্যাপটি অবশ্যই কোনো সতর্কতা বা ত্রুটির প্রতিবেদন করবে না। প্রোফাইল করার আগে যেকোন ভলকান যাচাইকরণ ত্রুটি ঠিক করুন।

  • আপনি যদি বিটা GPU ড্রাইভার ব্যবহার করেন, তাহলে Android ম্যানিফেস্টের <application> ট্যাগে নিম্নলিখিত মেটাডেটা অন্তর্ভুক্ত করুন:

    <meta-data
              android:name="com.android.graphics.developerdriver.enable"
              android:value="true" />
    

অ্যান্ড্রয়েড ডিভাইসের প্রয়োজনীয়তা

AGI এর নিম্নলিখিত Android ডিভাইসের প্রয়োজনীয়তা রয়েছে:

ডিভাইসের বৈধতা

AGI-এর জন্য একটি সামঞ্জস্যপূর্ণ GPU ড্রাইভার প্রয়োজন। এটি বৈধ প্রোফাইলিং ডেটা সরবরাহ করে তা নিশ্চিত করার জন্য, AGI একটি বৈধতা পরীক্ষা চালায় যখন আপনি প্রথমবার একটি নতুন ডিভাইস সংযোগ করেন, যা প্রায় দশ সেকেন্ড সময় নেয়। চেক পাস করার পরে, আপনি Android অ্যাপগুলি প্রোফাইল করতে ডিভাইসটি ব্যবহার করতে পারেন।

বৈধকরণ প্রক্রিয়া চলাকালীন ডিভাইসটিকে বিরক্ত করবেন না। এর ফলে ডিভাইসটির বৈধতা ব্যর্থ হতে পারে। যদি একটি ডিভাইস যাচাইকরণ ব্যর্থ হয় কিন্তু সঠিকভাবে সেট আপ করা হয়, আপনি ডিভাইসটি পুনরায় নির্বাচন করে যাচাইকরণের জন্য পুনরায় চেষ্টা করতে পারেন।

বৈধকরণ একটি ডিভাইসের জন্য একটি এককালীন পদক্ষেপ, এবং ফলাফল AGI এর ভবিষ্যতে ব্যবহারের জন্য ক্যাশে করা হয়। যাইহোক, ডিভাইস সেটআপ পরিবর্তন হলে AGI আবার বৈধতা চালাবে, যেমন GPU ড্রাইভার বা Android সংস্করণ আপডেট করা হয়।

যদি একটি ডিভাইস একটি সমর্থিত ডিভাইস হিসাবে তালিকাভুক্ত হয়, আপনি AGI বৈধতা পাস করার আশা করতে পারেন। ডিভাইসটি তালিকাভুক্ত না থাকলে, এর GPU ড্রাইভার সম্ভবত AGI-এর সাথে বেমানান।

আপনার ডিভাইস সমর্থিত কিন্তু বৈধতা ব্যর্থ হলে

নিশ্চিত করুন যে আপনি পূর্ববর্তী বিভাগে বর্ণিত সমস্ত Android প্রয়োজনীয়তা এবং কম্পিউটারের প্রয়োজনীয়তাগুলি পূরণ করেছেন এবং ডিভাইসটি একটি USB কেবল দিয়ে কম্পিউটারের সাথে সঠিকভাবে সংযুক্ত রয়েছে৷

সমস্ত প্রয়োজনীয়তা পূরণ করা হলে, আচরণ বর্ণনা করে আমাদের GitHub সংগ্রহস্থলে একটি সমস্যা ফাইল করুন

আপনার ডিভাইস সমর্থিত না হলে

আরও ডিভাইসের জন্য সমর্থন যোগ করতে আমরা আমাদের OEM অংশীদারদের সাথে কাজ করছি। আপনি একটি ডিভাইসের জন্য সমর্থন অনুরোধ করতে আমাদের GitHub সংগ্রহস্থলে একটি সমস্যা ফাইল করতে পারেন।

প্রোফাইলিং ডেটা ক্যাপচার করুন

নিম্নলিখিত বিভাগগুলি বর্ণনা করে যে কীভাবে প্রোফাইলিং ডেটা ক্যাপচার করতে হয় এবং ফলাফলের ট্রেস ফাইলটি খুলতে হয় যাতে আপনি ফলাফলগুলি বিশ্লেষণ করতে পারেন।

অ্যান্ড্রয়েড সেটিংস কনফিগার করুন

আপনি প্রোফাইলিং শুরু করার আগে, আপনাকে অবশ্যই এই Android অ্যাপ এবং ডিভাইস সেটিংস কনফিগার করতে হবে, যা অ্যাপ এবং ডিভাইসটিকে প্রোফাইলে নির্দিষ্ট করে।

  1. একটি USB কেবল ব্যবহার করে, আপনার অ্যান্ড্রয়েড ডিভাইসটিকে আপনার কম্পিউটারে সংযুক্ত করুন৷

  2. আপনার কম্পিউটারে AGI চালু করুন।

    প্রথমবার যখন আপনি AGI চালু করেন, এটি স্বাগতম স্ক্রীন প্রদর্শন করে, যা আপনাকে adb এক্সিকিউটেবলের পথের জন্য অনুরোধ করে। AGI আপনার HOME ফোল্ডারের .agic ফাইলে এই সেটিংস সংরক্ষণ করে। আপনি যদি ইতিমধ্যেই এটি করে থাকেন, তাহলে আপনি এই ধাপটি এড়িয়ে যেতে পারেন।

    স্বাগতম পর্দা
    চিত্র 1: স্বাগতম পর্দা।
  3. পাথ টু অ্যাডবি ফিল্ডে অ্যাডবি এক্সিকিউটেবলের পাথ লিখুন। এই ক্ষেত্রটি অনুসরণ করা চেকবক্সগুলি ঐচ্ছিক৷

  4. লঞ্চ স্ক্রীন প্রদর্শন করতে শুরু করুন ক্লিক করুন।

    এজিআই লঞ্চ স্ক্রিন
    চিত্র 2: অ্যান্ড্রয়েড জিপিইউ ইন্সপেক্টর প্রধান লঞ্চ স্ক্রিন।
  5. লঞ্চ স্ক্রিনে, একটি নতুন ট্রেস ক্যাপচার করুন ক্লিক করুন। এটি ক্যাপচার একটি নতুন ট্রেস ডায়ালগ প্রদর্শন করে। বিকল্পভাবে, আপনি ক্যাপচার সিস্টেম প্রোফাইল ট্রেস বোতামে ক্লিক করতে পারেন।

    একটি নতুন ট্রেস ডায়ালগ ক্যাপচার করুন৷
    চিত্র 3: একটি নতুন ট্রেস ডায়ালগ ক্যাপচার করুন
  6. ডিভাইস এবং প্রকার বিভাগে, আপনি প্রোফাইল করতে চান এমন Android ডিভাইস নির্বাচন করুন। এটি ডিভাইস তালিকায় প্রদর্শিত না হলে, তালিকাটি রিফ্রেশ করতে পুনরায় লোড তীরটিতে ক্লিক করুন।

  7. অ্যাপ্লিকেশন বিভাগে, আপনি যে অ্যাপটি প্রোফাইল করতে চান সেটি নির্বাচন করুন। প্যাকেজে শুধুমাত্র একটি কার্যকলাপ থাকলে, আপনি কার্যকলাপের পরিবর্তে প্যাকেজ নির্বাচন করতে পারেন।

    AGI একটি নমুনা Vulkan অ্যাপ অন্তর্ভুক্ত করে। আপনার নিজের পরিবর্তে নমুনা অ্যাপ্লিকেশন ব্যবহার করতে, এই পদক্ষেপগুলি সম্পাদন করুন:

    1. অ্যাপ্লিকেশন ক্ষেত্রের পাশে ... বোতামে ক্লিক করুন।

      এটি ট্রেস করার জন্য একটি অ্যাপ্লিকেশন নির্বাচন করুন ডায়ালগ দেখায়, যা নির্বাচিত ডিভাইসে ট্রেসযোগ্য অ্যাপগুলির একটি তালিকা প্রদর্শন করে।

    2. ফিল্টার টেক্সট বক্সে, প্যাকেজের নামের মধ্যে gapid ধারণ করে এমন অ্যাপ্লিকেশনগুলি প্রদর্শন করতে gapid টাইপ করুন।

    3. প্যাকেজটি প্রসারিত করুন এবং com.google.android.gapid.VkSampleActivity নির্বাচন করুন এবং তারপর ওকে ক্লিক করুন।

      এটি আপনাকে ক্যাপচার এ নিউ ট্রেস ডায়ালগে ফিরিয়ে আনবে, যেখানে আপনার নির্বাচিত অ্যাপ দ্বারা তৈরি করা অ্যাপ্লিকেশন ফিল্ড রয়েছে।

  8. অ্যাপ্লিকেশন বিভাগে, অন্যান্য ক্ষেত্রগুলি খালি রাখুন।

  9. ওকে ক্লিক করুন।

এখন আপনি সিস্টেম এবং ফ্রেম প্রোফাইলিং সম্পাদন করতে AGI ব্যবহার করতে প্রস্তুত৷

একটি সিস্টেম প্রোফাইল

একটি সিস্টেম প্রোফাইল করতে, এই পদক্ষেপগুলি সম্পাদন করুন:

  1. AGI লঞ্চ স্ক্রিনে, ক্যাপচার সিস্টেম প্রোফাইল ডায়ালগ প্রদর্শন করতে একটি নতুন ট্রেস ক্যাপচার করুন ক্লিক করুন।

  2. টাইপ তালিকায়, সিস্টেম প্রোফাইল নির্বাচন করুন।

  3. শুরু এবং সময়কাল বিভাগে, স্টার্ট এ ম্যানুয়াল এবং সময়কাল 2 এ সেট করুন।

  4. ট্রেস অপশন বিভাগে, কনফিগার ক্লিক করুন। এটি প্রোফাইলিং বিকল্পগুলির একটি তালিকা প্রদর্শন করে।

    কনফিগ ডায়ালগ ক্যাপচার করুন
    চিত্র 4: ক্যাপচার সিস্টেম প্রোফাইল ডায়ালগে প্রোফাইলিং বিকল্পগুলি।
  5. আপনি ক্যাপচার করতে চান প্রোফাইলিং ডেটা নির্বাচন করুন।

  6. GPU বিভাগে, নির্বাচন করুন ক্লিক করুন

    এটি নির্বাচন করার জন্য কাউন্টারগুলির একটি তালিকা প্রদর্শন করে।

    কাউন্টার কনফিগারেশন
    চিত্র 5: কাউন্টার নির্বাচন করা।
  7. ডিফল্ট কাউন্টারগুলির সেট নির্বাচন করতে ডিফল্ট ক্লিক করুন, এবং প্রোফাইলিং বিকল্পগুলি ফেরত দিতে ওকে ক্লিক করুন।

  8. মূল ক্যাপচার সিস্টেম প্রোফাইল ডায়ালগে ফিরে যেতে ওকে ক্লিক করুন।

  9. আউটপুট বিভাগে, প্রোফাইলিংয়ের সময় তৈরি হওয়া ট্রেস ফাইলগুলি সংরক্ষণ করতে একটি আউটপুট ডিরেক্টরি নির্বাচন করুন। ফাইলের নাম ক্ষেত্রটি স্বয়ংক্রিয়ভাবে পূরণ হওয়া উচিত, তবে আপনি এটি সম্পাদনাও করতে পারেন।

  10. ওকে ক্লিক করুন। এটি অ্যান্ড্রয়েড ডিভাইসে নির্বাচিত অ্যাপটি শুরু করে এবং একটি স্টার্ট বোতাম সহ একটি পপ-আপ উইন্ডো প্রদর্শন করে।

  11. প্রোফাইলিং ডেটা ক্যাপচার করা শুরু করতে স্টার্ট বোতামে ক্লিক করুন এবং প্রক্রিয়াটি শেষ হওয়ার জন্য কয়েক সেকেন্ড অপেক্ষা করুন।

  12. ওপেন ট্রেস ক্লিক করুন। প্রদর্শিত প্রাথমিক দৃশ্যটি সিস্ট্রেসের অনুরূপ।

    সিস্টেম প্রোফাইল ট্রেস
    চিত্র 6: সিস্টেম প্রোফাইলার UI।

    সিস্ট্রেসে উপলভ্য ডেটা ছাড়াও, AGI GPU কর্মক্ষমতা তথ্যও দেখায়। সিস্টেম প্রোফাইলিং ডেটা দেখার বিষয়ে আরও তথ্যের জন্য, একটি AGI সিস্টেম প্রোফাইল দেখুন দেখুন।

অতিরিক্ত সেটিংস সম্পর্কে তথ্যের জন্য, সিস্টেম প্রোফাইলিং বিকল্পগুলি দেখুন।

একটি ফ্রেম প্রোফাইল

আপনার অ্যাপ থেকে একটি পৃথক ফ্রেম প্রোফাইল করতে, এই পদক্ষেপগুলি সম্পাদন করুন:

  1. এজিআই লঞ্চ স্ক্রিনে, ক্যাপচার এ নিউ ট্রেস ডায়ালগ প্রদর্শন করতে ক্যাপচার একটি নতুন ট্রেস ক্লিক করুন। বিকল্পভাবে, আপনি ক্যাপচার ফ্রেম প্রোফাইল ট্রেস বোতামে ক্লিক করতে পারেন।

  2. টাইপ তালিকায়, আপনার অ্যাপ কোন গ্রাফিক্স API ব্যবহার করে তার উপর নির্ভর করে ANGLE-তে Vulkan বা OpenGL নির্বাচন করুন। নিশ্চিত করুন যে আপনি সঠিকটি বেছে নিচ্ছেন, অন্যথায় AGI কোনো গ্রাফিক্স কমান্ড ক্যাপচার করবে না।

  3. শুরু এবং সময়কাল বিভাগে, স্টার্টম্যানুয়াল সেট করুন। আপনি ক্যাপচার ফ্রেম প্রোফাইল ট্রেস বোতামে ক্লিক করলে, এই ধাপটি ইতিমধ্যেই সম্পন্ন হয়েছে।

  4. আউটপুট বিভাগে, ট্রেস ফাইল সংরক্ষণ করতে একটি আউটপুট ডিরেক্টরি নির্বাচন করুন। ফাইলের নাম ক্ষেত্রটি স্বয়ংক্রিয়ভাবে পূরণ হওয়া উচিত, তবে আপনি এটি সম্পাদনাও করতে পারেন।

  5. ঐচ্ছিক: কিছু অ্যাপ একটি ভিন্ন প্রক্রিয়া তৈরি করে যা সমস্ত গ্রাফিক্স প্রক্রিয়াকরণ করে। সেই প্রক্রিয়াটি ক্যাপচার করতে, এর নাম উল্লেখ করুন।

  6. ওকে ক্লিক করুন। এটি অ্যান্ড্রয়েড ডিভাইসে আপনার অ্যাপ শুরু করে এবং একটি স্টার্ট বোতাম সহ একটি পপ-আপ উইন্ডো প্রদর্শন করে।

  7. স্টার্ট বোতামে ক্লিক করুন এবং প্রোফাইলিং সম্পূর্ণ হওয়ার জন্য কয়েক সেকেন্ড অপেক্ষা করুন।

  8. প্রোফাইলিং ডেটা দেখতে ওপেন ট্রেস-এ ক্লিক করুন। ফ্রেম প্রোফাইলার UI-তে প্রতিটি ফলক সম্পর্কে তথ্যের জন্য, ফ্রেম প্রোফাইলিং ওভারভিউ দেখুন।

অতিরিক্ত সেটিংস সম্পর্কে তথ্যের জন্য, ফ্রেম প্রোফাইলিং বিকল্পগুলি দেখুন।