time
প্রদত্ত কমান্ডটি কত CPU সময় নেয় তা নির্ধারণ করতে চাইলে আপনি একটি উজ্জ্বল কমান্ড command
আমি অনুরূপ কিছু সন্ধান করছি যা প্রোগ্রামের আই / ও ডিস্ক এবং যে কোনও শিশুদের পরিমাপ করতে পারে। প্রাথমিকভাবে এটি ক্যাশ হওয়া আই / ও এর মধ্যে পার্থক্য করা উচিত (এবং ফলে ডিস্কটি কাটেনি) এবং আই / ও যে ক্যাশে ছিল না।
সুতরাং আমি করতে চাই:
iomeassure my_program my_args
এবং এর মতো আউটপুট পান:
Cached read: 10233303 Bytes
Cached write: 33303 Bytes # This was probably a tmp file that was erased before making it to the disk
Non-cached read: 200002020 Bytes
Non-cached write: 202020 Bytes
আমি দিকে তাকিয়ে আছে vmstat
, iostat
আর sar
, কিন্তু এই কেউই একটি একক প্রক্রিয়া এ খুঁজছেন। পরিবর্তে তারা পুরো সিস্টেম তাকান।
আমি তাকিয়েছি iotop
, কিন্তু এটি আমাকে কেবল এই তাত্ক্ষণিকভাবে একটি ভিউ দেয়।
--- সম্পাদনা ---
স্ন্যাপের উত্তর কাছাকাছি মনে হচ্ছে
'ফাইল সিস্টেম ইনপুটস:' হ'ল 512-বাইট ব্লকে অ-ক্যাশেড পঠন।
'ফাইল সিস্টেম আউটপুটস:' হ'ল 512-বাইট ব্লকে ক্যাশে লেখা।
আপনি এর সাথে ক্যাশেটি খালি জোর করতে পারবেন:
sync ; echo 3 | sudo tee /proc/sys/vm/drop_caches >/dev/null
আমি এটি দিয়ে পরীক্ষা করেছি:
seq 10000000 > seq
/usr/bin/time -v bash -c 'perl -e "open(G,\">f\"); print G <>;close G; unlink \"f\";" seq'