著者
中村 晃一 野瀬 貴史 稲葉 真理 平木 敬
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2011-HPC-130, no.63, pp.1-10, 2011-07-20

高性能計算分野では他の分野では使われる事の少なくなってきた Fortran・C 言語が使われ続けている.これらの言語はその生産性の低さと並列計算機向けの最適化の困難さが問題であり,高級なプログラミング言語を使用可能とする事は今後の重要な研究課題である.その様な目的の研究では並列構文を備えた専用の言語の研究・静的型付けの関数型言語の研究が主流であるが,これらが計算科学者にとって使い易いものであるとは言い難い.我々は Ruby を用いて高性能計算を行う試みを行っている.Ruby はその記述の容易さ・高機能さから広く使われており,本言語に高性能計算に使用可能な性能を与える事の恩恵は大きい.本稿では我々の試みの第一歩として,Ruby の為の型解析手法の提案を行う.動的言語である Ruby は静的言語に比べ解析が困難であると考えられているが,部分評価手法と抽象解釈手法を組み合わせることにより十分な精度での解析を行う事が可能である.また,我々は開発した解析手法に基づいて,Ruby の実行前最適化コンパイラ HPC Ruby を開発した.本稿時点では単一プロセッサ向けの基本的な最適化を実装している.NAS Parallel Benchmark を用いた性能評価では最新の Ruby 処理系と比べ 100 倍以上の高速化を達成し,C 言語の性能の約 90% を実現する事が出来た.
著者
小田嶋哲哉 李珍泌 朴泰祐 佐藤三久 塙敏博 児玉祐悦 RaymondNamyst SamuelThibault OlivierAumage
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2012-HPC-135, no.9, pp.1-8, 2012-07-25

GPU クラスタ上でのプログラミングは,様々なプログラミングフレームワークが直交しており,複雑になってしまうことが多い.本研究では,XMP をアクセラレータを持つ並列計算機向けに拡張した言語仕様 XMP-dev の一実装として,GPU と CPU によるハイブリッドワークシェアリングを容易に行うことができる XMP-dev/StarPU を提案し,プロトタイプ実装を行う.XMP-dev は,XMP が本来提供している分散メモリノードへのデータと処理の分割・通信の機能に加え,各ノードでの処理の一部を GPU にオフローディングをすることが可能である.しかし,現在の実行モデルでは GPU にオフロードされた部分はすべて GPU により実行され,CPU との協調計算やワークシェアリングを行うことができない.本研究では,StarPU をバックエンドスケジューラとして用い,計算をタスクという単位で GPU や CPU へスケジューリングをすることで,GPU / CPU のワークシェアリングを可能とする.本稿では,現在開発中の XMP-dev/StarPU のプロトタイプコンパイラと同等の動作をするハンドコンパイルしたコードを用いて重力 N 体問題について評価を行う.結果として,GPU/CPU ワークシェアリングは機能しているが性能向上は十分ではなく,大きな要因は GPU と CPU の性能差に対応する十分な問題サイズを与えることが難しいこと,また,これを改善するために何らかの負荷バランス機能が必要であることがわかった.
著者
鈴木 惣一朗 伊東 聰 酒井 憲一郎 稲田 由江 三吉 郁夫 石川 裕 宮野 悟
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2021-HPC-178, no.18, pp.1-9, 2021-03-08

我々はスーパーコンピュータ「富岳」開発プロジェクトのターゲットアプリケーションのひとつとして,ヒト全ゲノム解析プログラム Genomon の「富岳」向け移植と最適化を行ってきた.本稿では,その最適化内容と「富岳」での性能評価について報告する.Genomon の実行性能はディスク I/O 性能に依存するため,特に「富岳」に実装された LLIO(Lightweight Layered IO-Accelerator)ファイルシステムをどのように活用したかを中心に報告する.また,Genomon のスループット性能向上のために試みた複数パイプライン同時実行についても報告する.
著者
住元 真司 稲田 由江 三輪 英樹 三吉 郁夫
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2019-HPC-172, no.6, pp.1-6, 2019-12-11

本稿では,Arm SVE プロセッサである A64FX 上で可変ベクトル長バイナリを用いた著名 HPC ベンチマークプログラムの評価について報告する.A64FX は Arm SVE アーキテクチャに対応しているため実行時に SIMD ベクトル長を変更できる上,独自にメモリバンド幅も変更可能である.これらの機能を用いて著名ベンチマークの実行特性を評価する.
著者
中村 晃一 野瀬 貴史 稲葉 真理 平木 敬
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2011, no.63, pp.1-10, 2011-07-20

