fn = "testtab.rb"; A = 2; B = 50000
symbol = (タブかスペースx8)
File.open( fn, "w+b" ) do | f | f << (symbol * A + "t='test'\n") * B end
`ruby testtab.rb` #何回か繰り返す
starttime = Time.now
`ruby testtab.rb`
endtime = Time.now
p endtime - starttime
というテストプログラムを作ってテストしてみました。

A=10, B=100000
tab:  1.062
space: 1.281

A = 2, B = 500000
tab:  7.672
space: 7.843

A=10, B=100000
tab:  0.109
space: 0.125

A = 2, B = 50000
tab:  0.485
space: 0.531

といった感じで、「確かに効くけど、どうよ?」といった結果になりました。
100万個タブ使って0.2秒か……