Re:Re:Boehm GC の Repeated allocation of very large block 問題 その2

うまくいかなかったのでペンディングにしていた標記の件だが、enami さんの鋭い指摘により進展があった。
以前 mp_set_memory_function で GC_malloc を使う設定にしている場合にも mpz_clear をこまめに呼び出すということを試していたのだがうまく行かずあきらめていた。
実はそれはぼくの勘違いで mpz_clear を呼び忘れているところがあった。
これを修正したところ x86-64 環境では、例の fact が 33MB ほどしか heap を使わなくなった。
明日 32bit でも確認する予定。あとデストラクタをうまく使って mpz_clear 呼び忘れをなくそう。