高性能計算分野では他の分野では使われる事の少なくなってきた Fortran・C 言語が使われ続けている.これらの言語はその生産性の低さと並列計算機向けの最適化の困難さが問題であり,高級なプログラミング言語を使用可能とする事は今後の重要な研究課題である.その様な目的の研究では並列構文を備えた専用の言語の研究・静的型付けの関数型言語の研究が主流であるが,これらが計算科学者にとって使い易いものであるとは言い難い.我々は Ruby を用いて高性能計算を行う試みを行っている.Ruby はその記述の容易さ・高機能さから広く使われており,本言語に高性能計算に使用可能な性能を与える事の恩恵は大きい.本稿では我々の試みの第一歩として,Ruby の為の型解析手法の提案を行う.動的言語である Ruby は静的言語に比べ解析が困難であると考えられているが,部分評価手法と抽象解釈手法を組み合わせることにより十分な精度での解析を行う事が可能である.また,我々は開発した解析手法に基づいて,Ruby の実行前最適化コンパイラ HPC Ruby を開発した.本稿時点では単一プロセッサ向けの基本的な最適化を実装している.NAS Parallel Benchmark を用いた性能評価では最新の Ruby 処理系と比べ 100 倍以上の高速化を達成し,C 言語の性能の約 90% を実現する事が出来た.Computational scientists have been using Fortran and C which are being used less than before in other fields. Because these languages have low productivity and optimization of them for massively parallel computers is difficult, it is important to make high performance computation using high-level languages possible. Although, for this purpose, study of dedicated parallel languages and study of statically-typed functional languages are mainstream, these languages are not easy to use for computational scientists. We have been studying high performance computation with Ruby. Giving high performance to Ruby brings significant benefits since Ruby is widely used because of its rich functionality and flexibly. This paper proposes a versatile method of static type analysis that is sufficiently efficient for Ruby. It combines partial evaluation framework and abstract interpretation framework to make analysis of dynamic language possible. We have implemented an ahead-of-time optimizing compiler, HPC Ruby, which performs classical optimization techniques based on the analysis targeting single core processors. HPC Ruby has achieved hundred times of speed-up against to latest Ruby interpreter in experimentation with Nas Parallel Benchmarks. Its performance has reached almost 90% of performance of C.
著者
椋木 大地 今村 俊幸
出版者
一般社団法人情報処理学会
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2014, no.26, pp.1-6, 2014-12-02

NVIDIA が 2014 年にリリースした Maxwell アーキテクチャの GM107・GM204 コア搭載 GPU は,浮動小数点演算の理論ピーク演算性能比が倍精度:単精度 =1:32 である.このような環境ではソフトウェアで実装した疑似倍精度演算を用いた方が,倍精度の計算を高速に行える可能性がある.本稿では GM204 コアを搭載する GeForce GTX 980 を対象に,単精度型を 2 個連結して倍精度型を表現し,単精度演算で疑似的な倍精度演算を実現する double-float 演算 (DF 演算) を用いて,倍精度行列積を計算する BLAS ルーチンである DGEMM を実装した.その結果,ハードウェアの倍精度演算による通常の DGEMM と比べて,DF 演算を用いた DGEMM は約 2 倍の性能が得られた.
著者
山田 芙夕楓 川上 健太郎 栗原 康志 松田 一仁 田原 司睦
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2022-HPC-185, no.4, pp.1-6, 2022-07-20

Arm プロセッサ用の HPC 向け命令セットである SVE が開発され,スーパーコンピュータ「富岳」では,この命令セットを採用した Fujitsu Processor A64FX が使用されている.Python の数値演算ライブラリである NumPy は SVE に対応しておらず,A64FX の性能を十分に引き出せていない.そこで今回 NumPy を SVE 対応したので報告する.特に配列に対する超越関数の処理では,A64FX の性能を引き出すように ①SIMD 化と ②ループ 展開数の最適化の 2 つの工夫を行い,配列データに対する超越関数処理を 24 倍高速化した.
著者
大友 広幸 坂本 亮
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2022-HPC-187, no.14, pp.1-7, 2022-11-24

古典計算機で解くことが難しい問題であっても,一部の問題は量子計算機を用いることで効率的に解くことが可能である.量子計算機の実機は現在開発が進められている一方,操作中に外的要因によるエラーが発生し,実用に耐えうるものではない.そこで量子計算機の計算精度評価や量子アルゴリズム開発の支援,量子超越性評価のために古典計算機上での量子計算機シミュレーションの研究が行われている.本研究では PEZY-SC3s プロセッサ用に既存の量子回路シミュレータを移植し,その計算精度・計算速度・消費電力の GPU との比較を行った.
著者
住元真司 安島雄一郎 佐賀一繁 野瀬貴史 三浦健一 南里豪志
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2014-HPC-143, no.8, pp.1-7, 2014-02-24

