見出し画像

科学技術計算のためのcpu性能

はじめに

科学技術計算をする際に,どの程度の性能をもつCPU(中央演算処理装置)を搭載したスパコンを使うかは非常に重要になる.私は,先日1ケースで半年ほど継続的に計算したこともありました.これが半分になれば,なんと楽なことでしょう!

当然,高性能なスパコンは高価であり,クラウド環境でレンタルするにも結構な費用が必要です.最近はGPUを使って演算を高速に行うプログラムも増えてきましたが,CPUの性能が基本となるのは間違いないでしょう.


GFLOPSとは?

G(ギガ)FLOPS(フロップス)とは,1秒間に10億回の浮動小数点演算(FLOPS)を処理することが出来る計算性能のことです.

FLOPS(理論性能)の評価

周波数×コア数×(同時計算ビット数/変数のビット数)×FMA係数

  • 周波数:まずは,1個のコアが1秒間に何回処理できるか?

  • コア数:頭脳が何個あるか?

  • 同時計算ビット数:1回の処理で扱うことの可能なビット数であり,スパコンのCPUはAVX512という規格で512bitを扱うものが多いようです.またAVX2という規格では256bitに対応しているそうです.

  • 変数のビット数:私は,倍精度(64bit)で変数を定義することがおおいです.最近では,倍倍精度ということで128bitの変数を扱うプログラムも増えているようです.また,機械学習の分野では,変数の精度(桁数)が少なく済むようなので単精度32bit, 半精度16bitなどを使うことが多いようです.

  • FMA係数:1回の命令で乗算と加算の2演算が出来ると,この値は2となります.

ビット数に関しては,こちらの記事を.

実際に理論性能を計算してみる

私は,自宅で暇つぶしに流体解析をしていますが,この時には,市販のデスクトップPCを使っています.CPUはcore i7 13700です.さすがに,スパコン用のCPUをプライベートで購入することはできません.

core i7 13700には,ハイパフォーマンスで消費電力の大きいPコアと消費電力の少ないEコアがあります.Pコアの周波数は5.1GHz, コア数は8コアです.また,Eコアの周波数は4.1GHz,コア数は8コアです.同時計算ビット数に関してAVX2の表記しかないので両コア共に256bitなのでしょう.そうすると,core i7 13700の理論性能は,

5.1GHz*8コア*(256/64)*2+4.1GHz*8コア*(256/64)*2=588.8GHz

あんまり高くないですね.

日本で最も有名なスパコンは富岳でしょうか.富岳のスパコン1台1台にはA64FXというCPUが搭載されています.倍精度の変数を扱う場合,3072GFLOPS (=3.072TFLOPS)となるようです.さすがは,スパコン用のCPUですね.実際には,このスパコンが約16万台あり,これらのスパコンを連携しながら大規模計算を行うことが多々あります.

CPU性能一覧表

さて,スパコンベンダーによって,このようなCPUの理論性能の一覧表を見ることが出来ます.今回はHPCシステムズのサイトリンクを紹介します.

Intel Xeonスケーラブルプロセッサーはこちら

AMD EPYCシリーズプロセッサーはこちら

おわり

今回の備忘録はこれでおわりです.

この記事が気に入ったらサポートをしてみませんか?