>単純計算で300倍くらい違ってるんだけど、どこでそんなに時間食ってるのやら…
GC。a+=b ってのは a = a + b の略だから、これをする毎に前の a がごみに
なる。a << b は a を延長して追加するからごみが出ない。Rubyは単純な
mark&sweepだからごみが増えればGCの処理時間も比例して増える。

参照カウントベースのGCを持つPythonで試してみ、a+=bでもめっちゃ速いから。
ごみになった瞬間に回収されるから、mark&sweepの負荷がない。