প্রকল্প সম্পর্কে
pprof হলো প্রোফাইলিং ডেটার ভিজ্যুয়ালাইজেশন ও বিশ্লেষণের একটি টুল। এটি profile.proto ফরম্যাটে প্রোফাইলিং নমুনা পড়ে এবং ডেটা ভিজ্যুয়ালাইজ ও বিশ্লেষণে সাহায্য করার জন্য রিপোর্ট তৈরি করে, যা dot ভিজ্যুয়ালাইজেশন প্যাকেজের মাধ্যমে টেক্সট ও গ্রাফিক্যাল উভয় রিপোর্ট তৈরি করে।
profile.proto হলো একটি প্রোটোকল বাফার যা কলস্ট্যাক ও সিম্বলাইজেশন তথ্যের একটি সেট বর্ণনা করে। সাধারণ ব্যবহার হলো পরিসংখ্যানগত প্রোফাইলিং থেকে নমুনা করা কলস্ট্যাকের একটি সেট উপস্থাপন করা। প্রোফাইল স্থানীয় ফাইল থেকে বা HTTP-এর মাধ্যমে পড়া যায় এবং একই ধরনের একাধিক প্রোফাইল একত্রিত বা তুলনা করা যায়।
যদি প্রোফাইল নমুনায় মেশিন ঠিকানা থাকে, তাহলে pprof নেটিভ binutils টুল (addr2line এবং nm) ব্যবহার করে সেগুলো সিম্বলাইজ করতে পারে।
pprof তৈরি করতে একটি সমর্থিত সংস্করণের Go ডেভেলপমেন্ট কিট এবং গ্রাফিকাল ভিজ্যুয়ালাইজেশন তৈরির জন্য ঐচ্ছিকভাবে Graphviz প্রয়োজন। টুলটি `go install github.com/google/pprof@latest` কমান্ডের মাধ্যমে ইনস্টল করা যায়।
মৌলিক ব্যবহারের মধ্যে রয়েছে হটনেস অনুযায়ী সাজানো টেক্সট রিপোর্ট তৈরি, ওয়েব ব্রাউজারে খোলা SVG গ্রাফ তৈরি, ইন্টারঅ্যাকটিভ মোডে চালানো যেখানে ব্যবহারকারীরা ভিজ্যুয়ালাইজেশন ও পরিমার্জনের জন্য কমান্ড দিতে পারেন এবং `-http` ফ্ল্যাগ ব্যবহার করে ওয়েব ইন্টারফেসের মাধ্যমে চালানো যা একটি ইন্টারঅ্যাকটিভ ব্রাউজার-ভিত্তিক ইন্টারফেসসহ স্থানীয় ওয়েব সার্ভার শুরু করে।
pprof লিনাক্স perf টুল দ্বারা তৈরি `perf.data` ফাইলও পড়তে পারে, যা perf_data_converter প্যাকেজের perf_to_profile প্রোগ্রাম ব্যবহার করে। উইন্ডোজে, Go প্রোগ্রাম থেকে সংগৃহীত প্রোফাইলের ডিসঅ্যাসেম্বলি দেখতে executable-টি `go build -buildmode=exe` দিয়ে তৈরি করতে হবে এবং addr2line ও nm-এর মতো টুল পাওয়ার জন্য LLVM বা GCC ইনস্টল থাকতে হবে।
এটি একটি অফিসিয়াল Google পণ্য নয়।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.