Segment.java のメモリ使用量

大きなデータを食わせたら、すぐにヒープが足りない、といわれる。

SuffixArray の中で持つ「元の配列」に、連結の履歴を全て保った単語が書かれている。
同じ単語の情報は重複するので、辞書へのポインタにすべき。

→ bigramに置き換えるときに、Bigram インスタンスを1つ1つ生成していたので、
単にリファレンスを入れておくだけにした。
内部状態は全て final なので、共有しても問題ない。

また、JavaVM への割り当てメモリを増やすには↓で起動
$ java -Xms20M -Xmx800M Segment ...
なお、初期メモリ(-Xmsで指定する方)はあまり大きくできないらしい。