日本語wikipedia全本文の20%をprologの宣言文にした

本当は、日本語wikipedia全本文をprolog化するつもりで、終日macproを98%を超えるCPU使用率で動かしたのだが、途中で、なぜかjuman, knpサーバーとの接続に失敗したかとか言って、544ファイル中101ファイルを処理したところで止まってしまった。

20%くらいの達成率なのだが2晩かけた(笑)。70スレッドを立ち上げた。100スレッドでもいいかと思ったのだが、そうすると、macproが他に使えなくなってしまうので、少し控えた。

出力されたファイルは、14Gバイトあった。これをswi-prologで読み込んだら、なんと、12分30秒かかった。何よりも、swi-prologがそれだけのプログラムをくわえこむことができることに驚きだ。元のファイルは、テキストファイルなのだが、それをなんらかの内部形式のバイナリデータに書き換えているのだろう。swi-prologのメモリ占有は、5.4Gで済んでいる。MacProは、メモリを64G積んでいるので、余裕はあるのだが。

宣言文の行数は、3,291,151行である。この330万行に、prologの宣言文としてのエラーは一つもなかった。これも驚きである。全部を問題なく、swi-prologに組み込むことができたのである。

swi-prologには、全てを二分木として組み込んでいる。