CGER-I163-2023_計算で挑む環境研究
70/140

 富岳の時代の気候モデルは、また新しい計算科学的な課題に直面しています。シミュレーションの速度をさらに上げていくには、今までとは異なるアプローチをする必要が出てきました。 その一つが「データ転送を減らす」ということです。前述の「データの局所化」も、データをなるべく長くCPUに近い、速い記憶領域にとどまらせることで、データ転送を減らそうとしていたのですが、さすがにもうやれる工夫にも限度がきています。ならば、データを移動させる量を別の方法で減らすしかありません。私たちが今有望だと思って取り組んでいるのが、モデルの中で用いられている浮動小数点実数の桁数を減らそう、という試みです。 科学計算ではよく単精度実数、倍精度実数という言葉が出てきます。それぞれ実数を4バイト、8バイトの2進数で表すもので、表現できる数の範囲は、倍精度実数の方が広いです。倍精度実数だとおおむね有効数字が16桁ぐらいあると思って利用しています。 これに対して単精度実数では有効数字は8桁しかありません。しかし、データサイズは半分になります。サイズが半分なら転送量も半分になり、転送時間を半減させられるし、同時に小さくて速い記憶領域により多くの変数を留まらせることができるようになります。さらに、同時に処理するデータの数も倍に増やすことができるのです!これは素晴らしいことなのですが、一方で、有効数字桁数の少ない実数で計算を行えば、シミュレーションの精度は落ちてしまいます。 今度は計算速度とシミュレーション結果とのトレードオフを考えながら、私たちは最適な解を探そうとしています。そしてその先はもっと桁数の少ない実数(たとえば、半精度と呼ばれる2バイト実数)が使えないかを模索しようとしています。 もう一つは、いま流行りのAIの活用です。気候モデルの中の複雑で長いアルゴリズムを、機械学習によって得られた巨大なニューラルネットワーク(NN)に置き換えてしまおうという試みが行われています。気候モデルの部品には大小さまざまな簡略化モデルが入っています。観測結果や、より精緻化されたシミュレーション結果を用いてトレーニングを行ったNNは、それらの簡略化モデルと同等、あるいはそれ以上の再現性能を発揮することが期待されます。NNは計算時間を劇的に短縮するのと同時に、今まで不確実性

元のページ  ../index.html#70

このブックを見る