After spending a day going out of my mind trying to figure out very strange results from some performance comparisons I was doing, I finally figured out that tar was cheating. I was directing the output of various backup utilities to /dev/null to make sure the output did not interfere with the reading since I didn't actually have a backup disk to write to. It seems that tar specifically tests if its output fd is connected to /dev/null and if it is, it doesn't bother reading the files and writing to output at all, instead it just seems to stat all of the files, then exit.
This reminds me of an old "optimization" that I heard some compiler once did to cheat a benchmark by short circuiting all of the busy work the benchmark did when the compiler detected the name of the input file was whetstone.c. Renaming the file and recompiling got correct results. This is very bad behavior.
