Adding direct OpenBLAS code for some speedups.
This commit is contained in:
parent
6745873652
commit
c9061824c5
27 changed files with 19632 additions and 1 deletions
|
@ -72,7 +72,7 @@ in *Facial Expression Recognition and Analysis Challenge*,
|
||||||
|
|
||||||
Copyright can be found in the Copyright.txt
|
Copyright can be found in the Copyright.txt
|
||||||
|
|
||||||
You have to respect boost, TBB, dlib, and OpenCV licenses.
|
You have to respect boost, TBB, dlib, OpenBLAS, and OpenCV licenses.
|
||||||
|
|
||||||
# Commercial license
|
# Commercial license
|
||||||
|
|
||||||
|
|
|
@ -61,6 +61,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -68,6 +69,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -75,6 +77,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -82,6 +85,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
|
|
@ -61,6 +61,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -68,6 +69,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -75,6 +77,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -82,6 +85,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
|
|
@ -60,6 +60,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -67,6 +68,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -74,6 +76,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -81,6 +84,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
|
|
@ -60,6 +60,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -67,6 +68,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\lib\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -74,6 +76,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -81,6 +84,7 @@
|
||||||
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\lib\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\lib\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\lib\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\lib\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
|
23
lib/3rdParty/OpenBLAS/OpenBLAS.props
vendored
Normal file
23
lib/3rdParty/OpenBLAS/OpenBLAS.props
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ImportGroup Label="PropertySheets" />
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup />
|
||||||
|
<ItemDefinitionGroup>
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>$(SolutionDir)lib\3rdParty\OpenBLAS\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalLibraryDirectories>$(SolutionDir)lib\3rdParty\OpenBLAS\lib\$(PlatformShortName);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
<AdditionalDependencies>libopenblas.dll.a;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>
|
||||||
|
</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
<PreLinkEvent>
|
||||||
|
<Command>xcopy /I /E /Y /D /C "$(SolutionDir)lib\3rdParty\OpenBlas\bin\$(PlatformShortName)" "$(OutDir)"</Command>
|
||||||
|
</PreLinkEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup />
|
||||||
|
</Project>
|
BIN
lib/3rdParty/OpenBLAS/bin/x64/libgcc_s_seh-1.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x64/libgcc_s_seh-1.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x64/libgfortran-3.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x64/libgfortran-3.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x64/libopenblas.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x64/libopenblas.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x64/libquadmath-0.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x64/libquadmath-0.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x86/libgcc_s_sjlj-1.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x86/libgcc_s_sjlj-1.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x86/libgfortran-3.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x86/libgfortran-3.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x86/libopenblas.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x86/libopenblas.dll
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/bin/x86/libquadmath-0.dll
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/bin/x86/libquadmath-0.dll
vendored
Normal file
Binary file not shown.
364
lib/3rdParty/OpenBLAS/include/cblas.h
vendored
Normal file
364
lib/3rdParty/OpenBLAS/include/cblas.h
vendored
Normal file
|
@ -0,0 +1,364 @@
|
||||||
|
#ifndef CBLAS_H
|
||||||
|
#define CBLAS_H
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
#include "openblas_config.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
/* Assume C declarations for C++ */
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
/*Set the number of threads on runtime.*/
|
||||||
|
void openblas_set_num_threads(int num_threads);
|
||||||
|
void goto_set_num_threads(int num_threads);
|
||||||
|
|
||||||
|
/*Get the number of threads on runtime.*/
|
||||||
|
int openblas_get_num_threads(void);
|
||||||
|
|
||||||
|
/*Get the number of physical processors (cores).*/
|
||||||
|
int openblas_get_num_procs(void);
|
||||||
|
|
||||||
|
/*Get the build configure on runtime.*/
|
||||||
|
char* openblas_get_config(void);
|
||||||
|
|
||||||
|
/*Get the CPU corename on runtime.*/
|
||||||
|
char* openblas_get_corename(void);
|
||||||
|
|
||||||
|
/* Get the parallelization type which is used by OpenBLAS */
|
||||||
|
int openblas_get_parallel(void);
|
||||||
|
/* OpenBLAS is compiled for sequential use */
|
||||||
|
#define OPENBLAS_SEQUENTIAL 0
|
||||||
|
/* OpenBLAS is compiled using normal threading model */
|
||||||
|
#define OPENBLAS_THREAD 1
|
||||||
|
/* OpenBLAS is compiled using OpenMP threading model */
|
||||||
|
#define OPENBLAS_OPENMP 2
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Since all of GotoBlas was written without const,
|
||||||
|
* we disable it at build time.
|
||||||
|
*/
|
||||||
|
#ifndef OPENBLAS_CONST
|
||||||
|
# define OPENBLAS_CONST const
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#define CBLAS_INDEX size_t
|
||||||
|
|
||||||
|
typedef enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102} CBLAS_ORDER;
|
||||||
|
typedef enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113, CblasConjNoTrans=114} CBLAS_TRANSPOSE;
|
||||||
|
typedef enum CBLAS_UPLO {CblasUpper=121, CblasLower=122} CBLAS_UPLO;
|
||||||
|
typedef enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132} CBLAS_DIAG;
|
||||||
|
typedef enum CBLAS_SIDE {CblasLeft=141, CblasRight=142} CBLAS_SIDE;
|
||||||
|
|
||||||
|
float cblas_sdsdot(OPENBLAS_CONST blasint n, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
double cblas_dsdot (OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
float cblas_sdot(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
double cblas_ddot(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
openblas_complex_float cblas_cdotu(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
openblas_complex_float cblas_cdotc(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
openblas_complex_double cblas_zdotu(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
openblas_complex_double cblas_zdotc(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_cdotu_sub(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy, openblas_complex_float *ret);
|
||||||
|
void cblas_cdotc_sub(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *y, OPENBLAS_CONST blasint incy, openblas_complex_float *ret);
|
||||||
|
void cblas_zdotu_sub(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double *y, OPENBLAS_CONST blasint incy, openblas_complex_double *ret);
|
||||||
|
void cblas_zdotc_sub(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double *y, OPENBLAS_CONST blasint incy, openblas_complex_double *ret);
|
||||||
|
|
||||||
|
float cblas_sasum (OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx);
|
||||||
|
double cblas_dasum (OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx);
|
||||||
|
float cblas_scasum(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx);
|
||||||
|
double cblas_dzasum(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx);
|
||||||
|
|
||||||
|
float cblas_snrm2 (OPENBLAS_CONST blasint N, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
double cblas_dnrm2 (OPENBLAS_CONST blasint N, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
float cblas_scnrm2(OPENBLAS_CONST blasint N, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
double cblas_dznrm2(OPENBLAS_CONST blasint N, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
CBLAS_INDEX cblas_isamax(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx);
|
||||||
|
CBLAS_INDEX cblas_idamax(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx);
|
||||||
|
CBLAS_INDEX cblas_icamax(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx);
|
||||||
|
CBLAS_INDEX cblas_izamax(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx);
|
||||||
|
|
||||||
|
void cblas_saxpy(OPENBLAS_CONST blasint n, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_daxpy(OPENBLAS_CONST blasint n, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_caxpy(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_zaxpy(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_scopy(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_dcopy(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_ccopy(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_zcopy(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_sswap(OPENBLAS_CONST blasint n, float *x, OPENBLAS_CONST blasint incx, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_dswap(OPENBLAS_CONST blasint n, double *x, OPENBLAS_CONST blasint incx, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_cswap(OPENBLAS_CONST blasint n, float *x, OPENBLAS_CONST blasint incx, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_zswap(OPENBLAS_CONST blasint n, double *x, OPENBLAS_CONST blasint incx, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_srot(OPENBLAS_CONST blasint N, float *X, OPENBLAS_CONST blasint incX, float *Y, OPENBLAS_CONST blasint incY, OPENBLAS_CONST float c, OPENBLAS_CONST float s);
|
||||||
|
void cblas_drot(OPENBLAS_CONST blasint N, double *X, OPENBLAS_CONST blasint incX, double *Y, OPENBLAS_CONST blasint incY, OPENBLAS_CONST double c, OPENBLAS_CONST double s);
|
||||||
|
|
||||||
|
void cblas_srotg(float *a, float *b, float *c, float *s);
|
||||||
|
void cblas_drotg(double *a, double *b, double *c, double *s);
|
||||||
|
|
||||||
|
void cblas_srotm(OPENBLAS_CONST blasint N, float *X, OPENBLAS_CONST blasint incX, float *Y, OPENBLAS_CONST blasint incY, OPENBLAS_CONST float *P);
|
||||||
|
void cblas_drotm(OPENBLAS_CONST blasint N, double *X, OPENBLAS_CONST blasint incX, double *Y, OPENBLAS_CONST blasint incY, OPENBLAS_CONST double *P);
|
||||||
|
|
||||||
|
void cblas_srotmg(float *d1, float *d2, float *b1, OPENBLAS_CONST float b2, float *P);
|
||||||
|
void cblas_drotmg(double *d1, double *d2, double *b1, OPENBLAS_CONST double b2, double *P);
|
||||||
|
|
||||||
|
void cblas_sscal(OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dscal(OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_cscal(OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_zscal(OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_csscal(OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_zdscal(OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_sgemv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE trans, OPENBLAS_CONST blasint m, OPENBLAS_CONST blasint n,
|
||||||
|
OPENBLAS_CONST float alpha, OPENBLAS_CONST float *a, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float beta, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_dgemv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE trans, OPENBLAS_CONST blasint m, OPENBLAS_CONST blasint n,
|
||||||
|
OPENBLAS_CONST double alpha, OPENBLAS_CONST double *a, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double beta, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_cgemv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE trans, OPENBLAS_CONST blasint m, OPENBLAS_CONST blasint n,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *a, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST float *beta, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
void cblas_zgemv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE trans, OPENBLAS_CONST blasint m, OPENBLAS_CONST blasint n,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *a, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx, OPENBLAS_CONST double *beta, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_sger (OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_dger (OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_cgeru(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_cgerc(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_zgeru(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_zgerc(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
|
||||||
|
void cblas_strsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dtrsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ctrsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ztrsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_strmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dtrmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ctrmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ztrmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_ssyr(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_dsyr(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_cher(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_zher(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
|
||||||
|
void cblas_ssyr2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo,OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X,
|
||||||
|
OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_dsyr2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X,
|
||||||
|
OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_cher2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX,
|
||||||
|
OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *A, OPENBLAS_CONST blasint lda);
|
||||||
|
void cblas_zher2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX,
|
||||||
|
OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *A, OPENBLAS_CONST blasint lda);
|
||||||
|
|
||||||
|
void cblas_sgbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST blasint KL, OPENBLAS_CONST blasint KU, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_dgbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST blasint KL, OPENBLAS_CONST blasint KU, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_cgbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST blasint KL, OPENBLAS_CONST blasint KU, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_zgbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST blasint KL, OPENBLAS_CONST blasint KU, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
|
||||||
|
void cblas_ssbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A,
|
||||||
|
OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_dsbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A,
|
||||||
|
OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
|
||||||
|
|
||||||
|
void cblas_stbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dtbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ctbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ztbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_stbsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dtbsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ctbsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ztbsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_stpmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST float *Ap, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dtpmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST double *Ap, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ctpmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST float *Ap, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ztpmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST double *Ap, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_stpsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST float *Ap, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_dtpsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST double *Ap, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ctpsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST float *Ap, float *X, OPENBLAS_CONST blasint incX);
|
||||||
|
void cblas_ztpsv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_DIAG Diag,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST double *Ap, double *X, OPENBLAS_CONST blasint incX);
|
||||||
|
|
||||||
|
void cblas_ssymv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A,
|
||||||
|
OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_dsymv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A,
|
||||||
|
OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_chemv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A,
|
||||||
|
OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_zhemv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A,
|
||||||
|
OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
|
||||||
|
|
||||||
|
void cblas_sspmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *Ap,
|
||||||
|
OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_dspmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *Ap,
|
||||||
|
OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
|
||||||
|
void cblas_sspr(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, float *Ap);
|
||||||
|
void cblas_dspr(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, double *Ap);
|
||||||
|
|
||||||
|
void cblas_chpr(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, float *A);
|
||||||
|
void cblas_zhpr(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X,OPENBLAS_CONST blasint incX, double *A);
|
||||||
|
|
||||||
|
void cblas_sspr2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *A);
|
||||||
|
void cblas_dspr2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *A);
|
||||||
|
void cblas_chpr2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *Y, OPENBLAS_CONST blasint incY, float *Ap);
|
||||||
|
void cblas_zhpr2(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *Y, OPENBLAS_CONST blasint incY, double *Ap);
|
||||||
|
|
||||||
|
void cblas_chbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_zhbmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
|
||||||
|
void cblas_chpmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *Ap, OPENBLAS_CONST float *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST float *beta, float *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
void cblas_zhpmv(OPENBLAS_CONST enum CBLAS_ORDER order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *Ap, OPENBLAS_CONST double *X, OPENBLAS_CONST blasint incX, OPENBLAS_CONST double *beta, double *Y, OPENBLAS_CONST blasint incY);
|
||||||
|
|
||||||
|
void cblas_sgemm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransB, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_dgemm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransB, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_cgemm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransB, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float *beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_cgemm3m(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransB, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float *beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zgemm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransB, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double *beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zgemm3m(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransB, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double *beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
|
||||||
|
void cblas_ssymm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_dsymm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_csymm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float *beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zsymm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double *beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
void cblas_ssyrk(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_dsyrk(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_csyrk(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zsyrk(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
void cblas_ssyr2k(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_dsyr2k(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_csyr2k(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float *beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zsyr2k(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans,
|
||||||
|
OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double *beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
void cblas_strmm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
void cblas_dtrmm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
void cblas_ctrmm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
void cblas_ztrmm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
|
||||||
|
void cblas_strsm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
void cblas_dtrsm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
void cblas_ctrsm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, float *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
void cblas_ztrsm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE TransA,
|
||||||
|
OPENBLAS_CONST enum CBLAS_DIAG Diag, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, double *B, OPENBLAS_CONST blasint ldb);
|
||||||
|
|
||||||
|
void cblas_chemm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float *beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zhemm(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_SIDE Side, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST blasint M, OPENBLAS_CONST blasint N,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double *beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
void cblas_cherk(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST float alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zherk(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST double alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
void cblas_cher2k(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST float *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST float beta, float *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
void cblas_zher2k(OPENBLAS_CONST enum CBLAS_ORDER Order, OPENBLAS_CONST enum CBLAS_UPLO Uplo, OPENBLAS_CONST enum CBLAS_TRANSPOSE Trans, OPENBLAS_CONST blasint N, OPENBLAS_CONST blasint K,
|
||||||
|
OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *A, OPENBLAS_CONST blasint lda, OPENBLAS_CONST double *B, OPENBLAS_CONST blasint ldb, OPENBLAS_CONST double beta, double *C, OPENBLAS_CONST blasint ldc);
|
||||||
|
|
||||||
|
void cblas_xerbla(blasint p, char *rout, char *form, ...);
|
||||||
|
|
||||||
|
/*** BLAS extensions ***/
|
||||||
|
|
||||||
|
void cblas_saxpby(OPENBLAS_CONST blasint n, OPENBLAS_CONST float alpha, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx,OPENBLAS_CONST float beta, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_daxpby(OPENBLAS_CONST blasint n, OPENBLAS_CONST double alpha, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx,OPENBLAS_CONST double beta, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_caxpby(OPENBLAS_CONST blasint n, OPENBLAS_CONST float *alpha, OPENBLAS_CONST float *x, OPENBLAS_CONST blasint incx,OPENBLAS_CONST float *beta, float *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_zaxpby(OPENBLAS_CONST blasint n, OPENBLAS_CONST double *alpha, OPENBLAS_CONST double *x, OPENBLAS_CONST blasint incx,OPENBLAS_CONST double *beta, double *y, OPENBLAS_CONST blasint incy);
|
||||||
|
|
||||||
|
void cblas_somatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST float calpha, OPENBLAS_CONST float *a,
|
||||||
|
OPENBLAS_CONST blasint clda, float *b, OPENBLAS_CONST blasint cldb);
|
||||||
|
void cblas_domatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST double calpha, OPENBLAS_CONST double *a,
|
||||||
|
OPENBLAS_CONST blasint clda, double *b, OPENBLAS_CONST blasint cldb);
|
||||||
|
void cblas_comatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST float* calpha, OPENBLAS_CONST float* a,
|
||||||
|
OPENBLAS_CONST blasint clda, float*b, OPENBLAS_CONST blasint cldb);
|
||||||
|
void cblas_zomatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST double* calpha, OPENBLAS_CONST double* a,
|
||||||
|
OPENBLAS_CONST blasint clda, double *b, OPENBLAS_CONST blasint cldb);
|
||||||
|
|
||||||
|
void cblas_simatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST float calpha, float *a,
|
||||||
|
OPENBLAS_CONST blasint clda, OPENBLAS_CONST blasint cldb);
|
||||||
|
void cblas_dimatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST double calpha, double *a,
|
||||||
|
OPENBLAS_CONST blasint clda, OPENBLAS_CONST blasint cldb);
|
||||||
|
void cblas_cimatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST float* calpha, float* a,
|
||||||
|
OPENBLAS_CONST blasint clda, OPENBLAS_CONST blasint cldb);
|
||||||
|
void cblas_zimatcopy(OPENBLAS_CONST enum CBLAS_ORDER CORDER, OPENBLAS_CONST enum CBLAS_TRANSPOSE CTRANS, OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST double* calpha, double* a,
|
||||||
|
OPENBLAS_CONST blasint clda, OPENBLAS_CONST blasint cldb);
|
||||||
|
|
||||||
|
void cblas_sgeadd(OPENBLAS_CONST enum CBLAS_ORDER CORDER,OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST float calpha, float *a, OPENBLAS_CONST blasint clda, OPENBLAS_CONST float cbeta,
|
||||||
|
float *c, OPENBLAS_CONST blasint cldc);
|
||||||
|
void cblas_dgeadd(OPENBLAS_CONST enum CBLAS_ORDER CORDER,OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST double calpha, double *a, OPENBLAS_CONST blasint clda, OPENBLAS_CONST double cbeta,
|
||||||
|
double *c, OPENBLAS_CONST blasint cldc);
|
||||||
|
void cblas_cgeadd(OPENBLAS_CONST enum CBLAS_ORDER CORDER,OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST float *calpha, float *a, OPENBLAS_CONST blasint clda, OPENBLAS_CONST float *cbeta,
|
||||||
|
float *c, OPENBLAS_CONST blasint cldc);
|
||||||
|
void cblas_zgeadd(OPENBLAS_CONST enum CBLAS_ORDER CORDER,OPENBLAS_CONST blasint crows, OPENBLAS_CONST blasint ccols, OPENBLAS_CONST double *calpha, double *a, OPENBLAS_CONST blasint clda, OPENBLAS_CONST double *cbeta,
|
||||||
|
double *c, OPENBLAS_CONST blasint cldc);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif
|
772
lib/3rdParty/OpenBLAS/include/f77blas.h
vendored
Normal file
772
lib/3rdParty/OpenBLAS/include/f77blas.h
vendored
Normal file
|
@ -0,0 +1,772 @@
|
||||||
|
#ifndef OPENBLAS_F77BLAS_H
|
||||||
|
#define OPENBLAS_F77BLAS_H
|
||||||
|
#include "openblas_config.h"
|
||||||
|
/*********************************************************************/
|
||||||
|
/* Copyright 2009, 2010 The University of Texas at Austin. */
|
||||||
|
/* All rights reserved. */
|
||||||
|
/* */
|
||||||
|
/* Redistribution and use in source and binary forms, with or */
|
||||||
|
/* without modification, are permitted provided that the following */
|
||||||
|
/* conditions are met: */
|
||||||
|
/* */
|
||||||
|
/* 1. Redistributions of source code must retain the above */
|
||||||
|
/* copyright notice, this list of conditions and the following */
|
||||||
|
/* disclaimer. */
|
||||||
|
/* */
|
||||||
|
/* 2. Redistributions in binary form must reproduce the above */
|
||||||
|
/* copyright notice, this list of conditions and the following */
|
||||||
|
/* disclaimer in the documentation and/or other materials */
|
||||||
|
/* provided with the distribution. */
|
||||||
|
/* */
|
||||||
|
/* THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY OF TEXAS AT */
|
||||||
|
/* AUSTIN ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, */
|
||||||
|
/* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF */
|
||||||
|
/* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE */
|
||||||
|
/* DISCLAIMED. IN NO EVENT SHALL THE UNIVERSITY OF TEXAS AT */
|
||||||
|
/* AUSTIN OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, */
|
||||||
|
/* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES */
|
||||||
|
/* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE */
|
||||||
|
/* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR */
|
||||||
|
/* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF */
|
||||||
|
/* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */
|
||||||
|
/* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT */
|
||||||
|
/* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE */
|
||||||
|
/* POSSIBILITY OF SUCH DAMAGE. */
|
||||||
|
/* */
|
||||||
|
/* The views and conclusions contained in the software and */
|
||||||
|
/* documentation are those of the authors and should not be */
|
||||||
|
/* interpreted as representing official policies, either expressed */
|
||||||
|
/* or implied, of The University of Texas at Austin. */
|
||||||
|
/*********************************************************************/
|
||||||
|
|
||||||
|
#ifndef ASSEMBLER
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
/* Assume C declarations for C++ */
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
int BLASFUNC(xerbla)(char *, blasint *info, blasint);
|
||||||
|
|
||||||
|
void openblas_set_num_threads_(int *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(sdot) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(sdsdot)(blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
|
||||||
|
double BLASFUNC(dsdot) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(ddot) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qdot) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef RETURN_BY_STRUCT
|
||||||
|
typedef struct {
|
||||||
|
float r, i;
|
||||||
|
} myccomplex_t;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
double r, i;
|
||||||
|
} myzcomplex_t;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
xdouble r, i;
|
||||||
|
} myxcomplex_t;
|
||||||
|
|
||||||
|
myccomplex_t BLASFUNC(cdotu) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
myccomplex_t BLASFUNC(cdotc) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
myzcomplex_t BLASFUNC(zdotu) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
myzcomplex_t BLASFUNC(zdotc) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
myxcomplex_t BLASFUNC(xdotu) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
myxcomplex_t BLASFUNC(xdotc) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
#elif defined RETURN_BY_STACK
|
||||||
|
void BLASFUNC(cdotu) (openblas_complex_float *, blasint *, float * , blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(cdotc) (openblas_complex_float *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zdotu) (openblas_complex_double *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(zdotc) (openblas_complex_double *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xdotu) (openblas_complex_xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(xdotc) (openblas_complex_xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
#else
|
||||||
|
openblas_complex_float BLASFUNC(cdotu) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
openblas_complex_float BLASFUNC(cdotc) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
openblas_complex_double BLASFUNC(zdotu) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
openblas_complex_double BLASFUNC(zdotc) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
openblas_complex_xdouble BLASFUNC(xdotu) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
openblas_complex_xdouble BLASFUNC(xdotc) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void BLASFUNC(saxpy) (blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(daxpy) (blasint *, double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qaxpy) (blasint *, xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(caxpy) (blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zaxpy) (blasint *, double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xaxpy) (blasint *, xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(caxpyc)(blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zaxpyc)(blasint *, double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xaxpyc)(blasint *, xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(scopy) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dcopy) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qcopy) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ccopy) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zcopy) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xcopy) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sswap) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dswap) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qswap) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cswap) (blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zswap) (blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xswap) (blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(sasum) (blasint *, float *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(scasum)(blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dasum) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qasum) (blasint *, xdouble *, blasint *);
|
||||||
|
double BLASFUNC(dzasum)(blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qxasum)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
blasint BLASFUNC(isamax)(blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(idamax)(blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(iqamax)(blasint *, xdouble *, blasint *);
|
||||||
|
blasint BLASFUNC(icamax)(blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(izamax)(blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(ixamax)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
blasint BLASFUNC(ismax) (blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(idmax) (blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(iqmax) (blasint *, xdouble *, blasint *);
|
||||||
|
blasint BLASFUNC(icmax) (blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(izmax) (blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(ixmax) (blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
blasint BLASFUNC(isamin)(blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(idamin)(blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(iqamin)(blasint *, xdouble *, blasint *);
|
||||||
|
blasint BLASFUNC(icamin)(blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(izamin)(blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(ixamin)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
blasint BLASFUNC(ismin)(blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(idmin)(blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(iqmin)(blasint *, xdouble *, blasint *);
|
||||||
|
blasint BLASFUNC(icmin)(blasint *, float *, blasint *);
|
||||||
|
blasint BLASFUNC(izmin)(blasint *, double *, blasint *);
|
||||||
|
blasint BLASFUNC(ixmin)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(samax) (blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(damax) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qamax) (blasint *, xdouble *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(scamax)(blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dzamax)(blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qxamax)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(samin) (blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(damin) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qamin) (blasint *, xdouble *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(scamin)(blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dzamin)(blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qxamin)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(smax) (blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dmax) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qmax) (blasint *, xdouble *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(scmax) (blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dzmax) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qxmax) (blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(smin) (blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dmin) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qmin) (blasint *, xdouble *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(scmin) (blasint *, float *, blasint *);
|
||||||
|
double BLASFUNC(dzmin) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qxmin) (blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sscal) (blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dscal) (blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qscal) (blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cscal) (blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zscal) (blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xscal) (blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csscal)(blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zdscal)(blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xqscal)(blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(snrm2) (blasint *, float *, blasint *);
|
||||||
|
FLOATRET BLASFUNC(scnrm2)(blasint *, float *, blasint *);
|
||||||
|
|
||||||
|
double BLASFUNC(dnrm2) (blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qnrm2) (blasint *, xdouble *, blasint *);
|
||||||
|
double BLASFUNC(dznrm2)(blasint *, double *, blasint *);
|
||||||
|
xdouble BLASFUNC(qxnrm2)(blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(srot) (blasint *, float *, blasint *, float *, blasint *, float *, float *);
|
||||||
|
void BLASFUNC(drot) (blasint *, double *, blasint *, double *, blasint *, double *, double *);
|
||||||
|
void BLASFUNC(qrot) (blasint *, xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *);
|
||||||
|
void BLASFUNC(csrot) (blasint *, float *, blasint *, float *, blasint *, float *, float *);
|
||||||
|
void BLASFUNC(zdrot) (blasint *, double *, blasint *, double *, blasint *, double *, double *);
|
||||||
|
void BLASFUNC(xqrot) (blasint *, xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *);
|
||||||
|
|
||||||
|
void BLASFUNC(srotg) (float *, float *, float *, float *);
|
||||||
|
void BLASFUNC(drotg) (double *, double *, double *, double *);
|
||||||
|
void BLASFUNC(qrotg) (xdouble *, xdouble *, xdouble *, xdouble *);
|
||||||
|
void BLASFUNC(crotg) (float *, float *, float *, float *);
|
||||||
|
void BLASFUNC(zrotg) (double *, double *, double *, double *);
|
||||||
|
void BLASFUNC(xrotg) (xdouble *, xdouble *, xdouble *, xdouble *);
|
||||||
|
|
||||||
|
void BLASFUNC(srotmg)(float *, float *, float *, float *, float *);
|
||||||
|
void BLASFUNC(drotmg)(double *, double *, double *, double *, double *);
|
||||||
|
|
||||||
|
void BLASFUNC(srotm) (blasint *, float *, blasint *, float *, blasint *, float *);
|
||||||
|
void BLASFUNC(drotm) (blasint *, double *, blasint *, double *, blasint *, double *);
|
||||||
|
void BLASFUNC(qrotm) (blasint *, xdouble *, blasint *, xdouble *, blasint *, xdouble *);
|
||||||
|
|
||||||
|
/* Level 2 routines */
|
||||||
|
|
||||||
|
void BLASFUNC(sger)(blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dger)(blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qger)(blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cgeru)(blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(cgerc)(blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zgeru)(blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(zgerc)(blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xgeru)(blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(xgerc)(blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sgemv)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dgemv)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qgemv)(char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cgemv)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zgemv)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xgemv)(char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(strsv) (char *, char *, char *, blasint *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(dtrsv) (char *, char *, char *, blasint *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(qtrsv) (char *, char *, char *, blasint *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctrsv) (char *, char *, char *, blasint *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(ztrsv) (char *, char *, char *, blasint *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(xtrsv) (char *, char *, char *, blasint *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(strmv) (char *, char *, char *, blasint *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(dtrmv) (char *, char *, char *, blasint *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(qtrmv) (char *, char *, char *, blasint *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctrmv) (char *, char *, char *, blasint *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(ztrmv) (char *, char *, char *, blasint *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(xtrmv) (char *, char *, char *, blasint *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(stpsv) (char *, char *, char *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dtpsv) (char *, char *, char *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qtpsv) (char *, char *, char *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctpsv) (char *, char *, char *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(ztpsv) (char *, char *, char *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xtpsv) (char *, char *, char *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(stpmv) (char *, char *, char *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dtpmv) (char *, char *, char *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qtpmv) (char *, char *, char *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctpmv) (char *, char *, char *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(ztpmv) (char *, char *, char *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xtpmv) (char *, char *, char *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(stbmv) (char *, char *, char *, blasint *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dtbmv) (char *, char *, char *, blasint *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qtbmv) (char *, char *, char *, blasint *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctbmv) (char *, char *, char *, blasint *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(ztbmv) (char *, char *, char *, blasint *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xtbmv) (char *, char *, char *, blasint *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(stbsv) (char *, char *, char *, blasint *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dtbsv) (char *, char *, char *, blasint *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qtbsv) (char *, char *, char *, blasint *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctbsv) (char *, char *, char *, blasint *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(ztbsv) (char *, char *, char *, blasint *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xtbsv) (char *, char *, char *, blasint *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssymv) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dsymv) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qsymv) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csymv) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsymv) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsymv) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sspmv) (char *, blasint *, float *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dspmv) (char *, blasint *, double *, double *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qspmv) (char *, blasint *, xdouble *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cspmv) (char *, blasint *, float *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zspmv) (char *, blasint *, double *, double *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xspmv) (char *, blasint *, xdouble *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssyr) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(dsyr) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(qsyr) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csyr) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(zsyr) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(xsyr) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssyr2) (char *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dsyr2) (char *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qsyr2) (char *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csyr2) (char *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsyr2) (char *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsyr2) (char *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sspr) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *);
|
||||||
|
void BLASFUNC(dspr) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *);
|
||||||
|
void BLASFUNC(qspr) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *);
|
||||||
|
void BLASFUNC(cspr) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *);
|
||||||
|
void BLASFUNC(zspr) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *);
|
||||||
|
void BLASFUNC(xspr) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *);
|
||||||
|
|
||||||
|
void BLASFUNC(sspr2) (char *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *);
|
||||||
|
void BLASFUNC(dspr2) (char *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *);
|
||||||
|
void BLASFUNC(qspr2) (char *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *);
|
||||||
|
void BLASFUNC(cspr2) (char *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *);
|
||||||
|
void BLASFUNC(zspr2) (char *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *);
|
||||||
|
void BLASFUNC(xspr2) (char *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *);
|
||||||
|
|
||||||
|
void BLASFUNC(cher) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
void BLASFUNC(zher) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
void BLASFUNC(xher) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(chpr) (char *, blasint *, float *, float *, blasint *, float *);
|
||||||
|
void BLASFUNC(zhpr) (char *, blasint *, double *, double *, blasint *, double *);
|
||||||
|
void BLASFUNC(xhpr) (char *, blasint *, xdouble *, xdouble *, blasint *, xdouble *);
|
||||||
|
|
||||||
|
void BLASFUNC(cher2) (char *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zher2) (char *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xher2) (char *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(chpr2) (char *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *);
|
||||||
|
void BLASFUNC(zhpr2) (char *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *);
|
||||||
|
void BLASFUNC(xhpr2) (char *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *);
|
||||||
|
|
||||||
|
void BLASFUNC(chemv) (char *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zhemv) (char *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xhemv) (char *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(chpmv) (char *, blasint *, float *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zhpmv) (char *, blasint *, double *, double *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xhpmv) (char *, blasint *, xdouble *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(snorm)(char *, blasint *, blasint *, float *, blasint *);
|
||||||
|
int BLASFUNC(dnorm)(char *, blasint *, blasint *, double *, blasint *);
|
||||||
|
int BLASFUNC(cnorm)(char *, blasint *, blasint *, float *, blasint *);
|
||||||
|
int BLASFUNC(znorm)(char *, blasint *, blasint *, double *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sgbmv)(char *, blasint *, blasint *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dgbmv)(char *, blasint *, blasint *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qgbmv)(char *, blasint *, blasint *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cgbmv)(char *, blasint *, blasint *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zgbmv)(char *, blasint *, blasint *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xgbmv)(char *, blasint *, blasint *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssbmv)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dsbmv)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qsbmv)(char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csbmv)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsbmv)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsbmv)(char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(chbmv)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zhbmv)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xhbmv)(char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
/* Level 3 routines */
|
||||||
|
|
||||||
|
void BLASFUNC(sgemm)(char *, char *, blasint *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dgemm)(char *, char *, blasint *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qgemm)(char *, char *, blasint *, blasint *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(cgemm)(char *, char *, blasint *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zgemm)(char *, char *, blasint *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xgemm)(char *, char *, blasint *, blasint *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(cgemm3m)(char *, char *, blasint *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zgemm3m)(char *, char *, blasint *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xgemm3m)(char *, char *, blasint *, blasint *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sge2mm)(char *, char *, char *, blasint *, blasint *,
|
||||||
|
float *, float *, blasint *, float *, blasint *,
|
||||||
|
float *, float *, blasint *);
|
||||||
|
int BLASFUNC(dge2mm)(char *, char *, char *, blasint *, blasint *,
|
||||||
|
double *, double *, blasint *, double *, blasint *,
|
||||||
|
double *, double *, blasint *);
|
||||||
|
int BLASFUNC(cge2mm)(char *, char *, char *, blasint *, blasint *,
|
||||||
|
float *, float *, blasint *, float *, blasint *,
|
||||||
|
float *, float *, blasint *);
|
||||||
|
int BLASFUNC(zge2mm)(char *, char *, char *, blasint *, blasint *,
|
||||||
|
double *, double *, blasint *, double *, blasint *,
|
||||||
|
double *, double *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(strsm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dtrsm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qtrsm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctrsm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(ztrsm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xtrsm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(strmm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(dtrmm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(qtrmm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(ctrmm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(ztrmm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(xtrmm)(char *, char *, char *, char *, blasint *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssymm)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dsymm)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qsymm)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csymm)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsymm)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsymm)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(csymm3m)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsymm3m)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsymm3m)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssyrk)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dsyrk)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qsyrk)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csyrk)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsyrk)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsyrk)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(ssyr2k)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(dsyr2k)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double*, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(qsyr2k)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble*, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
void BLASFUNC(csyr2k)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zsyr2k)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double*, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xsyr2k)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble*, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(chemm)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zhemm)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xhemm)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(chemm3m)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zhemm3m)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xhemm3m)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(cherk)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zherk)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xherk)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(cher2k)(char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zher2k)(char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double*, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(xher2k)(char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble*, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(cher2m)(char *, char *, char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *, float *, float *, blasint *);
|
||||||
|
int BLASFUNC(zher2m)(char *, char *, char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double*, blasint *, double *, double *, blasint *);
|
||||||
|
int BLASFUNC(xher2m)(char *, char *, char *, blasint *, blasint *, xdouble *, xdouble *, blasint *,
|
||||||
|
xdouble*, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgemt)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
int BLASFUNC(dgemt)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
int BLASFUNC(cgemt)(char *, blasint *, blasint *, float *, float *, blasint *,
|
||||||
|
float *, blasint *);
|
||||||
|
int BLASFUNC(zgemt)(char *, blasint *, blasint *, double *, double *, blasint *,
|
||||||
|
double *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgema)(char *, char *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
int BLASFUNC(dgema)(char *, char *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double*, double *, blasint *, double*, blasint *);
|
||||||
|
int BLASFUNC(cgema)(char *, char *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
int BLASFUNC(zgema)(char *, char *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double*, double *, blasint *, double*, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgems)(char *, char *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
int BLASFUNC(dgems)(char *, char *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double*, double *, blasint *, double*, blasint *);
|
||||||
|
int BLASFUNC(cgems)(char *, char *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
int BLASFUNC(zgems)(char *, char *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double*, double *, blasint *, double*, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgemc)(char *, char *, blasint *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
int BLASFUNC(dgemc)(char *, char *, blasint *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
int BLASFUNC(qgemc)(char *, char *, blasint *, blasint *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
int BLASFUNC(cgemc)(char *, char *, blasint *, blasint *, blasint *, float *,
|
||||||
|
float *, blasint *, float *, blasint *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
int BLASFUNC(zgemc)(char *, char *, blasint *, blasint *, blasint *, double *,
|
||||||
|
double *, blasint *, double *, blasint *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
int BLASFUNC(xgemc)(char *, char *, blasint *, blasint *, blasint *, xdouble *,
|
||||||
|
xdouble *, blasint *, xdouble *, blasint *, xdouble *, blasint *, xdouble *, xdouble *, blasint *);
|
||||||
|
|
||||||
|
/* Lapack routines */
|
||||||
|
|
||||||
|
int BLASFUNC(sgetf2)(blasint *, blasint *, float *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dgetf2)(blasint *, blasint *, double *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qgetf2)(blasint *, blasint *, xdouble *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cgetf2)(blasint *, blasint *, float *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zgetf2)(blasint *, blasint *, double *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xgetf2)(blasint *, blasint *, xdouble *, blasint *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgetrf)(blasint *, blasint *, float *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dgetrf)(blasint *, blasint *, double *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qgetrf)(blasint *, blasint *, xdouble *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cgetrf)(blasint *, blasint *, float *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zgetrf)(blasint *, blasint *, double *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xgetrf)(blasint *, blasint *, xdouble *, blasint *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(slaswp)(blasint *, float *, blasint *, blasint *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dlaswp)(blasint *, double *, blasint *, blasint *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qlaswp)(blasint *, xdouble *, blasint *, blasint *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(claswp)(blasint *, float *, blasint *, blasint *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zlaswp)(blasint *, double *, blasint *, blasint *, blasint *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xlaswp)(blasint *, xdouble *, blasint *, blasint *, blasint *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgetrs)(char *, blasint *, blasint *, float *, blasint *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dgetrs)(char *, blasint *, blasint *, double *, blasint *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qgetrs)(char *, blasint *, blasint *, xdouble *, blasint *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cgetrs)(char *, blasint *, blasint *, float *, blasint *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zgetrs)(char *, blasint *, blasint *, double *, blasint *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xgetrs)(char *, blasint *, blasint *, xdouble *, blasint *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(sgesv)(blasint *, blasint *, float *, blasint *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dgesv)(blasint *, blasint *, double *, blasint *, blasint *, double*, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qgesv)(blasint *, blasint *, xdouble *, blasint *, blasint *, xdouble*, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cgesv)(blasint *, blasint *, float *, blasint *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zgesv)(blasint *, blasint *, double *, blasint *, blasint *, double*, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xgesv)(blasint *, blasint *, xdouble *, blasint *, blasint *, xdouble*, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(spotf2)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dpotf2)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qpotf2)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cpotf2)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zpotf2)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xpotf2)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(spotrf)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dpotrf)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qpotrf)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cpotrf)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zpotrf)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xpotrf)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(spotrs)(char *, blasint *, blasint *, float *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dpotrs)(char *, blasint *, blasint *, double *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qpotrs)(char *, blasint *, blasint *, xdouble *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(cpotrs)(char *, blasint *, blasint *, float *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zpotrs)(char *, blasint *, blasint *, double *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xpotrs)(char *, blasint *, blasint *, xdouble *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(slauu2)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dlauu2)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qlauu2)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(clauu2)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zlauu2)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xlauu2)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(slauum)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dlauum)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qlauum)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(clauum)(char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(zlauum)(char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xlauum)(char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(strti2)(char *, char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dtrti2)(char *, char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qtrti2)(char *, char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(ctrti2)(char *, char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(ztrti2)(char *, char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xtrti2)(char *, char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
int BLASFUNC(strtri)(char *, char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(dtrtri)(char *, char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(qtrtri)(char *, char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(ctrtri)(char *, char *, blasint *, float *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(ztrtri)(char *, char *, blasint *, double *, blasint *, blasint *);
|
||||||
|
int BLASFUNC(xtrtri)(char *, char *, blasint *, xdouble *, blasint *, blasint *);
|
||||||
|
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(slamch)(char *);
|
||||||
|
double BLASFUNC(dlamch)(char *);
|
||||||
|
xdouble BLASFUNC(qlamch)(char *);
|
||||||
|
|
||||||
|
FLOATRET BLASFUNC(slamc3)(float *, float *);
|
||||||
|
double BLASFUNC(dlamc3)(double *, double *);
|
||||||
|
xdouble BLASFUNC(qlamc3)(xdouble *, xdouble *);
|
||||||
|
|
||||||
|
/* BLAS extensions */
|
||||||
|
|
||||||
|
void BLASFUNC(saxpby) (blasint *, float *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(daxpby) (blasint *, double *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
void BLASFUNC(caxpby) (blasint *, float *, float *, blasint *, float *, float *, blasint *);
|
||||||
|
void BLASFUNC(zaxpby) (blasint *, double *, double *, blasint *, double *, double *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(somatcopy) (char *, char *, blasint *, blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(domatcopy) (char *, char *, blasint *, blasint *, double *, double *, blasint *, double *, blasint *);
|
||||||
|
void BLASFUNC(comatcopy) (char *, char *, blasint *, blasint *, float *, float *, blasint *, float *, blasint *);
|
||||||
|
void BLASFUNC(zomatcopy) (char *, char *, blasint *, blasint *, double *, double *, blasint *, double *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(simatcopy) (char *, char *, blasint *, blasint *, float *, float *, blasint *, blasint *);
|
||||||
|
void BLASFUNC(dimatcopy) (char *, char *, blasint *, blasint *, double *, double *, blasint *, blasint *);
|
||||||
|
void BLASFUNC(cimatcopy) (char *, char *, blasint *, blasint *, float *, float *, blasint *, blasint *);
|
||||||
|
void BLASFUNC(zimatcopy) (char *, char *, blasint *, blasint *, double *, double *, blasint *, blasint *);
|
||||||
|
|
||||||
|
void BLASFUNC(sgeadd) (blasint *, blasint *, float *, float *, blasint *, float *, float *, blasint*);
|
||||||
|
void BLASFUNC(dgeadd) (blasint *, blasint *, double *, double *, blasint *, double *, double *, blasint*);
|
||||||
|
void BLASFUNC(cgeadd) (blasint *, blasint *, float *, float *, blasint *, float *, float *, blasint*);
|
||||||
|
void BLASFUNC(zgeadd) (blasint *, blasint *, double *, double *, blasint *, double *, double *, blasint*);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#endif
|
17553
lib/3rdParty/OpenBLAS/include/lapacke.h
vendored
Normal file
17553
lib/3rdParty/OpenBLAS/include/lapacke.h
vendored
Normal file
File diff suppressed because it is too large
Load diff
126
lib/3rdParty/OpenBLAS/include/lapacke_config.h
vendored
Normal file
126
lib/3rdParty/OpenBLAS/include/lapacke_config.h
vendored
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
/*****************************************************************************
|
||||||
|
Copyright (c) 2010, Intel Corp.
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
* Neither the name of Intel Corporation nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software
|
||||||
|
without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
|
THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
******************************************************************************
|
||||||
|
* Contents: Native C interface to LAPACK
|
||||||
|
* Author: Intel Corporation
|
||||||
|
* Generated May, 2011
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
#ifndef _LAPACKE_CONFIG_H_
|
||||||
|
#define _LAPACKE_CONFIG_H_
|
||||||
|
|
||||||
|
// For Android prior to API 21 (no <complex> include)
|
||||||
|
#if defined(__ANDROID__)
|
||||||
|
#if __ANDROID_API__ < 21
|
||||||
|
#define LAPACK_COMPLEX_STRUCTURE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if defined(LAPACK_COMPLEX_CPP)
|
||||||
|
#include <complex>
|
||||||
|
#endif
|
||||||
|
extern "C" {
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
#ifndef lapack_int
|
||||||
|
#if defined(LAPACK_ILP64)
|
||||||
|
#define lapack_int long
|
||||||
|
#else
|
||||||
|
#define lapack_int int
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef lapack_logical
|
||||||
|
#define lapack_logical lapack_int
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LAPACK_COMPLEX_CUSTOM
|
||||||
|
|
||||||
|
#if defined(LAPACK_COMPLEX_STRUCTURE)
|
||||||
|
|
||||||
|
typedef struct { float real, imag; } _lapack_complex_float;
|
||||||
|
typedef struct { double real, imag; } _lapack_complex_double;
|
||||||
|
#define lapack_complex_float _lapack_complex_float
|
||||||
|
#define lapack_complex_double _lapack_complex_double
|
||||||
|
#define lapack_complex_float_real(z) ((z).real)
|
||||||
|
#define lapack_complex_float_imag(z) ((z).imag)
|
||||||
|
#define lapack_complex_double_real(z) ((z).real)
|
||||||
|
#define lapack_complex_double_imag(z) ((z).imag)
|
||||||
|
|
||||||
|
#elif defined(LAPACK_COMPLEX_C99)
|
||||||
|
|
||||||
|
#include <complex.h>
|
||||||
|
#define lapack_complex_float float _Complex
|
||||||
|
#define lapack_complex_double double _Complex
|
||||||
|
#define lapack_complex_float_real(z) (creal(z))
|
||||||
|
#define lapack_complex_float_imag(z) (cimag(z))
|
||||||
|
#define lapack_complex_double_real(z) (creal(z))
|
||||||
|
#define lapack_complex_double_imag(z) (cimag(z))
|
||||||
|
|
||||||
|
#elif defined(LAPACK_COMPLEX_CPP)
|
||||||
|
|
||||||
|
#define lapack_complex_float std::complex<float>
|
||||||
|
#define lapack_complex_double std::complex<double>
|
||||||
|
#define lapack_complex_float_real(z) ((z).real())
|
||||||
|
#define lapack_complex_float_imag(z) ((z).imag())
|
||||||
|
#define lapack_complex_double_real(z) ((z).real())
|
||||||
|
#define lapack_complex_double_imag(z) ((z).imag())
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#include <complex.h>
|
||||||
|
#define lapack_complex_float float _Complex
|
||||||
|
#define lapack_complex_double double _Complex
|
||||||
|
#define lapack_complex_float_real(z) (creal(z))
|
||||||
|
#define lapack_complex_float_imag(z) (cimag(z))
|
||||||
|
#define lapack_complex_double_real(z) (creal(z))
|
||||||
|
#define lapack_complex_double_imag(z) (cimag(z))
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
lapack_complex_float lapack_make_complex_float( float re, float im );
|
||||||
|
lapack_complex_double lapack_make_complex_double( double re, double im );
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LAPACK_malloc
|
||||||
|
#define LAPACK_malloc( size ) malloc( size )
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LAPACK_free
|
||||||
|
#define LAPACK_free( p ) free( p )
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif /* _LAPACKE_CONFIG_H_ */
|
17
lib/3rdParty/OpenBLAS/include/lapacke_mangling.h
vendored
Normal file
17
lib/3rdParty/OpenBLAS/include/lapacke_mangling.h
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
#ifndef LAPACK_HEADER_INCLUDED
|
||||||
|
#define LAPACK_HEADER_INCLUDED
|
||||||
|
|
||||||
|
#ifndef LAPACK_GLOBAL
|
||||||
|
#if defined(LAPACK_GLOBAL_PATTERN_LC) || defined(ADD_)
|
||||||
|
#define LAPACK_GLOBAL(lcname,UCNAME) lcname##_
|
||||||
|
#elif defined(LAPACK_GLOBAL_PATTERN_UC) || defined(UPPER)
|
||||||
|
#define LAPACK_GLOBAL(lcname,UCNAME) UCNAME
|
||||||
|
#elif defined(LAPACK_GLOBAL_PATTERN_MC) || defined(NOCHANGE)
|
||||||
|
#define LAPACK_GLOBAL(lcname,UCNAME) lcname
|
||||||
|
#else
|
||||||
|
#define LAPACK_GLOBAL(lcname,UCNAME) lcname##_
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
579
lib/3rdParty/OpenBLAS/include/lapacke_utils.h
vendored
Normal file
579
lib/3rdParty/OpenBLAS/include/lapacke_utils.h
vendored
Normal file
|
@ -0,0 +1,579 @@
|
||||||
|
/*****************************************************************************
|
||||||
|
Copyright (c) 2014, Intel Corp.
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
* Neither the name of Intel Corporation nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software
|
||||||
|
without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
|
THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
******************************************************************************
|
||||||
|
* Contents: Native C interface to LAPACK utility functions
|
||||||
|
* Author: Intel Corporation
|
||||||
|
* Created in January, 2010
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
#ifndef _LAPACKE_UTILS_H_
|
||||||
|
#define _LAPACKE_UTILS_H_
|
||||||
|
|
||||||
|
#include "lapacke.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#ifndef ABS
|
||||||
|
#define ABS(x) (((x) < 0) ? -(x) : (x))
|
||||||
|
#endif
|
||||||
|
#ifndef MAX
|
||||||
|
#define MAX(x,y) (((x) > (y)) ? (x) : (y))
|
||||||
|
#endif
|
||||||
|
#ifndef MIN
|
||||||
|
#define MIN(x,y) (((x) < (y)) ? (x) : (y))
|
||||||
|
#endif
|
||||||
|
#ifndef MAX3
|
||||||
|
#define MAX3(x,y,z) (((x) > MAX(y,z)) ? (x) : MAX(y,z))
|
||||||
|
#endif
|
||||||
|
#ifndef MIN3
|
||||||
|
#define MIN3(x,y,z) (((x) < MIN(y,z)) ? (x) : MIN(y,z))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define IS_S_NONZERO(x) ( (x) < 0 || (x) > 0 )
|
||||||
|
#define IS_D_NONZERO(x) ( (x) < 0 || (x) > 0 )
|
||||||
|
#define IS_C_NONZERO(x) ( IS_S_NONZERO(*((float*)&x)) || \
|
||||||
|
IS_S_NONZERO(*(((float*)&x)+1)) )
|
||||||
|
#define IS_Z_NONZERO(x) ( IS_D_NONZERO(*((double*)&x)) || \
|
||||||
|
IS_D_NONZERO(*(((double*)&x)+1)) )
|
||||||
|
|
||||||
|
/* Error handler */
|
||||||
|
void LAPACKE_xerbla( const char *name, lapack_int info );
|
||||||
|
|
||||||
|
/* Compare two chars (case-insensitive) */
|
||||||
|
lapack_logical LAPACKE_lsame( char ca, char cb );
|
||||||
|
|
||||||
|
/* Functions to convert column-major to row-major 2d arrays and vice versa. */
|
||||||
|
void LAPACKE_cgb_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
lapack_int kl, lapack_int ku,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_cge_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const lapack_complex_float* in, lapack_int ldin,
|
||||||
|
lapack_complex_float* out, lapack_int ldout );
|
||||||
|
void LAPACKE_cgg_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const lapack_complex_float* in, lapack_int ldin,
|
||||||
|
lapack_complex_float* out, lapack_int ldout );
|
||||||
|
void LAPACKE_chb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_che_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_chp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_float *in,
|
||||||
|
lapack_complex_float *out );
|
||||||
|
void LAPACKE_chs_trans( int matrix_layout, lapack_int n,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_cpb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_cpf_trans( int matrix_layout, char transr, char uplo,
|
||||||
|
lapack_int n, const lapack_complex_float *in,
|
||||||
|
lapack_complex_float *out );
|
||||||
|
void LAPACKE_cpo_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_cpp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_float *in,
|
||||||
|
lapack_complex_float *out );
|
||||||
|
void LAPACKE_csp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_float *in,
|
||||||
|
lapack_complex_float *out );
|
||||||
|
void LAPACKE_csy_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_ctb_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_ctf_trans( int matrix_layout, char transr, char uplo, char diag,
|
||||||
|
lapack_int n, const lapack_complex_float *in,
|
||||||
|
lapack_complex_float *out );
|
||||||
|
void LAPACKE_ctp_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, const lapack_complex_float *in,
|
||||||
|
lapack_complex_float *out );
|
||||||
|
void LAPACKE_ctr_trans( int matrix_layout, char uplo, char diag, lapack_int n,
|
||||||
|
const lapack_complex_float *in, lapack_int ldin,
|
||||||
|
lapack_complex_float *out, lapack_int ldout );
|
||||||
|
|
||||||
|
void LAPACKE_dgb_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
lapack_int kl, lapack_int ku,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dge_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const double* in, lapack_int ldin,
|
||||||
|
double* out, lapack_int ldout );
|
||||||
|
void LAPACKE_dgg_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const double* in, lapack_int ldin,
|
||||||
|
double* out, lapack_int ldout );
|
||||||
|
void LAPACKE_dhs_trans( int matrix_layout, lapack_int n,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dpb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dpf_trans( int matrix_layout, char transr, char uplo,
|
||||||
|
lapack_int n, const double *in,
|
||||||
|
double *out );
|
||||||
|
void LAPACKE_dpo_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dpp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const double *in,
|
||||||
|
double *out );
|
||||||
|
void LAPACKE_dsb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dsp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const double *in,
|
||||||
|
double *out );
|
||||||
|
void LAPACKE_dsy_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dtb_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_dtf_trans( int matrix_layout, char transr, char uplo, char diag,
|
||||||
|
lapack_int n, const double *in,
|
||||||
|
double *out );
|
||||||
|
void LAPACKE_dtp_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, const double *in,
|
||||||
|
double *out );
|
||||||
|
void LAPACKE_dtr_trans( int matrix_layout, char uplo, char diag, lapack_int n,
|
||||||
|
const double *in, lapack_int ldin,
|
||||||
|
double *out, lapack_int ldout );
|
||||||
|
|
||||||
|
void LAPACKE_sgb_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
lapack_int kl, lapack_int ku,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_sge_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const float* in, lapack_int ldin,
|
||||||
|
float* out, lapack_int ldout );
|
||||||
|
void LAPACKE_sgg_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const float* in, lapack_int ldin,
|
||||||
|
float* out, lapack_int ldout );
|
||||||
|
void LAPACKE_shs_trans( int matrix_layout, lapack_int n,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_spb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_spf_trans( int matrix_layout, char transr, char uplo,
|
||||||
|
lapack_int n, const float *in,
|
||||||
|
float *out );
|
||||||
|
void LAPACKE_spo_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_spp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const float *in,
|
||||||
|
float *out );
|
||||||
|
void LAPACKE_ssb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_ssp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const float *in,
|
||||||
|
float *out );
|
||||||
|
void LAPACKE_ssy_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_stb_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
void LAPACKE_stf_trans( int matrix_layout, char transr, char uplo, char diag,
|
||||||
|
lapack_int n, const float *in,
|
||||||
|
float *out );
|
||||||
|
void LAPACKE_stp_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, const float *in,
|
||||||
|
float *out );
|
||||||
|
void LAPACKE_str_trans( int matrix_layout, char uplo, char diag, lapack_int n,
|
||||||
|
const float *in, lapack_int ldin,
|
||||||
|
float *out, lapack_int ldout );
|
||||||
|
|
||||||
|
void LAPACKE_zgb_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
lapack_int kl, lapack_int ku,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_zge_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const lapack_complex_double* in, lapack_int ldin,
|
||||||
|
lapack_complex_double* out, lapack_int ldout );
|
||||||
|
void LAPACKE_zgg_trans( int matrix_layout, lapack_int m, lapack_int n,
|
||||||
|
const lapack_complex_double* in, lapack_int ldin,
|
||||||
|
lapack_complex_double* out, lapack_int ldout );
|
||||||
|
void LAPACKE_zhb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_zhe_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_zhp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_double *in,
|
||||||
|
lapack_complex_double *out );
|
||||||
|
void LAPACKE_zhs_trans( int matrix_layout, lapack_int n,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_zpb_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
lapack_int kd,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_zpf_trans( int matrix_layout, char transr, char uplo,
|
||||||
|
lapack_int n, const lapack_complex_double *in,
|
||||||
|
lapack_complex_double *out );
|
||||||
|
void LAPACKE_zpo_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_zpp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_double *in,
|
||||||
|
lapack_complex_double *out );
|
||||||
|
void LAPACKE_zsp_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_double *in,
|
||||||
|
lapack_complex_double *out );
|
||||||
|
void LAPACKE_zsy_trans( int matrix_layout, char uplo, lapack_int n,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_ztb_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
void LAPACKE_ztf_trans( int matrix_layout, char transr, char uplo, char diag,
|
||||||
|
lapack_int n, const lapack_complex_double *in,
|
||||||
|
lapack_complex_double *out );
|
||||||
|
void LAPACKE_ztp_trans( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, const lapack_complex_double *in,
|
||||||
|
lapack_complex_double *out );
|
||||||
|
void LAPACKE_ztr_trans( int matrix_layout, char uplo, char diag, lapack_int n,
|
||||||
|
const lapack_complex_double *in, lapack_int ldin,
|
||||||
|
lapack_complex_double *out, lapack_int ldout );
|
||||||
|
|
||||||
|
/* NaN checkers */
|
||||||
|
#define LAPACK_SISNAN( x ) ( x != x )
|
||||||
|
#define LAPACK_DISNAN( x ) ( x != x )
|
||||||
|
#define LAPACK_CISNAN( x ) ( LAPACK_SISNAN(*((float*) &x)) || \
|
||||||
|
LAPACK_SISNAN(*(((float*) &x)+1)) )
|
||||||
|
#define LAPACK_ZISNAN( x ) ( LAPACK_DISNAN(*((double*)&x)) || \
|
||||||
|
LAPACK_DISNAN(*(((double*)&x)+1)) )
|
||||||
|
|
||||||
|
/* NaN checkers for vectors */
|
||||||
|
lapack_logical LAPACKE_c_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *x,
|
||||||
|
lapack_int incx );
|
||||||
|
lapack_logical LAPACKE_d_nancheck( lapack_int n,
|
||||||
|
const double *x,
|
||||||
|
lapack_int incx );
|
||||||
|
lapack_logical LAPACKE_s_nancheck( lapack_int n,
|
||||||
|
const float *x,
|
||||||
|
lapack_int incx );
|
||||||
|
lapack_logical LAPACKE_z_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *x,
|
||||||
|
lapack_int incx );
|
||||||
|
/* NaN checkers for matrices */
|
||||||
|
lapack_logical LAPACKE_cgb_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n, lapack_int kl,
|
||||||
|
lapack_int ku,
|
||||||
|
const lapack_complex_float *ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_cge_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_cgg_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_cgt_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *dl,
|
||||||
|
const lapack_complex_float *d,
|
||||||
|
const lapack_complex_float *du );
|
||||||
|
lapack_logical LAPACKE_chb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_float* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_che_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_chp_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *ap );
|
||||||
|
lapack_logical LAPACKE_chs_nancheck( int matrix_layout, lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_cpb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_float* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_cpf_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *a );
|
||||||
|
lapack_logical LAPACKE_cpo_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_cpp_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *ap );
|
||||||
|
lapack_logical LAPACKE_cpt_nancheck( lapack_int n,
|
||||||
|
const float *d,
|
||||||
|
const lapack_complex_float *e );
|
||||||
|
lapack_logical LAPACKE_csp_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *ap );
|
||||||
|
lapack_logical LAPACKE_cst_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_float *d,
|
||||||
|
const lapack_complex_float *e );
|
||||||
|
lapack_logical LAPACKE_csy_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_ctb_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_float* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_ctf_nancheck( int matrix_layout, char transr,
|
||||||
|
char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a );
|
||||||
|
lapack_logical LAPACKE_ctp_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *ap );
|
||||||
|
lapack_logical LAPACKE_ctr_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
|
||||||
|
lapack_logical LAPACKE_dgb_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n, lapack_int kl,
|
||||||
|
lapack_int ku,
|
||||||
|
const double *ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_dge_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_dgg_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_dgt_nancheck( lapack_int n,
|
||||||
|
const double *dl,
|
||||||
|
const double *d,
|
||||||
|
const double *du );
|
||||||
|
lapack_logical LAPACKE_dhs_nancheck( int matrix_layout, lapack_int n,
|
||||||
|
const double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_dpb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const double* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_dpf_nancheck( lapack_int n,
|
||||||
|
const double *a );
|
||||||
|
lapack_logical LAPACKE_dpo_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_dpp_nancheck( lapack_int n,
|
||||||
|
const double *ap );
|
||||||
|
lapack_logical LAPACKE_dpt_nancheck( lapack_int n,
|
||||||
|
const double *d,
|
||||||
|
const double *e );
|
||||||
|
lapack_logical LAPACKE_dsb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const double* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_dsp_nancheck( lapack_int n,
|
||||||
|
const double *ap );
|
||||||
|
lapack_logical LAPACKE_dst_nancheck( lapack_int n,
|
||||||
|
const double *d,
|
||||||
|
const double *e );
|
||||||
|
lapack_logical LAPACKE_dsy_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_dtb_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const double* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_dtf_nancheck( int matrix_layout, char transr,
|
||||||
|
char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const double *a );
|
||||||
|
lapack_logical LAPACKE_dtp_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const double *ap );
|
||||||
|
lapack_logical LAPACKE_dtr_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
|
||||||
|
lapack_logical LAPACKE_sgb_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n, lapack_int kl,
|
||||||
|
lapack_int ku,
|
||||||
|
const float *ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_sge_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_sgg_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_sgt_nancheck( lapack_int n,
|
||||||
|
const float *dl,
|
||||||
|
const float *d,
|
||||||
|
const float *du );
|
||||||
|
lapack_logical LAPACKE_shs_nancheck( int matrix_layout, lapack_int n,
|
||||||
|
const float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_spb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const float* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_spf_nancheck( lapack_int n,
|
||||||
|
const float *a );
|
||||||
|
lapack_logical LAPACKE_spo_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_spp_nancheck( lapack_int n,
|
||||||
|
const float *ap );
|
||||||
|
lapack_logical LAPACKE_spt_nancheck( lapack_int n,
|
||||||
|
const float *d,
|
||||||
|
const float *e );
|
||||||
|
lapack_logical LAPACKE_ssb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const float* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_ssp_nancheck( lapack_int n,
|
||||||
|
const float *ap );
|
||||||
|
lapack_logical LAPACKE_sst_nancheck( lapack_int n,
|
||||||
|
const float *d,
|
||||||
|
const float *e );
|
||||||
|
lapack_logical LAPACKE_ssy_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_stb_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const float* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_stf_nancheck( int matrix_layout, char transr,
|
||||||
|
char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const float *a );
|
||||||
|
lapack_logical LAPACKE_stp_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const float *ap );
|
||||||
|
lapack_logical LAPACKE_str_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const float *a,
|
||||||
|
lapack_int lda );
|
||||||
|
|
||||||
|
lapack_logical LAPACKE_zgb_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n, lapack_int kl,
|
||||||
|
lapack_int ku,
|
||||||
|
const lapack_complex_double *ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_zge_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_zgg_nancheck( int matrix_layout, lapack_int m,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_zgt_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *dl,
|
||||||
|
const lapack_complex_double *d,
|
||||||
|
const lapack_complex_double *du );
|
||||||
|
lapack_logical LAPACKE_zhb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_double* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_zhe_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_zhp_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *ap );
|
||||||
|
lapack_logical LAPACKE_zhs_nancheck( int matrix_layout, lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_zpb_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_double* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_zpf_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *a );
|
||||||
|
lapack_logical LAPACKE_zpo_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_zpp_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *ap );
|
||||||
|
lapack_logical LAPACKE_zpt_nancheck( lapack_int n,
|
||||||
|
const double *d,
|
||||||
|
const lapack_complex_double *e );
|
||||||
|
lapack_logical LAPACKE_zsp_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *ap );
|
||||||
|
lapack_logical LAPACKE_zst_nancheck( lapack_int n,
|
||||||
|
const lapack_complex_double *d,
|
||||||
|
const lapack_complex_double *e );
|
||||||
|
lapack_logical LAPACKE_zsy_nancheck( int matrix_layout, char uplo,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
lapack_logical LAPACKE_ztb_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n, lapack_int kd,
|
||||||
|
const lapack_complex_double* ab,
|
||||||
|
lapack_int ldab );
|
||||||
|
lapack_logical LAPACKE_ztf_nancheck( int matrix_layout, char transr,
|
||||||
|
char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a );
|
||||||
|
lapack_logical LAPACKE_ztp_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *ap );
|
||||||
|
lapack_logical LAPACKE_ztr_nancheck( int matrix_layout, char uplo, char diag,
|
||||||
|
lapack_int n,
|
||||||
|
const lapack_complex_double *a,
|
||||||
|
lapack_int lda );
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif /* _LAPACKE_UTILS_H_ */
|
126
lib/3rdParty/OpenBLAS/include/openblas_config.h
vendored
Normal file
126
lib/3rdParty/OpenBLAS/include/openblas_config.h
vendored
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
#ifndef OPENBLAS_CONFIG_H
|
||||||
|
#define OPENBLAS_CONFIG_H
|
||||||
|
#define OPENBLAS_OS_WINNT 1
|
||||||
|
#define OPENBLAS_ARCH_X86_64 1
|
||||||
|
#define OPENBLAS_C_GCC 1
|
||||||
|
#define OPENBLAS___64BIT__ 1
|
||||||
|
#define OPENBLAS_PTHREAD_CREATE_FUNC pthread_create
|
||||||
|
#define OPENBLAS_BUNDERSCORE _
|
||||||
|
#define OPENBLAS_NEEDBUNDERSCORE 1
|
||||||
|
#define OPENBLAS_NEHALEM
|
||||||
|
#define OPENBLAS_L1_DATA_SIZE 32768
|
||||||
|
#define OPENBLAS_L1_DATA_LINESIZE 64
|
||||||
|
#define OPENBLAS_L2_SIZE 262144
|
||||||
|
#define OPENBLAS_L2_LINESIZE 64
|
||||||
|
#define OPENBLAS_DTB_DEFAULT_ENTRIES 64
|
||||||
|
#define OPENBLAS_DTB_SIZE 4096
|
||||||
|
#define OPENBLAS_HAVE_CMOV
|
||||||
|
#define OPENBLAS_HAVE_MMX
|
||||||
|
#define OPENBLAS_HAVE_SSE
|
||||||
|
#define OPENBLAS_HAVE_SSE2
|
||||||
|
#define OPENBLAS_HAVE_SSE3
|
||||||
|
#define OPENBLAS_HAVE_SSSE3
|
||||||
|
#define OPENBLAS_HAVE_SSE4_1
|
||||||
|
#define OPENBLAS_HAVE_SSE4_2
|
||||||
|
#define OPENBLAS_CORE_NEHALEM
|
||||||
|
#define OPENBLAS_CHAR_CORENAME "NEHALEM"
|
||||||
|
#define OPENBLAS_SLOCAL_BUFFER_SIZE 65536
|
||||||
|
#define OPENBLAS_DLOCAL_BUFFER_SIZE 32768
|
||||||
|
#define OPENBLAS_CLOCAL_BUFFER_SIZE 65536
|
||||||
|
#define OPENBLAS_ZLOCAL_BUFFER_SIZE 32768
|
||||||
|
#define OPENBLAS_GEMM_MULTITHREAD_THRESHOLD 4
|
||||||
|
#define OPENBLAS_VERSION " OpenBLAS 0.2.19 "
|
||||||
|
/*This is only for "make install" target.*/
|
||||||
|
|
||||||
|
#if defined(OPENBLAS_OS_WINNT) || defined(OPENBLAS_OS_CYGWIN_NT) || defined(OPENBLAS_OS_INTERIX)
|
||||||
|
#define OPENBLAS_WINDOWS_ABI
|
||||||
|
#define OPENBLAS_OS_WINDOWS
|
||||||
|
|
||||||
|
#ifdef DOUBLE
|
||||||
|
#define DOUBLE_DEFINED DOUBLE
|
||||||
|
#undef DOUBLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENBLAS_NEEDBUNDERSCORE
|
||||||
|
#define BLASFUNC(FUNC) FUNC##_
|
||||||
|
#else
|
||||||
|
#define BLASFUNC(FUNC) FUNC
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENBLAS_QUAD_PRECISION
|
||||||
|
typedef struct {
|
||||||
|
unsigned long x[2];
|
||||||
|
} xdouble;
|
||||||
|
#elif defined OPENBLAS_EXPRECISION
|
||||||
|
#define xdouble long double
|
||||||
|
#else
|
||||||
|
#define xdouble double
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(OPENBLAS_OS_WINDOWS) && defined(OPENBLAS___64BIT__)
|
||||||
|
typedef long long BLASLONG;
|
||||||
|
typedef unsigned long long BLASULONG;
|
||||||
|
#else
|
||||||
|
typedef long BLASLONG;
|
||||||
|
typedef unsigned long BLASULONG;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENBLAS_USE64BITINT
|
||||||
|
typedef BLASLONG blasint;
|
||||||
|
#else
|
||||||
|
typedef int blasint;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(XDOUBLE) || defined(DOUBLE)
|
||||||
|
#define FLOATRET FLOAT
|
||||||
|
#else
|
||||||
|
#ifdef NEED_F2CCONV
|
||||||
|
#define FLOATRET double
|
||||||
|
#else
|
||||||
|
#define FLOATRET float
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Inclusion of a standard header file is needed for definition of __STDC_*
|
||||||
|
predefined macros with some compilers (e.g. GCC 4.7 on Linux). This occurs
|
||||||
|
as a side effect of including either <features.h> or <stdc-predef.h>. */
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
/* C99 supports complex floating numbers natively, which GCC also offers as an
|
||||||
|
extension since version 3.0. If neither are available, use a compatible
|
||||||
|
structure as fallback (see Clause 6.2.5.13 of the C99 standard). */
|
||||||
|
#if ((defined(__STDC_IEC_559_COMPLEX__) || __STDC_VERSION__ >= 199901L || \
|
||||||
|
(__GNUC__ >= 3 && !defined(__cplusplus))) && !(defined(FORCE_OPENBLAS_COMPLEX_STRUCT)))
|
||||||
|
#define OPENBLAS_COMPLEX_C99
|
||||||
|
#ifndef __cplusplus
|
||||||
|
#include <complex.h>
|
||||||
|
#endif
|
||||||
|
typedef float _Complex openblas_complex_float;
|
||||||
|
typedef double _Complex openblas_complex_double;
|
||||||
|
typedef xdouble _Complex openblas_complex_xdouble;
|
||||||
|
#define openblas_make_complex_float(real, imag) ((real) + ((imag) * _Complex_I))
|
||||||
|
#define openblas_make_complex_double(real, imag) ((real) + ((imag) * _Complex_I))
|
||||||
|
#define openblas_make_complex_xdouble(real, imag) ((real) + ((imag) * _Complex_I))
|
||||||
|
#define openblas_complex_float_real(z) (creal(z))
|
||||||
|
#define openblas_complex_float_imag(z) (cimag(z))
|
||||||
|
#define openblas_complex_double_real(z) (creal(z))
|
||||||
|
#define openblas_complex_double_imag(z) (cimag(z))
|
||||||
|
#define openblas_complex_xdouble_real(z) (creal(z))
|
||||||
|
#define openblas_complex_xdouble_imag(z) (cimag(z))
|
||||||
|
#else
|
||||||
|
#define OPENBLAS_COMPLEX_STRUCT
|
||||||
|
typedef struct { float real, imag; } openblas_complex_float;
|
||||||
|
typedef struct { double real, imag; } openblas_complex_double;
|
||||||
|
typedef struct { xdouble real, imag; } openblas_complex_xdouble;
|
||||||
|
#define openblas_make_complex_float(real, imag) {(real), (imag)}
|
||||||
|
#define openblas_make_complex_double(real, imag) {(real), (imag)}
|
||||||
|
#define openblas_make_complex_xdouble(real, imag) {(real), (imag)}
|
||||||
|
#define openblas_complex_float_real(z) ((z).real)
|
||||||
|
#define openblas_complex_float_imag(z) ((z).imag)
|
||||||
|
#define openblas_complex_double_real(z) ((z).real)
|
||||||
|
#define openblas_complex_double_imag(z) ((z).imag)
|
||||||
|
#define openblas_complex_xdouble_real(z) ((z).real)
|
||||||
|
#define openblas_complex_xdouble_imag(z) ((z).imag)
|
||||||
|
#endif
|
||||||
|
#endif /* OPENBLAS_CONFIG_H */
|
BIN
lib/3rdParty/OpenBLAS/lib/x64/libopenblas.dll.a
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/lib/x64/libopenblas.dll.a
vendored
Normal file
Binary file not shown.
BIN
lib/3rdParty/OpenBLAS/lib/x86/libopenblas.dll.a
vendored
Normal file
BIN
lib/3rdParty/OpenBLAS/lib/x86/libopenblas.dll.a
vendored
Normal file
Binary file not shown.
33
lib/3rdParty/OpenBLAS/readme.txt
vendored
Normal file
33
lib/3rdParty/OpenBLAS/readme.txt
vendored
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
make QUIET_MAKE=1 TARGET=NEHALEM DYNAMIC_ARCH=1 HOSTCC=gcc NUM_THREADS=64 BINARY=64 CC=x86_64-w64-mingw32-gcc FC=x86_64-w64-mingw32-gfortran
|
||||||
|
[INFO] : TIMER value: INT_ETIME (given by make.inc)
|
||||||
|
[INFO] : TIMER value: INT_ETIME (given by make.inc)
|
||||||
|
touch libopenblasp-r0.2.19.a
|
||||||
|
make -s -j 16 -C test all
|
||||||
|
make -s -j 16 -C utest all
|
||||||
|
make -s -j 16 -C ctest all
|
||||||
|
|
||||||
|
OpenBLAS build complete. (BLAS CBLAS LAPACK LAPACKE)
|
||||||
|
|
||||||
|
OS ... WINNT
|
||||||
|
Architecture ... x86_64
|
||||||
|
BINARY ... 64bit
|
||||||
|
C compiler ... GCC (command line : x86_64-w64-mingw32-gcc)
|
||||||
|
Fortran compiler ... GFORTRAN (command line : x86_64-w64-mingw32-gfortran)
|
||||||
|
Library Name ... libopenblasp-r0.2.19.a (Multi threaded; Max num-threads is 64)
|
||||||
|
|
||||||
|
To install the library, you can run "make PREFIX=/path/to/your/installation install".
|
||||||
|
|
||||||
|
├── bin
|
||||||
|
│ └── libopenblas.dll The shared library for Visual Studio and GCC.
|
||||||
|
├── include
|
||||||
|
│ ├── cblas.h
|
||||||
|
│ ├── f77blas.h
|
||||||
|
│ ├── lapacke_config.h
|
||||||
|
│ ├── lapacke.h
|
||||||
|
│ ├── lapacke_mangling.h
|
||||||
|
│ ├── lapacke_utils.h
|
||||||
|
│ └── openblas_config.h
|
||||||
|
├── lib
|
||||||
|
│ ├── libopenblas.a The static library. Only work with GCC.
|
||||||
|
│ └── libopenblas.dll.a The import library for Visual Studio.
|
||||||
|
└── readme.txt
|
14
lib/3rdParty/OpenBLAS/readme_2.txt
vendored
Normal file
14
lib/3rdParty/OpenBLAS/readme_2.txt
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
Using the following OpenBLAS implementation - https://github.com/xianyi/OpenBLAS
|
||||||
|
|
||||||
|
The pre-compiled library was acquired from (64 bit version):
|
||||||
|
https://sourceforge.net/projects/openblas/files/v0.2.19/
|
||||||
|
File - OpenBLAS-v0.2.19-Win64-int32.zip
|
||||||
|
|
||||||
|
The pre-compiled library was acquired from (32 bit version):
|
||||||
|
https://sourceforge.net/projects/openblas/files/v0.2.15/
|
||||||
|
OpenBLAS-v0.2.15-Win32.zip
|
||||||
|
|
||||||
|
Extra .dll dependencies from:
|
||||||
|
https://sourceforge.net/projects/openblas/files/v0.2.14/
|
||||||
|
|
||||||
|
Download the appropriate mingw zip files
|
|
@ -59,6 +59,7 @@
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -66,6 +67,7 @@
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -73,6 +75,7 @@
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\3rdParty\boost\boost.props" />
|
<Import Project="..\..\3rdParty\boost\boost.props" />
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -80,6 +83,7 @@
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\3rdParty\boost\boost.props" />
|
<Import Project="..\..\3rdParty\boost\boost.props" />
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
|
|
@ -56,6 +56,7 @@
|
||||||
<Import Project="..\..\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -63,6 +64,7 @@
|
||||||
<Import Project="..\..\3rdParty\dlib\dlib.props" />
|
<Import Project="..\..\3rdParty\dlib\dlib.props" />
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb.props" />
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -70,6 +72,7 @@
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
@ -77,6 +80,7 @@
|
||||||
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
<Import Project="..\..\3rdParty\OpenCV3.1\openCV3.1.props" />
|
||||||
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
<Import Project="..\..\3rdParty\boost\boost_d.props" />
|
||||||
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
<Import Project="..\..\3rdParty\tbb\tbb_d.props" />
|
||||||
|
<Import Project="..\..\3rdParty\OpenBLAS\OpenBLAS.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
|
|
Loading…
Reference in a new issue