問題タブ [intel-mic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
intel-mic - IntelMICでコードを実行しているときにデバイスが利用できないというエラーが発生しました
Intel MICでコードを実行しようとすると、「オフロードエラー:MICにオフロードできません-デバイスが利用できません」などのエラーが表示されます。
私のサンプルコードは
vectorization - Intel の MIC の zgemm
MIC の 512 ビット ベクトル ユニットを使用して、次のことを達成する必要があります。
私が考えた方法は、Intel が SSE に対して提案したものと同様で、AVX でも機能します。
_mm512_swizzle_pd()
関数を使用して以下を形成します。
m0 = |a4|a4|a3|a3|a2|a2|a1|a1| および m0_t = |b4|b4|b3|b3|b2|b2|b1|b1| in0 = |d4|c4|d3|c3|d2|c2|d1|c1| in0_r = |c4|d4|c3|d3|c2|d2|c1|d1|
上記の 2 つを乗算し、MIC の addsub_pd() に似たものを使用します。しかし、対応する組み込み関数はないようです。
これを達成する方法について何か提案はありますか?
Intel の MIC (Xeon Phi) には、fmadd、fmsub、fnmadd、fnmsub などのいくつかの FMA 組み込み関数もあり、この状況に役立つはずであり、次の 2 つのアプローチがあります。
より良いアプローチはありますか?これらのアプローチの欠点はありますか?
linux - LinuxでVtuneAnalyzerAPIを使用する方法
Vtune Profiler APIを使用して、Xeon Phi(Linux、オフロード実行を使用)で実行されているコードをプロファイリングして、実行された命令の数、L1キャッシュミスの数などを確認したいのですが、使用方法を説明する場所が見つかりません。このライブラリ。
Linuxのライブラリファイルとインクルードファイルはどこにありますか?Xeon Phiで実行されている短いコードをプロファイリングするコードを作成するにはどうすればよいですか?
私はこのようなものを期待します:
ありがとう
vectorization - XeonPhiのloaddup_pd/unpacklo_pd
Xeon Phiレジスタのように、512幅のSIMDベクトルに次のdoubleがある場合:
それを次のようにすることは可能ですか?
単一の命令を使用しますか?また、doubleのビット単位の組み込み関数がないため、これは上記を達成するための有効な方法ですか?
vectorization - インテル Xeon Phi の順列
Xeon Phi レジスタに次の 4 つの double のベクトルがあるとします。
それらを次のように並べ替えたい:
目標は取得することです:
最小数の命令/サイクルで上記を達成するにはどうすればよいですか?
vectorization - XeonPhiでの散布/収集
Xeon Phi命令セットに関するIntelのマニュアルを参照していましたが、スキャッター/ギャザー命令がどのように機能するかを理解できませんでした。
次のdoubleのベクトルがあるとします。
次のように4つのベクトルを作成することは可能ですか?
これらの手順を使用しますか?これを達成する他の方法はありますか?
compiler-construction - Intel Xeon Phiは、高価なIntelコンパイラなしで使用できますか?
Intel Xeon Phiコプロセッサを並列プラットフォームとして使用するには、Intel Composer XEコンパイラのライセンスが必要ですか、それとも代替コンパイラがありますか?
c++ - Intel MIC オフロード -- STL ではどのように機能しますか?
私は、C++/OpenMP コードで実装されたシステムを使用しており、STL とEigenのデータ構造をいたるところで使用しています。アルゴリズム的には、このコードは、新しい Intel MIC ( Xeon Phi ) カードによる高速化の有力な候補のようです。
コード内の典型的な並列ループは次のようになります。
上記の疑似コードは妥当なパフォーマンスで実行されますが、その一部を Xeon Phi カードにオフロードするとよいでしょう。これを行う私の試みは次のとおりです。
ただし、インテル ICC/ICPC コンパイラーは次のようなエラーを吐き出します: STL またはEigenerror: function "computeIntensiveFunction" called in offload region must have been declared with compatible "target" attribute.
を含む関数およびデータ構造に対して、このような苦情が表示されるようです。
これを回避する方法について何か考えはありますか?
私は Xeon Phi (CUDA プログラマーの回復) を使用するのが初めてなので、「オフロードできるもの」の境界を完全には理解していません。
linux - root として sudo を実行すると環境が異なる?
Xeon Phi コプロセッサーをインストールしようとしています。特定の動作は、おそらく関連するツールに関連しています。私の質問は、より一般的な性質のものです。
root としてコマンドを実行すると、セグメンテーション違反が発生します。root として実行するが (私の意見では不必要に) usesudo
を使用すると、次のように動作します。
実行されている環境にはどのような違いがありmicctrl
ますか?
(編集:)以下のオプションとして環境変数を除外したと思います。
システムは SLES 11.2 です。
ありがとうございました!