PEZYの産業応用について思うこと

NEDOのミッションについて

NEDOの助成事業についての問題が取り沙汰されているPEZY Computingですが、そもそもNEDOはどういった機関なのでしょうか。NEDOは以下の二つのミッションを掲げています。

■ エネルギー・地球環境問題の解決

新エネルギーおよび省エネルギー技術の開発と実証試験等を積極的に展開し、新エネルギーの利用拡大とさらなる省エネルギーを推進します。さらに、国内事業で得られた知見を基に、海外における技術の実証等を推進し、エネルギーの安定供給と地球環境問題の解決に貢献します。

■ 産業技術力の強化

産業技術力の強化を目指し、将来の産業において核となる技術シーズの発掘、産業競争力の基盤となるような中長期的プロジェクトおよび実用化開発における各段階の技術開発を、産官学の英知を結集して高度なマネジメント能力を発揮しつつ実施することにより、新技術の市場化を図ります。

http://www.nedo.go.jp/introducing/index.html

おそらくPEZY Computingへの助成事業は後者の「産業技術力の強化」というミッションに当てはまるのでしょう。PEZYのスーパー・コンピューターは産業に応用され得るのでしょうか。

OpenCLとほぼ互換のPZCLという言語を使用するPEZY-SC

先日書かせて頂いた以下の記事で取り上げた通り、PEZY-SCはPZCLというOpenCLとほぼ互換の言語を使っていて、GPGPU用に書かれたOpenCLのソースコードが殆どそのまま動いてしまうようです。

関連記事

PEZY-SCは地味なのか、実用性は無いのか

このことが産業応用について何を意味するでしょうか。

まず第一に、既に流用できるソースコードが市場に存在することが言えます。OpenCLを用いたGPGPUにはNVIDIA、AMD両社が対応しています。

次に、リスクの低減が言えるでしょう。NVIDIAのGPU向けにはCUDAを用いた方が性能を出しやすいようですが、CUDAでコードを書けばそのソフトはNVIDIAのGPUに依存することになります。NVIDIAほどの巨大な企業が倒産するようなことは想像しにくいですが、嫌な言い方をすれば足元を見られる可能性もあるわけです。NVIDIAが優しい企業だったとしても、会社の重要な業務をある企業のハードウエアに依存するというのはあまり気持ちの良いものでは無いでしょう。いざと言う時に他社製のアクセラレータに乗り換えられないというのはリスクだと言えます。

OpenCLとほぼ互換のPZCLで書け、ハードウエアへの最適化までPZCLで出来るPEZY-SCシリーズは、そのような問題を非常に上手く回避すると考えられます。

例えば、AMDのGPU向けにOpenCLであるコードを書いて居た企業が、少ない労力でPEZYのハードウエアに移行出来ます。改善する価値があると判断すれば、PZCLで用意された独自の関数を用いて最適化出来ますし、AMDのGPUに戻りたい場合にも恐らく少ない労力で対応出来るでしょう。CUDAで書いてしまっていたらこうは行きません。多くのハードウエアが対応するオープンな標準であるOpenCLとほぼ互換の言語でソフトウエアを構築しつつ、ハードウエアに対して最適化も可能ということは、非常に大きな利点なのではないでしょうか。

公式に推奨するスタイル (12月27日追記)

また、以下に挙げるのはExaScalerが公式に推奨する開発スタイルですが、これが開発現場にハマるというケースも考えられそうです。

また,MIMD 方式のメリットとして,SIMD (Single-Instruction stream Multiple-Data stream) 方式とは異なり,各スレッドが自由に分岐するコードを生成できる.したがって,コードを動作させて正しい答えを得るというところまでの敷居が低い.最初に正しい答えが出るコードとして,ZettaScaler シリーズに移植後,上記のようなチューニングによってコードの高速化を図る開発スタイルを推奨している.

https://search.ieice.org/bin/pdf_link.php?category=C&fname=j100-c_11_537&lang=J&year=2017

コードを動作させて正しい答えを得るというところまでの敷居が低いということは、という点はむしろ産業応用に効いてきそうな特徴に思えます。とりあえず動くコードを書いてベータ版としてリリースし、きちんと顧客に使ってもらえることを確認してから高速化作業を進めるといったことが出来ます。

なお「上記のようなチューニング」に当たるのは、以下のようなことです。

• スレッド,PE 単位の並列性の活用
• L1~L3 キャッシュを考慮したメモリ配置
• ホストプロセッサからの起動回数削減
• スレッド切り替えによるレイテンシ隠蔽
• 同期命令によるキャッシュ利用効率向上
• ローカルメモリ (16KB/PE) の有効活用

コンピューティング資源の局在化

パブリック・クラウドという形で、巨大なデータセンターのコンピューティング資源にアクセスし利用するという形態が流行しています。これは、コンピューティング資源が局在化していると言い換えることが出来るかと思います。そして、以下の記事で紹介している通り、CAE(Computer Aided Engineering; 計算機支援工学)のパブリック・クラウドも登場しています。

関連記事

中国Huaweiと仏ESIがCAEパブリック・クラウド・ソリューションを発表

CAEはコンピュータによるシミュレーションなどを用いたエンジニアリングを指しますが、CAE関連のソフトウエアには、より高い計算能力がより高い精度のシミュレーションに繋がるなど、計算能力に対するニーズがあります。憶測ですが、PEZYのスーパー・コンピューターに関連する技術もこういった形での産業応用が考えられるのでは無いでしょうか。

また、CAEの市場は拡大傾向にあるようです。businesswireによる調査によれば、電気自動車などが流行するにつれ高性能なバッテリーを開発する需要が増え、バッテリーに関するCFD解析がトレンドとなっていることや、スマートフォン市場の拡大などを受けて、FET(Finite Element Analysis; 有限要素解析)の主要な顧客である電気電子産業からの需要が増していることが要因として挙げられています。2017-2021年におけるCAGR(Compound Average Growth Rate; 年平均成長率)は11.84%と予想されています。このような市場を掴むことが出来るのだとすれば、NEDOのミッションとして掲げている「将来の産業において核となる技術シーズの発掘」は達成出来るのではないでしょうか。

ソース

https://www.businesswire.com/news/home/20171020005370/en/Global-CAE-Market-2017-2021-Growth-Application-Specific-CAE

Add a Comment

メールアドレスの入力は任意です。(公開されることはありません)