HPCシステムズではエンジニアを募集しています。詳しくはこちらをご覧ください。
HPCシステムズのエンジニア達による技術ブログ

Tech Blog

HPC

HPC

第3世代Xeonスケーラブル・プロセッサーベンチマーク

日本時間2021年4月7日、第3世代 Xeon スケーラブル・プロセッサーがリリースされました。 弊社で行ったベンチマーク報告書をこちらからダウンロードいただけます。 実用アプリケーションでのベンチマークで、前世代に比べて実効性能向上が得られていることを定量的に報告しています。 どうぞご覧ください!
計算化学

MPI or openMP

DFTB+という電子特性を研究する為の量子シミュレーションプログラムがあります。 ごく偶にお問い合わせがある古くからあるアプリです。 色々な事が出来るのですが、研究分野を離れたところで興味深い点がありまして、それは、元々、並列をOpenMPで実装していたという点です。 ver17.1までは、OpenMPだけで実装されていました。 ところが、ver19.1でなんとMPIも実装されたという事で、比較試験を行なってみました。 手頃な計算時間のかかるインプットはないかいなという事で、レシピというサンプルの中の2D carbon armchairのv1 densityを求めるインプット...
HPC

EBOF検証はじめました2

図は、EBOFとその上位サーバから構成されるEBOFシステムのアーキテクチャ概要です。本システムは、NVMeOF,RDMA,RoCEv2を組み合わせて実現しています。 ・NVMeOF(NVMe over Fabric)が、Fabric経由で接続されるNVMeデバイスにブロックデバイスインタフェースを提供します。 ・RDMAが、PCIe経由のIOをCPUからオフロードする処理を担当します。 ・RoCEv2(RDMA over Converged Ethernet v2)が、PCIeデータをUDPで梱包し、イーサネット経由でEBOF側SSDに転送する処理を担当します。 これにより、本シ...
HPC

EBOF検証はじめました

最近、ストレージに関して、お悩みありませんか? このままハードディスクを使い続けようか?それとも、価格と性能が遜色なくなりつつあるSSDをもっと活用してみようか?と、思っていらっしゃいませんか?そんなあなたに、弊社で最近、検証を始めたストレージ装置を紹介させてください。 近年、Deep Learningなどの領域では、処理対象データが指数的に増加する一方、SSD技術の進展により、HPC/AI市場におけるストレージ装置の位置づけが変化しています。 お客様は、処理対象データのプレ・ポスト処理の生産性向上やスケーラビリティなどを確保するため、広帯域、大容量、低遅延なIOパフォーマンスを実現す...
計算化学

VASP:事前/事後処理に使うソフトウェアの紹介

はじめに この記事では、GUI上で操作できる無償のものを中心に、VASPの事前・事後処理を行うソフトウェアを紹介します。 入力ファイルを入手する VASPで計算を行うためには以下4つの入力ファイルを用意する必要があります。 POSCAR 対象となる物質の結晶構造データ POTCAR 物質中の各原子の擬ポテンシャルデータ INCAR 計算方法などの設定 KPOINTS 計算するk点の設定 初めて利用される方がこれらのファイルをいきなり自作するのは大変です。そこでまずは, 以下のデータベースから目的の物質を探し、入力ファイルを入手する...
HPC

VASP:結果の可視化について

はじめに VASPは密度汎関数理論(Density Functional Theory: DFT)に基づいて電子状態を計算するソフトウェアです。擬ポテンシャル法を採用しており、全電子計算を行うWIEN2kなどのソフトウェアに比べて高速に計算できます。また、精度に関しても良い成績を残しており、様々な分野で広く使われています。 しかし一方で、VASPの出力形式は状態密度(Density of state: DOS)・バンド分散・フェルミ面などの基本的な解析結果を可視化しづらく、計算実行後に出力ファイルを編集する手間が必要です。この点はQuantum ESPRESSOの方がユーザーフレンドリーな...
計算化学

DALTONを高速化

DALTONという名前の量子化学プログラムスイートがあります。 この名称は、ホームページで人物の姿があるように、John Dalton博士をリスペクトしたものだろうという事は分るのですが、イギリス系の地名や姓など、かなり一般的な単語の為、Web用の検索エンジンを単純に使用すると、関連の無いものばかりが並ぶ事になるという困ったアプリでもあったりします。 このDALTON、かなり古くから存在するもので、最初のリリースは1983年、version 1.0が1997年 というものなので、スパコン世代の癖がかなり濃厚に残っているアプリです。 2011年以降、DALTONはバージョンナンバーがv...
計算化学

