Hi Zhangfei,

The crypto scheduler PMD's session contains "sub-sessions" for all works, 1 sub-session per driver ID, to minimize the memory footprint. When configuring session, it configures the sub-sessions one by one. Since your UADK devices sharing the same driver ID, the crypto scheduler will only create one session for them to share.

Hope this answers your question.

Regards,

Fan

On 12/16/2022 6:54 AM, Zhangfei Gao wrote:
Hi, Akhil

Excuse me for the question.

I am testing UADK crypto performance with dpdk-test-crypto-perf, and want to use multi-thread or multi-session for better performance, so trying to use crypto_scheduler.

CMD like
sudo dpdk-test-crypto-perf -l 1,2 --vdev "crypto_uadk0" --vdev "crypto_uadk1" --vdev "crypto_scheduler,worker=crypto_uadk0,worker=crypto_uadk1,mode=round-robin" -- --devtype crypto_scheduler --optype cipher-only --buffer-sz 8192

Though multi-worker is set but found it is just using one worker.
Since uadk_cryptodev_probe gets the same dev->driver_id = uadk_cryptodev_driver_id in multi-probe.

Then scheduler_pmd_sym_session_configure will treat only one worker,
and call rte_cryptodev_sym_session_create only once.
if (configured_sess[j].driver_id == worker->driver_id)
        break

Do I misuse the crypto_scheduler for the multi-thread or multi-session.

Thanks in advance.

Reply via email to