HLO অপ স্ট্যাটস টুল

প্রোফাইলিং সেশনের সময় সম্পাদিত হাই লেভেল অপ্টিমাইজার (HLO) অপারেশনগুলির পারফরম্যান্স পরিসংখ্যান দেখতে আপনি HLO Op Stats ব্যবহার করতে পারেন। প্রোফাইল করা সময়কালে আপনার HLO গ্রাফের মধ্যে সবচেয়ে বেশি সময়সাপেক্ষ অপারেশনগুলি হাইলাইট করে পারফরম্যান্স অপ্টিমাইজেশনের জন্য সম্ভাব্য লক্ষ্যগুলি সনাক্ত করার জন্য এই টুলটি মূল্যবান।

সমর্থিত প্ল্যাটফর্মগুলি

TPU এবং GPU উভয়ই সমর্থিত।

GPU-এর ক্ষেত্রে, HLO অপশনগুলির সাথে N:M সম্পর্ক থাকে যে কার্নেলগুলি আসলে কার্যকর হয়। কার্নেল স্তরের পরিসংখ্যানের জন্য, GPU কার্নেল পরিসংখ্যান টুলটি দেখুন।

HLO অপ স্ট্যাটস টুল কম্পোনেন্টস

HLO Op Stats টুলটিতে নিম্নলিখিত মূল উপাদানগুলি রয়েছে:

  • সারসংক্ষেপিত চার্ট বিভাগ : এই বিভাগে চার্ট রয়েছে যা প্রতি-অপারেশন টেবিলে নিম্নলিখিত উপায়ে বিস্তারিত ফলাফলের সারসংক্ষেপ করে:

    • HLO বিভাগের জন্য সময় শিরোনামের একটি পাই চার্ট যা বিভিন্ন বিভাগের HLO অপারেশন দ্বারা ব্যবহৃত সময়ের ভগ্নাংশ দেখায়।
    • একটি পাই চার্ট যার শিরোনাম "প্রতি HLO অপারেশনে সময়" যা বিভিন্ন HLO অপারেশন দ্বারা ব্যবহৃত সময়ের ভগ্নাংশ দেখায় (শীর্ষ-N অপারেশনগুলিতে ছোট করে, বাকিগুলি পাঠযোগ্যতা উন্নত করার জন্য "অন্যান্য" হিসাবে শ্রেণীবদ্ধ করা হয়েছে)।
    • রিমেটেরিয়ালাইজেশনে ব্যয় করা সময় শীর্ষক একটি পাই চার্ট যা রিমেটেরিয়ালাইজেশনের অংশ হিসেবে ব্যবহৃত অপারেশনগুলিতে ব্যয় করা মোট সময়ের ভগ্নাংশ দেখায়; XProf প্রোফাইলের সাথে সম্পর্কিত কম্পাইলার মেটাডেটা থেকে এই তথ্য পায়।
    • HLO বিভাগে পুনঃউপাদানের সময় ব্যয় করা হয়েছে শীর্ষক একটি পাই চার্ট যা HLO বিভাগগুলি দেখায় যেখানে পুনঃউপাদানের সময় (যদি থাকে) যায়।
    • "বাইরের সংকলনে সময় ব্যয় করা হয়েছে" শীর্ষক একটি চার্ট। "বাইরের সংকলন" হল একটি টেনসরফ্লো বৈশিষ্ট্য যা XLA গণনার মধ্যে কিছু নির্দিষ্ট অপারেশনকে অ্যাক্সিলারেটর ডিভাইসের পরিবর্তে হোস্ট CPU-তে স্বচ্ছভাবে চালানোর অনুমতি দেয় (যেমন, tf.summary বা tf.print যার জন্য I/O অ্যাক্সেস প্রয়োজন যা ডিভাইসটির নেই)।
    • মোট স্ব-সময় অনুসারে ক্রমানুসারে সমস্ত HLO ক্রিয়াকলাপের জন্য GFLOPS/s প্লট করার একটি চার্ট।
    • শুধুমাত্র TPU-এর জন্য, প্রতিলিপি গ্রুপ অনুসারে HLO-এর জন্য সময়: একটি ড্রপ ডাউন আপনাকে প্রোফাইলিং সেশনের সময় সম্পাদিত বিভিন্ন যৌথ ক্রিয়াকলাপ থেকে নির্বাচন করতে দেয়। সেই যৌথ অপারেশনের বিভিন্ন উদাহরণ বিভিন্ন প্রতিলিপি গ্রুপের মধ্যে সম্পাদিত হতে পারে (যেমন, AllGather ); একটি পাই চার্ট এই বিভিন্ন উদাহরণের মধ্যে সময়ের বন্টন দেখায়।

    XProf HLO অপ পরিসংখ্যান

  • HLO অপারেশন পরিসংখ্যান সারণী : এটি হল প্রাথমিক উপাদান, যা প্রোফাইলিং সেশনের সময় সম্পাদিত প্রতিটি HLO অপারেশনের একটি বিস্তারিত বিবরণ একটি সারণী বিন্যাসে উপস্থাপন করে। প্রতিটি স্বতন্ত্র HLO অপারেশনের জন্য একটি সারি থাকে এবং কলামগুলি সেই অপারেশন সম্পর্কিত বিভিন্ন বিবরণ ধারণ করে।

    • একটি ড্রপ-ডাউন নির্বাচক আপনাকে প্রতিটি HLO অপারেশনের জন্য কোন কলামগুলি কল্পনা করতে চান তা নির্ধারণ করতে দেয়।
    • আপনি দ্বিতীয় ড্রপ-ডাউন নির্বাচকের মাধ্যমে HLO Op বিভাগ অনুসারে সারিগুলি ফিল্টার করতে পারেন।
    • অনুসন্ধান বাক্সগুলি আপনাকে নির্দিষ্ট প্রোগ্রাম আইডি, এইচএলও অপ, এইচএলও অপ টেক্সট, অথবা ফ্রেমওয়ার্ক অপ নাম অনুসারে ফিল্টার করতে দেয়; ফিল্টারগুলি সংশ্লিষ্ট কলামের যেকোনো জায়গায় প্রদর্শিত প্রদত্ত স্ট্রিং নির্বাচন করে।