エクサスケールシステムでは、極限までの通信遅延の削減を省メモリに実現する必要がある。本論文では、エクサスケール通信をめざして開発中の ACP スタックの設計についての設計方針と ACP スタックの概要について述べる。
著者
堀内 美希 田浦 健次朗
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2011, no.38, pp.1-7, 2011-07-20

本研究の目的は,データ集約的な並列計算を行う際に重要な役割を担う,分散ファイルシステムの性能を,高遅延広帯域環境において向上させることである.現在の分散ファイルシステムは,高遅延環境で動作させると遅延の影響を受け,データ転送の際に広帯域を活かしきれていない場合がある.これを改善するため,本研究では積極的なデータプリフェッチ等により帯域を有効利用する分散ファイルシステム,Mogami の提案・実装・評価を行い,高遅延環境において,広帯域が達成できていることを確認した.これにより,複数拠点にまたがる高遅延環境を含む分散環境でデータ解析を行う場合の性能向上が期待される.This paper describes a distributed file system that utilizes wide bandwidth in high latency environments. Distributed file systems have been used as a way to share data for data intensive calculation. Existing distributed file systems, however, may fail to exploit the wide bandwidth due to high latency in the wide-area networks. To address this problem, we proposed and evaluated Mogami, a distributed file system that utilizes wide bandwidth even in high latency environment by aggressive data prefetching. In the evaluation we showed Mogami could achieve enough wide bandwidth to accelerate the data analyses in high-latency distributed environment.
著者
石村 脩 吉本 芳英
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2022-HPC-185, no.29, pp.1-8, 2022-07-20

ドメイン特化言語 (DSL) による高速化のアプローチの問題の一つとして,DSL プラットフォーム自身の移植性の低さがあげられる.この問題を解決するため,我々はアスペクト指向プログラミング (AOP) を用いた DSL 作成プラットフォームを提案している.当プラットフォームでは,AOP を用いることで,HPC システムを利用するためのランタイムコードや最適化機構のコードをモジュール化することを可能としている.しかし,DSL で書かれたカーネルコード自体の変更を行わないため,SIMD や GPU オフローディングができない問題点が存在した.本研究では,当問題を解決するため,プラットフォーム及び AOP のアスペクトに JIT コンパイラを導入し,動的にカーネルコードを生成・実行する手法を考案し,評価を行った.
著者
椋木 大地 今村 俊幸
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2014-HPC-147, no.26, pp.1-6, 2014-12-02

NVIDIA が 2014 年にリリースした Maxwell アーキテクチャの GM107・GM204 コア搭載 GPU は,浮動小数点演算の理論ピーク演算性能比が倍精度:単精度 =1:32 である.このような環境ではソフトウェアで実装した疑似倍精度演算を用いた方が,倍精度の計算を高速に行える可能性がある.本稿では GM204 コアを搭載する GeForce GTX 980 を対象に,単精度型を 2 個連結して倍精度型を表現し,単精度演算で疑似的な倍精度演算を実現する double-float 演算 (DF 演算) を用いて,倍精度行列積を計算する BLAS ルーチンである DGEMM を実装した.その結果,ハードウェアの倍精度演算による通常の DGEMM と比べて,DF 演算を用いた DGEMM は約 2 倍の性能が得られた.
著者
井手口 裕太 大野 善之 石坂 一久
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2020-HPC-173, no.15, pp.1-6, 2020-03-09

Top-N 推薦のための高精度かつ高速なアルゴリズムである SLIM のベクトル演算を用いた高速化手法を提案する.Top-N 推薦は,過去の購入履歴などを学習することでユーザーに推薦するアイテムを決定する問題であるが,膨大なデータを利用する学習時間の短縮が求めらている.SLIM はスレッド並列化が考慮されたアルゴリズムであるが,高性能ベクトルコンピュータ SX-Aurora TSUBASA で高速化するには,効率的なベクトル演算手法を開発する必要があった.本稿では,SLIM の主要処理に対するベクトル演算手法を提案し,SX-Aurora を用いた高速化を可能とする.Top-N 推薦でよく利用される MovieLens データセットを用いた評価では,提案する SX-Aurora を用いた SLIM は,2 ソケット Xeon に比べて 3.3 倍の高速であることを確認した.
著者
芹沢 和洋 建部 修見
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2019-HPC-170, no.9, pp.1-12, 2019-07-17

