ฉันกำลังกำหนดรหัสบางเวลาและฉันต้องการที่จะบอกว่าเวลาที่ใช้ไปเป็นเพราะการอ่านข้อมูลจากดิสก์ ฉันไม่เชื่อผลลัพธ์ที่timeให้ฉัน ตัวอย่างเช่นฉันมีไฟล์ 1.3GB และถ้าฉันเรียกใช้wcฉันจะได้รับ
time wc largefile.file 
  50000000  150000000 1316665179 largefile.file
real    0m26.835s
user    0m18.363s
sys     0m0.495s
อาจไม่ได้ใช้เวลา <0.5 วินาทีในการอ่านไฟล์จากฮาร์ดไดรฟ์เก่าของฉัน
มีวิธีการที่เชื่อถือได้ในการบอกเวลาเท่าไรที่เป็นเพราะ I / O หรือไม่?
timeรายละเอียดเพิ่มเติมสำหรับเหตุผลที่ผมไม่เห็นว่าการตีความ ถ้าฉันทำ
time cat largefile.file > /dev/null
real    0m24.230s
user    0m0.060s
sys     0m1.473s
ถ้าอย่างนั้นก็เป็นการดึงดูดที่จะบอกว่าประมาณ 22.5 วินาทีใช้เวลาใน I / O แต่wcตัวเลขจากด้านบนบอกเป็นนัยว่ามันคือ 8 วินาที ตัวเลขทั้งสองนี้ไม่สอดคล้องกัน
sync && sudo bash -c 'echo  3 > /proc/sys/vm/drop_caches'ก่อนและได้ผลเหมือนกัน มันไม่ใช่เอฟเฟ็กต์แคชเนื่องจากเวลาโดยรวมเหมือนกัน