HLO অপারেশন পরিসংখ্যান সারণী বিবরণ

XProf HLO Op পরিসংখ্যান সারণী

HLO অপারেশন পরিসংখ্যান টেবিল সাজানোর জন্য আপনি যেকোনো কলামের শিরোনামে ক্লিক করতে পারেন। ডিফল্ট ক্রমটি অপের মোট স্ব-সময়ের উপর ভিত্তি করে (টেবিলে "র‍্যাঙ্ক" লেবেলযুক্ত)।

টেবিলটিতে প্রতিটি HLO অপারেশনের জন্য নিম্নলিখিত তথ্য রয়েছে:

  • প্রোগ্রাম আইডি : এই অপশনটি যে HLO মডিউলের সাথে যুক্ত তার একটি শনাক্তকারী
  • HLO Op বিভাগ : এগুলি মূলত XLA কম্পাইলার দ্বারা সংজ্ঞায়িত করা হয়; XProf অতিরিক্তভাবে কিছু ক্রিয়াকলাপ (যেমন, কনভোলিউশন ফিউশন) সনাক্ত এবং শ্রেণীবদ্ধ করার জন্য হিউরিস্টিক ব্যবহার করে।
  • HLO op নাম : XLA কম্পাইলার দ্বারা HLO অপারেশনের জন্য নির্ধারিত অনন্য নাম।
  • HLO অপ টেক্সট : XLA কম্পাইলার দ্বারা সরবরাহিত, এবং ইনপুট/প্যারামিটারের ধরণ এবং আকারের মতো বিশদ অন্তর্ভুক্ত করে।
  • ফ্রেমওয়ার্ক অপ নাম : ফ্রেমওয়ার্ক লেভেলে (যেমন, JAX) যে অপারেশনের ফলে এই HLO অপ তৈরি হচ্ছে।
  • ঘটনা : প্রোফাইলিং সময়কালে এই নির্দিষ্ট HLO অপারেশনটি মোট কতবার সম্পাদিত হয়েছিল।
  • মোট সময় (μs) : এই অপারেশনটি সম্পাদনের জন্য এর সমস্ত ঘটনা জুড়ে ব্যয় করা ক্রমবর্ধমান সময়। যদি এই অপারেশনে কোনও চাইল্ড অপারেশন থাকে (যেমন, একটি ফিউশনের মধ্যে), এই সময়টি সেই বাচ্চাদের মধ্যে ব্যয় করা সময়কে অন্তর্ভুক্ত করে।
  • গড় সময় (μs) : এই HLO অপারেশনের প্রতি সম্পাদনের গড় সময়, শিশুদের অপারেশনে ব্যয় করা যেকোনো সময় সহ, যদি থাকে।
  • মোট সেল্ফ টাইম (μs): এই HLO অপারেশনের মূল অংশের মধ্যে ব্যয় করা ক্রমবর্ধমান সময়, এর শিশু অপারেশনে ব্যয় করা যেকোনো সময় বাদ দিয়ে।
  • গড় সেল্ফ টাইম (μs): এই HLO অপারেশনের প্রতি সম্পাদনের গড় সময়, এর শিশু অপারেশনে ব্যয় করা যেকোনো সময় বাদ দিয়ে।
  • মোট সেল্ফ টাইম (%): সমস্ত অপশন জুড়ে ডিভাইসে মোট সময়ের শতাংশ হিসেবে অপশনের সেল্ফ টাইম।
  • ক্রমবর্ধমান মোট সেল্ফ টাইম (%): "র‍্যাঙ্ক" ক্রমে আগে প্রদর্শিত সমস্ত অপারেশনের জন্য মোট সেল্ফ টাইম (%) এর চলমান যোগফল।
  • DMA স্টল (%): ডাইরেক্ট মেমোরি অ্যাক্সেস (DMA) অপারেশনের কারণে মোট যে সময়ের মধ্যে অপারেশন স্থগিত ছিল তার শতাংশ।
  • FLOP, HBM, এবং অভ্যন্তরীণ TPU মেমোরির জন্য ব্যান্ডউইথ খরচ (ব্যবহার/সেকেন্ড) যদি উপলব্ধ থাকে (যেমন, CMEM শুধুমাত্র TPU v4 তে উপস্থিত থাকে)। এই সবগুলি কম্পাইলারের স্ট্যাটিক খরচ বিশ্লেষণ (সংখ্যা) এবং প্রোফাইল করা এক্সিকিউশন সময় (হর) ব্যবহার করে গণনা করা হয়।
  • মডেল GFLOPS/s: GFLOPs খরচ XLA কম্পাইলার দ্বারা গণনা করা হয়, এবং সময় প্রোফাইল দ্বারা পরিমাপ করা হয়।
  • নরমালাইজড GFLOPS/s: কম্পাইলার-কম্পিউটেড FLOP গুলিকে তার সংখ্যাসূচক নির্ভুলতার উপর ভিত্তি করে প্রতি-অপারেশন ভিত্তিতে স্বাভাবিক করে তোলে, এবং বিভিন্ন নির্ভুলতার জন্য ডিভাইস দ্বারা সমর্থিত পিক FLOP গুলিকেও। উদাহরণস্বরূপ, TPU v6e int8 তে bf16 এর তুলনায় দ্বিগুণ পিক FLOP গুলিকে সমর্থন করে; XProf ডিফল্টরূপে bf16 তে স্বাভাবিক করে।
  • মেমোরি BW: যেকোনো মেমোরি থেকে (যেমন, অন-চিপ TPU VMEM এবং HBM) অপ দ্বারা ব্যবহৃত বাইট/সেকেন্ডের সংখ্যা। XLA কম্পাইলার "বাইট" সংখ্যা প্রদান করে এবং প্রোফাইলে সময়কাল পরিমাপ করা হয়।
  • HBM BW: HBM থেকে বিশেষভাবে ব্যবহৃত বাইট/সেকেন্ডের সংখ্যা।
  • কর্মক্ষম তীব্রতা: ছাদরেখা বিশ্লেষণের জন্য সংজ্ঞায়িত প্রতি বাইটের FLOPS অনুপাত হিসাবে গণনা করা হয়।
  • কম্পিউট/মেমোরি বাউন্ড: রুফলাইন মডেলের উপর ভিত্তি করে, এই কলামটি নির্দেশ করে যে অপারেশনের কর্মক্ষমতা প্রাথমিকভাবে কম্পিউট ক্ষমতা বা মেমোরি ব্যান্ডউইথ দ্বারা সীমাবদ্ধ কিনা।
  • রিমেটেরিয়ালাইজেশন: অপটি রিমেটেরিয়ালাইজেশনের অংশ ছিল কিনা তা নির্দেশ করে।
  • বাইরের সংকলন: টেনসরফ্লো'র বাইরের সংকলন সুবিধা ব্যবহার করে হোস্ট সিপিইউতে অপটি চালানো হয়েছে কিনা তা নির্দেশ করে।
  • অটোটিউনড: XLA দ্বারা অপটি অটো-টিউনড ছিল কিনা তা নির্দেশ করে। আরও তথ্যের জন্য, অটোটিউনিং এবং স্থায়ী অটোটিউনিং দেখুন।