AMD Ryzen Threadripper で Gaussian

AMD Ryzen Threadripper はデスクトップPC用途ですが、コアをEPYCと共通化させているため、コア自体の底力は、なかなか期待できるものです。 Gaussian16 Rev. C.01 でいつものtest0397を動かしてみました。使ったCPUは Threadripper 3970X (32core, 3.7GHz) です。 けっこうIntel Xeonと善戦していることがわかります。手ごろな価格でGaussian計算機を探している方には朗報ですね。
HPC

EPYC ROME環境におけるMKL環境変数の影響について その2

前回のブログの通り、実際にアプリケーションの動作を確認していきます。 今回検証に使用したハードウェア環境、開発環境は以下の1ノードとなります。 HW構成 :CPU                  AMD EPYC 7702 ( 2.0GHz / 64core ) x 2        Memory              256 GB ( 16 GB 3200 MT/s x 16 ) OS         :CentOS 7.6 Compiler:Intel Compiler 19.0.5.281、17.0.7.259 MKL   : 上記 Intel Compiler に同梱...
HPC

EPYC ROME環境におけるMKL環境変数の影響について その1

お久しぶりです。 随分間が空いてしまいました、申し訳ありません。 EPYC ROME環境での計算科学アプリケーションの挙動について、引き続き書いていこうと思います。 ソースコードで配布されている科学技術計算用アプリケーションにおいては、想定している開発環境として、数値計算ライブラリ Intel Math Kernel Library ( MKL )に対応しているものが複数あります。 弊社ではこのようなアプリケーションでMKLを使用したビルドを行っています。 これは、Intel製CPU環境においては、MKLが性能的に優れ、動作的にも安定しているためです。 しかし、EPYC環境において...
HPC

M6g 触ってみた (2) -OpenFOAM ベンチマーク結果-

はじめに 前回の記事でAWS EC2 M6gインスタンスに使われているGraviton2についての簡単な紹介と、HPLベンチマークの結果を掲載しました。今回はOpenFOAMについてのベンチマーク結果をご紹介します。実のところA1インスタンスの登場時にも同様の検証を行っていましたが、当時はこのブログもなかったので、私が参加した勉強会などのLT等で紹介するにとどまりました。 ベンチマーク内容 これも前回触れましたが、OpenFOAM-v1912をUbuntu20.04LTS標準のgcc-9.3.0, OpenMPI-4.0.3でビルドしました。ベンチマークデータは弊社も賛助会員のオープンC...
HPC

M6g 触ってみた (1) ーARM64の広がる世界ー

はじめに SARS-CoV-2対策のため、未だ未完成の富岳の起動が発表されたことに、オタク心をくすぐられた方も多いのではないかと思います。富岳はCPUがARMベースであることも知られており、1CPUあたり48コアにおよぶ計算用コアはHPCに必要な演算性能を生み出しますが、カタログ上の最大演算性能は内蔵されているSVEと呼ばれるベクトル演算ユニットに依るところが大きいと思われます。ARMはCPUが持つべき基本機能を備えた設計のみをライセンス販売していて、開発者はそれをたたき台にアレンジしたり、SVEのような付加機能を付け足したりすることで、実際のCPUを設計・製造します。これによりCPU全体や...
DL

NVIDIA A100 GPU製品が発表されました!

オンライン開催の GTC 2020( )にて NVIDIA CEO Jensen Huang氏 の Keynote がアナウンスされました。発表は NVIDIA YouTube Channel ( ) で 公開されています。プレイリストはこちらです。 AIやデータサイエンス、HPC、自動運転やグラフィックなどに関する新情報が次々と出てきています。 NVIDIA A100 GPU。最新Ampere世代、TensorFloat32に対応し、Sparse Matrixに最適化された新たなTensorCore と 1.5TB/sの高帯域なHBM2を備え、PetaOPS級の性能。ますますD...
DL

ロボットアームの強化学習に挑戦

 今回は、OpenAIが公開しているロボットアームの強化学習に挑戦します。ロボットアームの強化学習は、ロボットアームで物体を挟んだり押したりして動かすFetchと、人の手を模したロボットを動作させるShadowHandがあります。その中から、FetchPickAndPlace、HandManipulateBlockRotateXYZ、HandManipulateBlockFullの強化学習に挑戦してみました。 強化学習  強化学習とは、簡単に説明すると、まず、あるモデルを元にシミュレーションをします。次に、シミュレーションの結果を元にモデルを学習します。その学習したモデルを使って、またシミ...
