マトリックス(L)オーダー100およびベクトル(u)100のblas level2関数dtrsv()を使用してL * u = uを解こうとしています。コンパイル時にライブラリを「-lblas」とリンクしました。しかし、それはdtrsv()への未定義の参照を言います。また、これについて Gflops/sec を計算するにはどうすればよいですか (im dtrsv() への呼び出しのタイミング)
1 に答える
0
undefined reference
呼び出した関数が使用した名前ではないか、リンクしようとしたライブラリがそこにないことを意味します。
システムに BLAS ライブラリがインストールされているかどうか、およびそのライブラリの正しい関数名を確認してください。
実行dtrsv()
できても正しい出力が得られない場合は、入力データが有効かどうかを確認できます。詳しくはリファレンスマニュアルをご確認ください。これは、Intel MKL ライブラリーのバージョンです。
説明
?trsv ルーチンは、連立方程式の 1 つを解きます。
A*x = b、または A'*x = b、または conjg(A')*x = b、
どこ:
b と x は n 要素ベクトルです。
A は、n 行 n 列の単位または非単位の上三角行列または下三角行列です。
このルーチンは、特異点または特異点付近をテストしません。
このようなテストは、このルーチンを呼び出す前に実行する必要があります。
于 2013-10-28T16:47:47.170 に答える