技術と感動をつなぐMetro

GPU高速化事例

固体境界が埋め込まれた改良ナビエ・ストークス方程式の解法

固体境界が埋め込まれた流れ場の基礎方程式として改良ナビエ・ストークス方程式を用いた数値解法をFortran90で実装したサンプルプログラム(R&B法 適用)

出典:
第38回数値流体力学シンポジウム(2024.12.11-13)
「マルチカラー法によるポアソン方程式SOR解法の加速化と境界埋め込みナビエ・ストークス方程式への適用」
大島 伸行、中道 信人(北海道大学)、白井 信裕(株式会社メトロ)
https://eprints.lib.hokudai.ac.jp/dspace/handle/2115/89344

高コスト部1


 995    !$acc kernels
 996    !$acc loop independent
 997    do i = 0, m+1
 998    !$acc loop independent
 999      do j = 0, n+1
1000        p_old(i, j) = p(i, j)
1001      end do
1002    end do
1003    !$acc end kernels
    

高コスト部2


1006    !$acc kernels
1007    !$acc loop independent
1008    do k = 2, m*n, 2    ! even space
1009      j = (k - 1) / m + 1
1010      i = k - (j - 1) * m
1011
1012      !-- IF m is EVEN (Based on Column-Major Order; FORTRAN)
1013      if(mod(m,2)==0 .and. mod(j,2)==0) i = i - 1
1014
1015      p(i, j) = ( bb(i, j) &
1016                - ae(i, j) * p_old(i+1, j) - aw(i, j) * p_old(i-1, j)    &
1017                - an(i, j) * p_old(i, j+1) - as(i, j) * p_old(i, j-1) )  &
1018                / ap(i, j) * relux_factor                                &
1019              + p_old(i, j) * (1. - relux_factor)
1020    end do
1021    !$acc end kernels
  
GPU化効果のグラフ。高コスト部のGPU化と転送時間の改善により、CPU1コア比100倍の性能を実現

ホワイトペーパーのダウンロード

GPU高速化サービスによる事例(全15ページ)

本資料では、 弊社技術の一端として「 GPU化による高速化事例」をご紹介します。

ポイントは全部で5つ

  • データ転送の効率化
  • GPU化率の改善
  • データ常駐化の促進
  • GPU実行効率の改善
  • 高コスト部の性能妥当性検証(メモリスループット)

個人情報の取り扱いについて

お客様からいただく個人情報は、情報提供のために使用させていただきます。これにあたり、株式会社メトロからご連絡を取らせていただくことがございます。個人情報の取り扱いについてはプライバシーポリシーをご覧ください。

関連サービス

GPUは非常に高いポテンシャルがある一方で、そのポテンシャルを持て余しているケースが数多くみられます。
メトロは30年以上に渡るコンパイラ開発やプログラム高速化の知見により、GPUを使ったアプリケーションの高速化を実現し、みなさまの研究・開発をスムーズに進める支援をします。

お客様の研究や開発における課題解決を支援します。一般的なアプリにはない機能の開発や、論文の計算手法の実装などを行います。

資料請求・お問合わせはこちらから

まずはお気軽にお電話またはフォームからお問合わせください

ページトップへ戻る