深層ニューラルネットワークに使用される訓練データの規模は年々増加しており,深層ニューラルネットワークの訓練処理において訓練データの read I/O は無視できないボトルネックになりつつある.ノードローカルストレージとして搭載された SSD などの I/O が高速なストレージデバイスを使用することで read I/O の高速化は可能であるが,HPC クラスタにおいては毎回訓練データセットのファイルコピーが毎回必要であるという課題がある.また,HPC クラスタの計算ノードからネットワークを経由してアクセス可能な外部ストレージは訓練データセットをファイルコピーせずに訓練処理を開始できるが,SSD ほどのバンド幅は見込めない.本研究では,ノードローカルストレージと外部ストレージを組み合わせて使用することで事前に訓練データセットのコピーをせずに read I/O を高速化する手法を提案する.提案手法を機械学習フレームワークである Chainer に実装し,Chainer が提供する並列に訓練データを read する機能をベースラインとして,read I/O 性能を自作したベンチマークによって比較したところ,Lustre に訓練データを配置した場合のベースラインよりも,より少ないプロセス数を使用して最大で約 20% 高い read I/O 性能を達成できることを示した.データ並列訓練における 10 epoch の訓練時間の比較では,訓練データセットのファイルコピーに要する時間を考慮するとベースラインと SSD の組み合わせよりも訓練処理時間を短縮できることを示した.一方で,データ並列訓練においては read I/O ではなく AllReduce による処理時間が律速するため,ストレージ間の I/O 性能が処理時間に反映されにくいという,データ並列訓練の所要時間における特性を明らかにした.
著者
荒井 勇亮 佐藤 功人 滝沢 寛之 小林 広明
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2010-HPC-124, no.11, pp.1-7, 2010-02-15

近年,従来の CUDA に加えて,GPGPU プログラミングのための新たな標準プログラミング環境として OpenCL が利用可能となった.本論文では,CUDA と OpenCL のプログラムの実行性能差を定量的に評価する.まず,ほぼ同等の処理を行う CUDA と OpenCL のプログラムを実装し,性能を比較する.次に,その性能差の主要因を調査し,CUDA コンパイラではサポートされているいくつかのコンパイラ最適化手法が,現在の OpenCL コンパイラではサポートされていないことを明らかにする.最後に,OpenCL コンパイラで生成されるコードを手動で最適化することによって CUDA と同等の性能を達成できた結果から,今後の OpenCL コンパイラの最適化機能が強化されることにより,CUDA コードを OpenCL に単純変換するだけでも,CUDA と同等の性能を達成できる可能性が示された.
著者
石田 翔太郎 須田 礼仁
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2015-HPC-152, no.5, pp.1-18, 2015-12-09

計算機上で整数一様乱数を生成する方法については,これまで多くの論文が発表されてきた.一方で,浮動小数点数一様乱数を生成する方法 (または整数一様乱数から浮動小数点数一様乱数への変換法) については,多くの場面で整数一様乱数を定数で割る方法 (rand()/232など) が用いられてきた.しかしながら,この方法では特定の形式の浮動小数点数しか生成されず,ほとんどの浮動小数点数は生成されない.これに対して,Moler は [2-53,1-2-53] の範囲にある全ての浮動小数点数を生成可能な一様乱数生成器を提案し,その後 Thoma により,その範囲は (0,1) にまで拡張された.しかしながら,Thoma により提案された手法は,浮動小数点数の丸めモードによっては,隣り合う浮動小数点数の出現確率が 3 倍程度異なる箇所が生じるといった,不自然な挙動を取ることが実験的及び理論的な検証から分かった.そこで,本論文はこの不自然な挙動を修正することを目的とした上で,まずは正しい浮動小数点数一様乱数生成器について議論し,続いてそのような生成器を提案すると共にその正当性を示し,最後に,提案された生成器の性能を実験により示した.
著者
鳥谷部 和孝 飯塚 拓郎
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2011-HPC-130, no.10, pp.1-5, 2011-07-20

本発表では,計算の並列化を CPU と GPU の両方に対して容易に行うために構築した並列プログラミングフレームワークと,それを用いて通貨オプションの価格付けの高速化を行った結果について報告する.
著者
瓜生 侑 遠藤 敏夫
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2022-HPC-185, no.28, pp.1-7, 2022-07-20

