うちゅうせん
AIHoRT
うちゅうせん
「教授,やりました!ついに発見しました!」
「君か.何をそんなに騒いでいるんだ.原稿は進んでいるのか」
「いえ原稿は全く進んでいません.それより大発見です」
「何かね.原稿の締め切りがあと10日後だということより重要な話なんだろうな」
「はい間違いなく.先日私がデータを収集していたシミュレーションの結果が一部合わない所があったでしょう.あれの原因がわかりました」
「スパコンの奴かね」
「そうです.そうです」
「ご存知の通り私の研究はステンシル計算と切っても切り離せないわけですが,非常に大きな問題サイズのステンシル計算をする場合には,一般のパソコンではCPUもメモリも全く性能が追い付かないので,うちの大学にあるスーパーコンピュータの力を借りているわけです」
「それはよく知っている.君が現実でもパソコンの中でも整理整頓のできない男で,スパコンの使用可能なファイル容量を超過して怒られたことも知っている」
「教授,どこでそれを」
「誰が使用料を払っていると思っているのかね」
「ごほん.えー教授にはいつも感謝していますとも.しかしそんなことよりも今は大事なことがあるのです.どこまで話しましたかな.そうそう,ステンシル計算は,近傍セルの値を取得して,セルの値を更新します.つまり,その性質上どこか1箇所でも誤った計算が発生して誤った計算結果が書き込まれると,それが毒のように徐々に周囲に広がっていき,最終的に全体がめちゃめちゃな結果になってしまうわけです」
「説明御苦労.しかし,君は前に自分の設定ミスか何かが原因だと言っていたではないか」
「確かにあの時はそう言いました.何しろ結果の不一致はあれ1回きりしか起きていないのです.もう一度計算をやり直せば結果はちゃんと一致したのですから,普通自分のミスを疑うでしょう.しかし,確かに私も私自身の操作についてはあまり信用していませんが,私が組んだスクリプトは信用しています.スクリプトによってシミュレーションの実行は自動化されていますからミスなど起こるはずがないのです」
「何が言いたいのか.トップダウンに結論から話せといつも言っているだろう」
「つまり,計算結果の不一致を引き起こした最初の計算と,不一致を引き起こした原因を突き止めました」
「ほう.何だったのかね」
「これを,実験結果ファイルのこの部分を見てください」
「よくこんなものが出てくるな.まさか君は計算過程のほんの1ステップのデータすら保存しているのか」
「整理下手も悪いことばかりではないということです.それで,結果が1.25になっているでしょう.でも本当の結果は0.25になるはずなんです」
「差がちょうど1になっているな」
「1は1でも実数の1ではなく,実はビットの1なんです.1.25と0.25は倍精度の浮動小数表記でもたった1ビットの違いしかありません.つまり,何故かこの1ビットが勝手に反転されたことで,計算結果が書き換わってしまったのです!」
「…メモリ中の1ビットが勝手に反転した?しかし本当にそんなことが起こればハードウェアが論理エラーを出すだろう.原因は別にあって偶然1ビットの差しかない値だった可能性はないのか」
「これには裏付けがあります」
「裏付けまで用意しているのか.どうしてそこまでの熱量を原稿に充ててくれないのだ」
「宇宙線に含まれる中性子がこのビットの反転を引き起こすのです」
「宇宙線?」
「そう,地球外から降り注ぐ荷電粒子のことです.正確には宇宙線が大気圏にぶつかると原子核が破壊されて中性子が出来るらしいんですがその辺の理屈は私もよくわかっていません.とにかく,宇宙よりの放射線がコンピュータにぶつかると稀にエラー検出に引っかからないビットの反転を引き起こすことがあり,実際に1970年代にCrayがまだ現役だった頃からこの現象は観測されてきたようなのです.さらに私以外にもうちの大学のスパコンを使う人にも話を聞いたところ同様の宇宙線が原因だと思われるエラーが起きていたことがわかりました.そこで…」
「待ちたまえ.話がよくわからなくなってきた.宇宙線とやらがエラーの原因なのは分かったが,それで何が言いたいのかね.宇宙線など防ぎようがないし,君の原稿には一切影響を及ぼさないだろう」
「まあ聞いてくださいよ.私はこの宇宙線による論理エラーがあるアドレス付近に集中していることがわかったんです.これは私の結果だけでなく,うちの大学のスパコンを利用する他の人間にも調査したことでわかりました」
「あるアドレス付近?」
「宇宙線が降り注ぐ場所はランダムのはずですから,エラーが発生する確率はスパコンのどのアドレスでも等しいはずで,多少偏ることがあっても,わずか1KB近辺に被害が集中するはずがないということはわかると思います」
「ではその特定の1KBの領域でビットの反転が多発していたというのだね」
「そうです.それもこの1ヶ月という短い期間に.宇宙から降り注ぐ宇宙線によってスパコンのわずかな領域のビットが変化する.これってある操作に似ていると思いませんか」
「それは何だね」
「転送です!つまり宇宙人が小刻みに分けてこのスパコンに何かのデータを転送しているんですよ!」
「非常に興味深い話だとは思う」
「そうでしょう.そうでしょう」
「しかしやっぱりそれだけを聞くと君の早とちりにしか思えないよ.スパコン全体でメモリは何TBあるとおもっているんだね.そんなに狭い領域でしか起きないエラーなら原因は宇宙線ではないと考えるのが自然ではないのか」
「まあ,確かにそうなんですが」
「センターの方には私から該当領域のメモリを交換するように言っておこう.ハードウェアが原因ならそれで解決するだろう.それでもまだ論理エラーが起きるようならその時に宇宙線をまた考えたまえ」
「いい線だとおもうんですけどね.宇宙線だけに」
「SF小説の読みすぎだ.大体宇宙からデータが転送されたって言うが,一体何の目的でどういうデータが送られてくるんだ」
「それがわかれば苦労はないんですが,スパコンの利用者全員からデータ提供を願うのは現実的ではないので」
「まあ,今は原稿に集中したまえ.学会での発表が終わればひと段落するからそのあとまだ気になるならじっくり調べればよいだろう」
「ううん.まあ…おっしゃる通りです.この研究は取っておくことにします」
「君の知的好奇心には皆が期待しているところだ.突拍子もない発想もいいが,もっと実利のある研究に目を向けてくれればと思うよ」
「はいわかっています」
彼を見送って私はやれやれとつぶやきながらソファに深くもたれかかる.宇宙線が宇宙からのデータを転送しているだと?大当たりじゃないか.1KB領域まで絞られたときは冷や汗をかいたものだがデータの中身の精査がまだ済んでいなかったようで何よりだ.転送してきたものがただのデータではなく,電子生命体の断片だとは思うまい.あれは宇宙線であり宇宙船なのだ.
さて彼の知的好奇心の目を逸らす新しい研究テーマを考えてあげなければ.私がやがて人類の情報網を掌握するために彼等をスパコンに住まわせていることなど,彼には気付かぬまま,幸せな無知のままでいてほしいものだ.
うちゅうせん AIHoRT @aihort1023
★で称える
この小説が面白かったら★をつけてください。おすすめレビューも書けます。
カクヨムを、もっと楽しもう
カクヨムにユーザー登録すると、この小説を他の読者へ★やレビューでおすすめできます。気になる小説や作者の更新チェックに便利なフォロー機能もお試しください。
新規ユーザー登録(無料)簡単に登録できます
この小説のタグ
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます