Skip to main content
QUICK REVIEW

[論文レビュー] Novel Model-based Methods for Performance Optimization of Multithreaded 2D Discrete Fourier Transform on Multicore Processors

Semyon Khokhriakov, Ravi Reddy|arXiv (Cornell University)|Aug 16, 2018
Parallel Computing and Optimization Techniques参考文献 21被引用数 10
ひとこと要約

本稿では、関数的パフォーマンスモデル(FPM)を用いて、マルチコアプロセッサ上でのマルチスレッド2次元離散フーリエ変換(2D-DFT)の最適化を実現する、PFFT-FPMおよびPFFT-FPM-PADという、新しいモデルベースの手法を提案する。FPMにより、移植性があり適応的な負荷分散を可能にし、実験ではIntel Haswellサーバー上で、FFTW-3.3.7およびIntel MKL FFTに対して平均で2.0倍および1.4倍の高速化を達成。最大では9.4倍の高速化を実現し、最適化されていないバージョンに比べて顕著な性能向上を示した。

ABSTRACT

In this paper, we use multithreaded fast Fourier transforms provided in three highly optimized packages, FFTW-2.1.5, FFTW-3.3.7, and Intel MKL FFT, to present a novel model-based parallel computing technique as a very effective and portable method for optimization of scientific multithreaded routines for performance, especially in the current multicore era where the processors have abundant number of cores. We propose two optimization methods, PFFT-FPM and PFFT-FPM-PAD, based on this technique. They compute 2D-DFT of a complex signal matrix of size NxN using p abstract processors. Both algorithms take as inputs, discrete 3D functions of performance against problem size of the processors and output the transformed signal matrix. Based on our experiments on a modern Intel Haswell multicore server consisting of 36 physical cores, the average and maximum speedups observed for PFFT-FPM using FFTW-3.3.7 are 1.9x and 6.8x respectively and the average and maximum speedups observed using Intel MKL FFT are 1.3x and 2x respectively. The average and maximum speedups observed for PFFT-FPM-PAD using FFTW-3.3.7 are 2x and 9.4x respectively and the average and maximum speedups observed using Intel MKL FFT are 1.4x and 5.9x respectively.

研究の動機と目的

  • 急速に進化するハードウェアの文脈において、アーキテクチャに特化したコード最適化の限界に対処すること。特に、長期間にわたる最適化が性能向上をもたらさない「赤女王効果」に起因するものである。
  • Intel MKL FFTのようなベンダー最適化ライブラリが、FFTWのようなオープンソースの代替品を常に上回ると仮定する考え方に挑戦すること。特に平均性能においては、その仮定が妥当でない可能性がある。
  • 問題サイズやプロセッサ構成の変化に応じたパフォーマンス変動に適応できる、移植性のあるモデルベースの最適化手法を開発すること。
  • 関数的パフォーマンスモデル(FPM)を用いた知的な適応的データ分割により、現代のマルチコアシステム上でのマルチスレッド2D-DFT実装の平均パフォーマンスを向上させること。
  • モデルベース最適化が、多様な問題サイズにおいて、レガシーライブラリおよび高度に最適化されたベンダーライブラリを上回ることを実証すること。

提案手法

  • 本手法は、問題サイズの連続関数としての関数的パフォーマンスモデル(FPM)を用い、プロセッサのパフォーマンスを予測することで、データ駆動型の負荷分散を可能にする。
  • PFFT-FPMは、FPMに基づいてp個の抽象プロセッサに2次元信号行列を分割し、合計実行時間を最小化する。
  • PFFT-FPM-PADは、PFFT-FPMを拡張したもので、パディングを組み込むことで負荷の不均衡を軽減し、負荷分散の質を向上させる。
  • アルゴリズムは、入力として離散的な3次元パフォーマンス関数(プロセッサ、問題サイズ、パフォーマンス)を受け取り、最適化された2D-DFTの結果を出力する。
  • パフォーマンスモデルは、36コアシステム上で1000個の問題サイズについてFFTW-2.1.5、FFTW-3.3.7、Intel MKL FFTをプロファイリングすることで実験的に導出された。
  • 繰り返し実行とスチューデントt検定を用いた統計的妥当性評価により、パフォーマンス測定の95%信頼区間を2.5%の精度で保証した。

実験結果

リサーチクエスチョン

  • RQ1急速に進化するマルチコアシステムにおいて、アーキテクチャに特化した最適化は、赤女王効果の影響で収益が逓減するのか?
  • RQ2移植性があり、モデルベースの最適化手法は、レガシーライブラリおよび高度に最適化されたベンダーライブラリの両方を平均パフォーマンスで上回ることができるのか?
  • RQ3関数的パフォーマンスモデル(FPM)は、マルチコアプロセッサ上での2D-DFTの適応的かつ負荷分散型並列化をどの程度可能にするのか?
  • RQ4提案されたPFFT-FPMおよびPFFT-FPM-PAD手法は、未最適化およびベンダー最適化FFT実装と比較して、多様な問題サイズにおいてどの程度パフォーマンスを向上させるのか?
  • RQ5PFFT-FPM-PADにおけるパディングの影響は、マルチスレッド2D-DFT計算における負荷分散とパフォーマンス向上にどのような影響を与えるのか?

主な発見

  • FFTW-3.3.7の平均パフォーマンスは、PFFT-FPMで最適化された結果、未最適化のFFTW-2.1.5よりも42%向上した。ただし、FFTW-2.1.5は平均的に速い。
  • PFFT-FPMは、FFTW-3.3.7に対して平均1.9倍、最大6.8倍の高速化を達成。Intel MKL FFTに対しては平均1.3倍、最大2倍の高速化を達成。
  • PFFT-FPM-PADは、FFTW-3.3.7に対して平均2.0倍、最大9.4倍の高速化を達成。Intel MKL FFTに対しては平均1.4倍、最大5.9倍の高速化を達成。
  • FFTW-3.3.7のパフォーマンス変動幅は、FFTW-2.1.5よりも顕著に広く、問題サイズやワークロードの不均衡に高い感受性を示している。
  • Intel MKL FFTはピークパフォーマンス(39,424 MFLOPs)でFFTW-2.1.5(17,841 MFLOPs)を上回っているが、平均パフォーマンス(9,572 MFLOPs)は、PFFT-FPM-PADフレームワークで最適化されたFFTW-2.1.5に劣る。
  • 結果から、モデルベース最適化が、未最適化および高度に最適化されたベンダーライブラリを上回る平均パフォーマンスを達成できることを確認した。これにより、提案手法の移植性と有効性が裏付けられた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。