#include <simddetect.h>
Definition at line 31 of file simddetect.h.
| static bool tesseract::SIMDDetect::IsAVX2Available |
( |
| ) |
|
|
inlinestatic |
Definition at line 38 of file simddetect.h.
39 return detector.avx2_available_;
| static bool tesseract::SIMDDetect::IsAVX512BWAvailable |
( |
| ) |
|
|
inlinestatic |
Definition at line 46 of file simddetect.h.
47 return detector.avx512BW_available_;
| static bool tesseract::SIMDDetect::IsAVX512FAvailable |
( |
| ) |
|
|
inlinestatic |
Definition at line 42 of file simddetect.h.
43 return detector.avx512F_available_;
| static bool tesseract::SIMDDetect::IsAVXAvailable |
( |
| ) |
|
|
inlinestatic |
Definition at line 34 of file simddetect.h.
35 return detector.avx_available_;
| static bool tesseract::SIMDDetect::IsSSEAvailable |
( |
| ) |
|
|
inlinestatic |
Definition at line 50 of file simddetect.h.
51 return detector.sse_available_;
| void tesseract::SIMDDetect::Update |
( |
| ) |
|
|
static |
Definition at line 162 of file simddetect.cpp.
165 const char* dotproduct_method =
"generic";
166 if (!strcmp(dotproduct.string(),
"auto")) {
168 }
else if (!strcmp(dotproduct.string(),
"generic")) {
170 SetDotProduct(DotProductGeneric);
171 dotproduct_method =
"generic";
172 }
else if (!strcmp(dotproduct.string(),
"native")) {
175 dotproduct_method =
"native";
177 }
else if (!strcmp(dotproduct.string(),
"avx2")) {
180 dotproduct_method =
"avx2";
183 }
else if (!strcmp(dotproduct.string(),
"avx")) {
186 dotproduct_method =
"avx";
189 }
else if (!strcmp(dotproduct.string(),
"sse")) {
192 dotproduct_method =
"sse";
194 }
else if (!strcmp(dotproduct.string(),
"std::inner_product")) {
196 SetDotProduct(DotProductStdInnerProduct);
197 dotproduct_method =
"std::inner_product";
200 tprintf(
"Warning, ignoring unsupported config variable value: dotproduct=%s\n",
201 dotproduct.string());
202 tprintf(
"Support values for dotproduct: auto generic native" 209 " std::inner_product.\n");
212 dotproduct.set_value(dotproduct_method);
static const IntSimdMatrix intSimdMatrixAVX2
double DotProductAVX(const double *u, const double *v, int n)
double DotProductNative(const double *u, const double *v, int n)
DLLSYM void tprintf(const char *format,...)
static const IntSimdMatrix intSimdMatrixSSE
double DotProductSSE(const double *u, const double *v, int n)
The documentation for this class was generated from the following files: