2009-10-29 19 views
20

誰もがIntel Math Kernel LibraryAMD Math Core Libraryのプログラミング経験を持っていますか?私は高性能な統計計算のためにパーソナルコンピュータを構築しており、購入するコンポーネントについて議論しています。 AMD Math Coreライブラリの魅力は、それが無料だということですが、私は学界にいるので、MKLはそれほど高価ではありません。しかし、私は考えを聞くことに興味があります:Intel MKLとAMDの数学コアライブラリ

  1. これは優れたAPIを提供しますか?
  2. これは、ライセンスおよびハードウェアのコストを含め、平均で1ドルあたりのパフォーマンスが向上します。
  3. AMCL-GPUは考慮する必要がありますか?
+0

AMDプロセッサでMKLを動作させるトリックがあるのだろうかと思います。 – Royi

+0

@Drazick MKLはAMDプロセッサでも動作し、最適化とすべての機能を備えています。 – becko

答えて

9

インテルMKLとACMLには同様のAPIがありますが、MKLにはBLAS(およびCBLAS)/ LAPACK/FFT /ベクターと統計数学/スパース直接ソート/スパースBLASなどの豊富なサポート機能があります。 Intel MKLは、IntelとAMDプロセッサの両方に最適化されており、活発なユーザーフォーラムがあり、助けや指導を受けることができます。 (http://www.advancedclustering.com/company-blog/high-performance-linpack-on-xeon-5500-v-opteron-2400.html

•Shane Corder、Advanced Clustering(HPCWire:ベンチマークチャレンジ:Nehalem対イスタンブール):「最近のテストでは、実際の経験では、インテル®コンパイラーとインテル®マス・カーネル・ライブラリー(MKL)が最高のパフォーマンスを発揮することがわかっています。インテルのツールキットに着手するのではなく、インテル、GNUコンパイラ、Portland Groupなどのさまざまなコンパイラを試しました。また、MKL、AMD Core Math Library(ACML)、Texas大学のlibGOTOなど、さまざまな線形代数ライブラリをテストしました。すべてのテストでは、たとえAMDシステムであっても、インテルコンパイラとインテルの数学ライブラリの両方を使用して最高のパフォーマンスを達成できることがわかったため、これらをベンチマークのベースとして使用しました」。[ベンチマークテストでは4コアNehalem X5550 74.0GFs対2.66GHz対Istanbul.2435 2.6GHz、99.4GFs;イスタンブールは50%以上のコアにもかかわらず34%速く]

ホープが役に立ちます。

2

私はBLAS/LAPACKルーチンにAMCLを使用していますので、おそらくあなたの質問には答えられませんが、それは誰かにとって有益だと思います。それらをバニラBLAS/LAPACKと比較すると、私の特定のユースケースでは、パフォーマンスは2-3倍向上しました。線形解法と固有システム計算の両方のために、密な非対称複素行列に使用しました。関数宣言は、ではなく、で、バニラルーチンと同じであることがわかります。これは私が2つの間を自由に切り替えるための相当量のプリプロセッサマクロを必要としました。特に、AMCLのすべてのLAPACKルーチンは作業配列を必要としません。これはAMCLがあなたが使用する唯一のライブラリである場合には非常に便利です。

3

実際、ACMLには2つのバージョンのLAPACKルーチンがあります。末尾にアンダースコア(_)が付いていないものはCバージョンのルーチンです。これはVictorが述べたように、ワークスペース配列を必要とせず、パラメータの参照の代わりに値を渡すことができます。しかし、アンダースコアを持つものはバニラのFortranルーチンです。 libacml_dll.dllで "dumpbin/exports"を実行すると、表示されます。

関連する問題