কম্পিউটার টিউটোরিয়াল

Linux-এ C++ কোড প্রোফাইলিং (Profiling C++ Code on Linux)

Linux-এ C++ প্রোগ্রাম প্রোফাইল করার জনপ্রিয় টুলগুলো:

১. Valgrind + Callgrind (সবচেয়ে জনপ্রিয়)

$ g++ -g -O2 hello.cpp -o hello
$ valgrind --tool=callgrind ./hello
# আউটপুট: callgrind.out.
$ kcachegrind callgrind.out.  # GUI ভিউয়ার

callgrind ফাংশন কল গ্রাফ, ইনস্ট্রাকশন কাউন্ট, ক্যাশে মিস ইত্যাদি দেখায়।

২. gprof (GCC Built-in)

$ g++ -pg -g -O2 hello.cpp -o hello
$ ./hello
$ gprof ./hello gmon.out > analysis.txt

-pg কম্পাইল টাইমে দিতে হয়। ফাংশন-লেভেল টাইমিং, কল কাউন্ট দেখায়।

৩. perf (Linux Kernel Tool - Hardware Counters)

$ g++ -g -O2 hello.cpp -o hello
$ perf record -g ./hello
$ perf report

হার্ডওয়্যার পারফরম্যান্স কাউন্টার (CPU সাইকেল, ক্যাশে মিস, ব্রাঞ্চ মিসপ্রিডিকশন) ব্যবহার করে। সিস্টেম-ওয়াইড প্রোফাইলিংও সম্ভব।

৪. Intel VTune / AMD uProf

ভেন্ডর-স্পেসিফিক এডভান্সড প্রোফাইলার (GUI, হটস্পট অ্যানালিসিস, থ্রেডিং অ্যানালিসিস)।

সুপারিশ: দ্রুত ফাংশন-লেভেল অনুমানের জন্য gprof বা perf। ডিটেইলড কল গ্রাফ এবং ক্যাশে অ্যানালিসিসের জন্য valgrind/callgrind। প্রোডাকশন/হার্ডওয়্যার-লেভেল অ্যানালিসিসের জন্য perf বা VTune।

  1. C++ দিয়ে কনসোল ক্লিয়ার করা

  2. লিনাক্সে C++ কম্পাইলার কীভাবে ইনস্টল করবেন?

  3. লিনাক্স চালালে Windows 10 কিভাবে ট্রাই করবেন

  4. Instagram QR কোড আবিষ্কার করুন: আপনার প্রোফাইলে ঝটপট অ্যাক্সেস