Saat mencari kecocokan dengan grep
, saya sering melihat bahwa pencarian berikutnya memakan waktu jauh lebih sedikit daripada yang pertama - misalnya 25s vs 2s. Jelas, itu bukan dengan menggunakan kembali struktur data dari jalankan terakhir - yang seharusnya sudah dialokasikan. Menjalankan time
perintah grep
, saya perhatikan fenomena menarik:
real 24m36.561s
user 1m20.080s
sys 0m7.230s
Kemana sisa waktu pergi? Adakah yang bisa saya lakukan untuk membuatnya berlari cepat setiap saat? (mis. meminta proses lain membaca file, sebelum grep
mencarinya.)
TL;DR
jawabannya adalah "[blok menunggu] I / O".