Results without background task: 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 16.1835 s, 2.1 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 15.8603 s, 2.1 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 15.8447 s, 2.1 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 7.97778 s, 4.2 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 7.95331 s, 4.2 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 7.7114 s, 4.4 MB/s Results with ping -i.01 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 8.20859 s, 4.1 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 8.86829 s, 3.8 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 7.85443 s, 4.3 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.50894 s, 9.6 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.53943 s, 9.5 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.23468 s, 10.4 MB/s PING localhost (127.0.0.1) 56(84) bytes of data. --- localhost ping statistics --- 2256 packets transmitted, 2256 received, 0% packet loss, time 35239ms rtt min/avg/max/mdev = 0.000/0.023/0.153/0.015 ms Results with ping -i.0099 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 3.14023 s, 10.7 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 3.11462 s, 10.8 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 2.57574 s, 13.0 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 2.03586 s, 16.5 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 1.9888 s, 16.9 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 1.91385 s, 17.5 MB/s PING localhost (127.0.0.1) 56(84) bytes of data. --- localhost ping statistics --- 1647 packets transmitted, 1647 received, 0% packet loss, time 14806ms rtt min/avg/max/mdev = 0.000/0.001/0.061/0.007 ms Results with perl busy loop 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 15.4449 s, 2.2 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 4.22656 s, 7.9 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 4.33701 s, 7.7 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.62479 s, 9.3 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 6.29306 s, 5.3 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.49194 s, 9.6 MB/s ./speedtest.sh: line 29: 851 Terminated perl -e "while (1) { }" Results with perl usleep(1) 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 2.21552 s, 15.1 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 2.18692 s, 15.3 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 2.66827 s, 12.6 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.53918 s, 9.5 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.7572 s, 8.9 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.55444 s, 9.4 MB/s ./speedtest.sh: line 35: 860 Terminated perl -e "use Time::HiRes qw( usleep ); while (1) { usleep(1) }" Results with perl yield 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 5.65677 s, 5.9 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 6.32837 s, 5.3 MB/s 512+0 records in 512+0 records out 33554432 bytes (34 MB) copied, 6.67249 s, 5.0 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.51093 s, 9.6 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.39056 s, 9.9 MB/s 32+0 records in 32+0 records out 33554432 bytes (34 MB) copied, 3.5108 s, 9.6 MB/s ./speedtest.sh: line 41: 868 Terminated perl -e "use Thread qw( yield ); while (1) { yield }"