intel / intel/QAT_Engine

Question about using async jobs and qat_sw.

Open
#232 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
443
Forks
137
PR merge metrics
No merged PRs in 30d

Description

I've been testing qat_sw performance using `openssl speed` test and I've noticed using async_jobs option makes a big speed-up difference. However there are some doubts I hope someone can help me to understand when using -async_jobs.

Here is the command I've been used:

`openssl speed -engine qatengine -async_jobs n rsa2048`

Questions:
1. I see no big performance difference when using -async_jobs as 10, 100 or 1000.
a. Is there a 'sweet' point for the the async_jobs value parameter?
b. How to find the best performant async_jobs number?
c. How the -async_jobs value affects the performance?

2. If I use `-async_jobs 7` (or less) as value parameter the performance is very poor even when compared to a test not using async_jobs, i.e `openssl speed rsa2048`.
a. Is that an issue or an expected behavior considering the low -async-jobs number and due to the overhead to process jobs asynchronously?

Some number just as an example:

`openssl speed rsa2048` gives me:

Doing 2048 bits private rsa's for 10s: 10487 2048 bits private RSA's in 10.00s
Doing 2048 bits public rsa's for 10s: 351725 2048 bits public RSA's in 10.00s
...
sign verify sign/s verify/s
rsa 2048 bits 0.000954s 0.000028s 1048.7 35172.5

`openssl speed -engine qatengine -async_jobs 1 rsa2048` gives me:

Doing 2048 bits private rsa's for 10s: 893 2048 bits private RSA's in 1.03s
Doing 2048 bits public rsa's for 10s: 985 2048 bits public RSA's in 0.11s
...
sign verify sign/s verify/s
rsa 2048 bits 0.001153s 0.000112s 867.0 8954.5

Thanks in advance for any clarification.

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.