Main Content

coder.BLASCallback.getHeaderFilename

クラス: coder.BLASCallback
名前空間: coder

CBLAS ヘッダー ファイルのファイル名を返す

構文

headerName = coder.BLASCallback.getHeaderFilename()

説明

headerName = coder.BLASCallback.getHeaderFilename() は、特定の BLAS ライブラリへの C インターフェイスを定義する CBLAS ヘッダー ファイルの名前を返します。

coder.BLASCallback は BLAS コールバック クラスを定義するための抽象クラスです。BLAS コールバック クラスは、MATLAB® コードから生成されるコードで BLAS 呼び出しに使用する BLAS ライブラリと CBLAS ヘッダーおよびデータ型情報を指定します。コード生成時に、BLAS コールバック クラスを指定すると、特定のベクトルおよび行列関数の呼び出しで、コード ジェネレーターはスタンドアロン コードで BLAS 呼び出しを生成します。

getHeaderFilename は、抽象メソッドです。これを、coder.BLASCallback から派生するコールバック クラスの定義で実装しなければなりません。コード ジェネレーターは、getHeaderFilename で返された CBLAS ヘッダー ファイル名を使用して、生成コードに #include ステートメントを生成します。

出力引数

すべて展開する

特定の BLAS ライブラリに C インターフェイスを定義する CBLAS ヘッダー ファイルの名前を指定する文字ベクトル。

属性

Abstracttrue
Statictrue

メソッドの属性の詳細については、メソッドの属性を参照してください。

すべて展開する

この例では、getHeaderFilename メソッドを記述して、CBLAS ヘッダー ファイルの名前を返す方法を説明します。

coder.BLASCallback から派生するクラスで、CBLAS ヘッダー ファイルの名前を文字ベクトルとして返すメソッド getHeaderFilename を記述します。以下に、Windows® プラットフォームで Intel MKL BLAS ライブラリと統合するためのコールバック クラス mklcallback の実装例を示します。このクラスでは、getHeaderFilename は Intel MKL BLAS ライブラリの CBLAS ヘッダー ファイルである 'mkl_cblas.h' を返します。

classdef mklcallback < coder.BLASCallback
    methods (Static)
        function updateBuildInfo(buildInfo, ~)
            libPath = fullfile(pwd,'mkl','WIN','lib','intel64');
            libPriority = '';
            libPreCompiled = true;
            libLinkOnly = true;
            libs = {'mkl_intel_ilp64.lib' 'mkl_intel_thread.lib' 'mkl_core.lib'};
            buildInfo.addLinkObjects(libs, libPath, libPriority, libPreCompiled, libLinkOnly);
            buildInfo.addLinkObjects('libiomp5md.lib',fullfile(matlabroot,'bin','win64'), ...
                libPriority, libPreCompiled, libLinkOnly);
            buildInfo.addIncludePaths(fullfile(pwd,'mkl','WIN','include'));
            buildInfo.addDefines('-DMKL_ILP64');
        end
        function headerName = getHeaderFilename()
            headerName = 'mkl_cblas.h';
        end
        function intTypeName = getBLASIntTypeName()
            intTypeName = 'MKL_INT';
        end
    end
end

異なる BLAS ライブラリを使用している場合は、'mkl_cblas.h' を CBLAS ヘッダー ファイルの名前と置き換えます。

バージョン履歴

R2018b で導入