Tại sao tiện ích wc quá chậm?
Khi tôi chạy nó trên một tệp lớn, sẽ mất khoảng 20 lần so với md5sum:
MyDesktop:/tmp$ dd if=/dev/zero bs=1024k count=1024 of=/tmp/bigfile
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.687094 s, 1.6 GB/s
MyDesktop:/tmp$ time wc /tmp/bigfile
0 0 1073741824 /tmp/bigfile
real 0m45.969s
user 0m45.424s
sys 0m0.424s
MyDesktop:/tmp$ time md5sum /tmp/bigfile
cd573cfaace07e7949bc0c46028904ff /tmp/bigfile
real 0m2.520s
user 0m2.196s
sys 0m0.316s
Đây không chỉ là một điều kiện cạnh kỳ lạ do tệp chứa đầy null, tôi thấy sự khác biệt tương tự về hiệu suất ngay cả khi tệp chứa đầy dữ liệu ngẫu nhiên hoặc là tệp văn bản.
(đây là trên Ubuntu 13.04, 64 bit)