google / google/gemmlowp

Mixing openmp with gemmlowp multithreading causes low performance

Open
#148 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.8k
Forks
461
PR merge metrics
No merged PRs in 30d

Description

If I run a loop with multi threads using openmp, and then call gemmlowp, the performance of gemm will be affected. Any clue?

e.g.
```c++
#pragma omp parallel for
for (int i = 0; i < 100; ++i) {
}

gemmlowp::GemmContext gemm_context;
gemm_context.set_max_num_threads(4);
using BitDepthParams = gemmlowp::L8R8WithLhsNonzeroBitDepthParams;
while (iters--) {
gemmlowp::GemmWithOutputPipeline(
&gemm_context, lhs.const_map(), rhs.const_map(), &result.map(), -128,
-128, output_pipeline);
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.