Wattson হল একটি সফ্টওয়্যার-ভিত্তিক টুল যা হার্ডওয়্যার ব্লকের (যেমন CPU এবং GPU) পাওয়ার এবং এনার্জি এস্টিমেট সম্পর্কিত ট্রেস-ভিত্তিক বিশ্লেষণ প্রদান করে। এটি সেইসব অ্যাপের জন্য করা হয় যেগুলি কাজ করে এমন Android ডিভাইসে চলে। বিদ্যুৎ পরীক্ষা যাতে পারফর্ম্যান্স পরীক্ষার মতোই সহজ, স্কেলেবল ও রিপ্রোডিউসিবল হয়, সেই জন্য Wattson-কে ডিজাইন করা হয়েছে। এর ফলে বিদ্যুৎ মাপার সাথে ঐতিহ্যগতভাবে যুক্ত থাকা গুরুত্বপূর্ণ হার্ডওয়্যার সংক্রান্ত চ্যালেঞ্জগুলি কাটিয়ে ওঠা যায়।
পাওয়ার টেস্টিং সংক্রান্ত চ্যালেঞ্জ
পারফর্ম্যান্স বিশ্লেষণ স্ট্যান্ডার্ড ডেভেলপমেন্ট ডিভাইসের মাধ্যমে করা যেতে পারে, তবে পাওয়ার পরীক্ষা করার সময় উল্লেখযোগ্য চ্যালেঞ্জ থাকে:
- জটিল হার্ডওয়্যার: পাওয়ার টেস্টিংয়ের জন্য দামি, কাস্টম-বিল্ট, মাপার হার্ডওয়্যার প্রয়োজন হয়, যা সেট-আপ ও ক্যালিব্রেশন সংক্রান্ত সমস্যার জন্য দায়ী।
- সীমিত স্কেলেবিলিটি: এই হার্ডওয়্যারের খরচ ও রক্ষণাবেক্ষণ একটি টেস্ট ল্যাব জুড়ে এটিকে স্কেল করা কঠিন করে তোলে।
- পুনরুৎপাদনযোগ্য নয়: বিদ্যুৎ খরচ উৎপাদন সংক্রান্ত পার্থক্য, চারপাশের তাপমাত্রা ও হার্ডওয়্যার ক্যালিব্রেশন সংক্রান্ত বিষয়গুলির উপর নির্ভর করে, এর ফলে ফলাফল একইভাবে বারবার পাওয়া কঠিন হয়ে পড়ে।
- কোর্স অ্যাট্রিবিউশন: সেরা হার্ডওয়্যার থাকলেও, পাওয়ার অ্যাট্রিবিউশন প্রায়ই সম্পূর্ণ ডিভাইসে বা বড়জোর নির্দিষ্ট পাওয়ার রেলে সীমাবদ্ধ থাকে, যার ফলে কোন সফ্টওয়্যার থ্রেড বিদ্যুতের ব্যবহারের জন্য দায়ী তা সঠিকভাবে চিহ্নিত করা কঠিন হয়ে পড়ে।
Wattson: সফ্টওয়্যারের মাধ্যমে পাওয়ার বিশ্লেষণ
Wattson এই পাওয়ার বিশ্লেষণ সংক্রান্ত চ্যালেঞ্জের সমাধান করে, বিশ্লেষণকে হার্ডওয়্যার থেকে সফ্টওয়্যারে সরিয়ে নিয়ে গিয়ে। Wattson-কে Perfetto-এর উপরে তৈরি করা হয়েছে, এটি Android-এর সিস্টেম-ওয়াইড ট্রেসিং টুল। এর সাহায্যে হার্ডওয়্যার ব্লক অ্যাক্টিভিটি বিশ্লেষণ করা যায় এবং কোনও এক্সটার্নাল পরিমাপের সরঞ্জাম ছাড়াই হাই-ফিডেলিটি পাওয়ার এস্টিমেট প্রদান করা যায়।
Wattson কীভাবে কাজ করে
Wattson, Perfetto-এর মাধ্যমে ক্যাপচার করা বিদ্যমান কার্নেল ট্রেসপয়েন্ট ব্যবহার করে, বিশেষ করে cpufreq, cpuidle,
এবং থ্রেড শিডিউলিং ইভেন্ট। এই ট্রেস ডেটা প্রসেস করার মাধ্যমে, Wattson প্রতিটি হার্ডওয়্যার ব্লকের জন্য বিস্তারিত, টাইম-সিরিজ পাওয়ারের অনুমান তৈরি করে।
এই পদ্ধতির মূল সুবিধাগুলির মধ্যে রয়েছে:
- সেট-আপের জন্য কোনও খরচ নেই: Wattson-এর জন্য অতিরিক্ত কোনও হার্ডওয়্যার বা খরচ প্রয়োজন নেই। আপনি Perfetto ট্রেস ক্যাপচার করতে পারলে, Wattson ব্যবহার করতে পারবেন।
- থ্রেড-লেভেল অ্যাট্রিবিউশন: ডেভেলপাররা আলাদা আলাদা থ্রেডের জন্য শক্তি খরচ সংক্রান্ত আনুমানিক হিসেব দেখতে পান, যা টার্গেট করা অপ্টিমাইজেশনকে সক্ষম করে।
- হাই রেজোলিউশন ও ফিডেলিটি: Wattson-এর এস্টিমেট গ্রাউন্ড-ট্রুথ হার্ডওয়্যার পরিমাপের সাথে অত্যন্ত ভালোভাবে কোরিলেট করে, যা এটিকে A/B টেস্টিং ও তুলনামূলক বিশ্লেষণের জন্য নির্ভরযোগ্য করে তোলে।
- স্কেলেবিলিটি: Wattson-কে অটোমেটেড টেস্টিং এবং কন্টিনিউয়াস ইন্টিগ্রেশন (CI) পাইপলাইনে ইন্টিগ্রেট করা যেতে পারে যাতে পাওয়ার রিগ্রেশন আগে থেকেই শনাক্ত করা যায়।
যেসব ডিভাইসে এটি দেখা যাবে
কাজ করে এমন SoC-এর মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত:
| প্রস্তুতকারক | SoC | ro.soc.model | উদাহরণ হিসেবে ডিভাইস |
|---|---|---|---|
| Tensor G1 | Tensor | Pixel 6, 6 Pro ও 6a | |
| Tensor G4 | Tensor G4 | Pixel 9, 9 Pro, 9 Pro XL, 9 Pro Fold এবং 9a | |
| G5 | Tensor G5 | Pixel 10, 10 Pro, 10 Pro XL এবং 10 Pro Fold | |
| Qualcomm | SW5100 | মোনাকো | Pixel Watch 2, 3 ও 4 |
| SXR2230P | SXR2230P | Galaxy XR | |
| SM8750 | SM8750 | Samsung S25 | |
| MediaTek | MT6897 | MT6897 | Transsion Infinix Note 50 Pro+ 5G |
অতিরিক্ত ডিভাইসের জন্য সহায়তা পেতে, wattson-external@google.com আইডিতে যোগাযোগ করুন।
এর পরে কী হবে?
- আপনার অ্যাপের বিদ্যুতের ব্যবহার বিশ্লেষণ করতে, ট্রেস সংগ্রহ ও বিশ্লেষণ করুন দেখুন।
- প্রশ্ন বা মতামত জানাতে, ডেভেলপমেন্ট টিমের সাথে যোগাযোগ করুন: wattson-external@google.com