C++17 における実行ポリシーを用いたコードと kokkos を用いたコードはラムダ式を用いて記述され,高い移植性を持つことを特徴とし,CPU・GPU どちらでも並列実行が可能である.今回は,これらのコードを既存の並列プログラミングと性能の比較を行った.実験環境は本学のスーパーコンピューター TSUBAME3.0 である.また,それぞれのプログラムにブロッキングを施し,その性能とプログラミングコストについても比較を行った.
著者
泊 久信 平木 敬
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC)
巻号頁・発行日
vol.2011, no.45, pp.1-7, 2011-07-20

計算機が高性能になったことにより,より大きな問題を解くことができるようになった.入力が計算結果として出力されるまでに演算器を通る回数も,問題の規模と反復回数に応じて大きくなった.計算アルゴリズムの中には,演算器を通る回数が増えると誤差が蓄積していくものがある.このようなアルゴリズムを,より高性能な計算機を用い大規模な問題に対して適用するためには,より高精度な浮動小数点演算が必要である.ところが,高精度な浮動小数点数を扱うハードウェアは市販品としては少なく,結果としてソフトウェア実装を用いるのが一般的であった.ソフトウェアによる実装は幅広い環境で動作させることができる利点がある一方,性能を出しにくいという欠点がある.性能が出ない場合,そもそも高精度な浮動小数点数を扱う必要性は低い.本研究では,IEEE 754 規格を拡張して,8 倍精度 (256-bit) 浮動小数点数を定義した.評価では,POWER7 マシンでの倍精度の演算と,8 倍精度演算の 64 ビットPowerPC アセンブリでの実装との性能を比較し,8 倍精度が倍精度の 1/44 程度の性能の劣化になることを確認した.ハードウェア実装として,CPU の FSB に FPGA が結合された,Convey HC-1 を用いて,高性能な演算器を実装した.この FPGA ベースの実装を用いた場合,POWER7 の 8 コアのシステムに比べ,約 4.5 倍の 8 倍精度浮動小数点処理性能を実現した.The faster the processor becomes, the larger grows the size of the problem that the processor is capable of solving. The number of operations that are applied to input data is subject to the size and the number of iterations. There are algorithms where the error accumulates as the size or the number of iterations increases. To apply these algorithms to the larger set of problems that are solved on the next-generation computers, a higher-precision floating point format is required. Notwithstanding the need, there are little support for arithmetic on floating point numbers of quadruple or more precisions. When they really needed it they tend to implement them using software. Using software to process higher-precision floating point number benefits from portability, but at the grave cost of the performance. When the performance is limited, we often do not need higher precision floating point numbers in the first place. We propose an extension to the IEEE 754 floating point number formats to define a octuple-precision (256-bit) floating point numbers. We compared the performance of our octuple precision implementation to the double-precision operations on IBM POWER7. On POWER7, octuple precision operations take about 44 times more processing time than double-precision counterparts. We implemented FPGA-based arithmetic unit for the data format on Convey HC-1 system, where FPGA chips are connected to the host using the front side bus. On this system, octuple precision operations are 4.5 times faster than those on the 8-core POWER7 system.
著者
Satoshi Matsuoka Hideharu Amano Kengo Nakajima Koji Inoue Tomohiro Kudoh Naoya Maruyama Kenjiro Taura Takeshi Iwashita Takahiro Katagiri Toshihiro Hanawa Toshio Endo
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2016-HPC-155, no.32, pp.1-14, 2016-08-01

Slowdown and inevitable end in exponential scaling of processor performance, the end of the so-called “Moore's Law”is predicted to occur around 2025-2030 timeframe. Because CMOS semiconductor voltage is also approaching its limits, this means that logic transistor power will become constant, and as a result, the system FLOPS will cease to improve, resulting in serious consequences for IT in general, especially supercomputing. Existing attempts to overcome the end of Moore 's law are rather limited in their future outlook or applicability. We claim that data-oriented parameters, such as bandwidth and capacity, or BYTES, are the new parameters that will allow continued performance gains for periods even after computing performance or FLOPS ceases to improve, due to continued advances in storage device technologies and optics, and manufacturing technologies including 3-D packaging. Such transition from FLOPS to BYTES will lead to disruptive changes in the overall systems from applications, algorithms, software to architecture, as to what parameter to optimize for, in order to achieve continued performance growth over time. We are launching a new set of research efforts to investigate and devise new technologies to enable such disruptive changes from FLOPS to BYTES in the Post-Moore era, focusing on HPC, where there is extreme sensitivity to performance, and expect the results to disseminate to the rest of IT.