計算化学

そのデータにストーリーはあるか?ーデータに踊らされないためにー

背景 昨今さまざまな数字、データ、グラフを目にする機会が増えています。その一方でそれらをどう解釈して読み解くのか、というリテラシーの問題が取り沙汰されるようになっています。テレビ等で誤解を生みかねないグラフ形式を選択していることなどに指摘がある一方で、意図的にそうした手法を用いているものから間違った判断に誘導される危険性もあります。統計データが直感に反する結論を導くことも珍しくありません。 どの様にデータを使い、見せ、意図を伝え、解釈されるのか?というのは受け側、出す側の両方に求められるリテラシーですが、一方で普段どおりの見せ方をしたのに、他の分野で全く異なる解釈をされ、驚かれた経験がある...
HPC

リモート会議について

背景 ここ数年のHPC環境では、CPUやGPUによる計算コストよりも、データを移動するコストが支配的になっているという認識がますます強くなっています。どれだけ計算能力が高くてもデータが届かなければ、計算した結果を保存できなければ、せっかくの高速な環境はそれを待つことに時間を浪費しパフォーマンスが劣化します。メモリからのデータ転送でキャッシュのアルゴリズムが重要な要素となり、低遅延のネットワーク、ストレージの役割がますます大きくなっています。お金のかけ方が以前とは変わってきているわけです。一方でデータを動かすのではなく、データを中心にしてシステムを割り当てていくデータセントリックという、逆転の...
HPC

AWSが拓いたLustreファイルシステム新時代 -3-

前置き 前回の記事で「短期決戦・スクラッチ向き」とか書いた途端に、永続的ストレージの発表があり、頭を抱えた筆者です。多数のユーザーが混在するクラウド上においてはパフォーマンスと同時にセキュリティも重要ですが、条件付きながらデータ転送も保存データも暗号化されています。普通のLustreでは行われていないOSTの2重化すら実現しています。さらにパフォーマンス向上も実現しています。これでAWS上に「普通のLustre」をつないだ「普通のスパコン」を運用する上で必要な、ある意味それ以上の「モノ」はほぼ揃ってしまいました。今回はその作り方と使い方を簡単に勉強しておきましょう。 AWSとHPC環境につ...
HPC

SingularityコンテナでAMD GPUを試す -2-

前置き この記事を書いている間にSingularityはEPELリポジトリから最新の3.5.3がインストールできるようになり、GROMACSは2020.1がリリースされました。ちなみにGROMACSは「誤った結果を出す」という理由で、GROMOS力場を削除していくようで、以前のデータがそのままでは使えなくなったり、計算結果が異なる可能性があります。ただ、2020.1にもファイルは従来どおり残っているので(使おうとするとワーニングは出ますが)一応計算は実行でき、ベンチマークの取得は可能です。 GROMACSに関する予備知識 分子動力学計算は単一の計算を繰り返しているわけではなく、近距離にあ...
HPC

SingularityコンテナでAMD GPUを試す -1-

背景 コンテナを使う時よく問題になるのは、特殊なハードウエアを使う場合にデバイスドライバとそれを叩くライブラリの組み合わせ問題です。コンテナはカーネル空間を分離してユーザーランドだけで動きます。つまりカーネルとデバイスドライバは管轄外になります。一方でアプリケーションを動かすライブラリはユーザーランドつまりコンテナ内にあります。せっかくのポータビリティがコンテナにあっても、このミスマッチでアプリが動かないのでは困ります。HPCではGPUをはじめ、Infinibandだったり、特殊機材のハードウエアや他のマシンのメモリすら直接叩いてパフォーマンスを最大化してきた歴史があります。そもそもコンテナ...
HPC

AMD EPYC Rome の性能検証その3(Amber18)

今回ベンチマークを行うアプリケーションはAmberです。 Amberは生体分子シミュレーション用アプリケーションです。(公式HP) Amber は 有償のSolverと無償のツール群(AmberTools)に分かれており、 SolverのビルドにはAmberToolsのビルドも必要になります。 2020年2月17日時点での最新版は、Amber(Solver)がVersion 18 、 AmberTools が Version 19となります。 前回のHPLと同様に、Compiler、数値演算ライブラリ、MPIを変化させてベンチマークを取得していきたいと考えていたのですが... ...