[PATCH v4 2/6] crypto/scheduler: use unified session

Akhil Goyal gakhil at marvell.com
Wed Sep 28 14:56:17 CEST 2022


> Subject: RE: [PATCH v4 2/6] crypto/scheduler: use unified session
> 
> > Have the sym sessions changes been tested with the dpdk-test-crypto-perf
> tool ?
> 
> I have not tested for scheduler pmd. Can you root cause the issue and send a
> fix?
> Fan may have tested it.

Can this fix be taken up as a follow up patch (if not ready) and we merge this series in RC1,
As it is a big change and we cannot delay it beyond RC1.

> 
> >
> > root at silpixa00401033:build# ./app/dpdk-test-crypto-perf -l 3,4 --socket-mem
> > 4096,0 -a 0000:33:01.0,qat_sym_cipher_crc_enable=1 --vdev
> crypto_aesni_mb1
> > --vdev
> >
> "crypto_scheduler,worker=crypto_aesni_mb1,worker=0000:33:01.0_qat_sym,m
> > ode=packet-size-distr,ordering=disable,mode_param=threshold:64" -n 6 --
> force-
> > max-simd-bitwidth=512 -- --ptest throughput --silent --total-ops 3000000 --
> > burst-sz 32 --buffer-sz 105,277,1301  --imix 15,10,75 --devtype
> crypto_scheduler
> > --optype cipher-only --cipher-algo aes-docsisbpi --cipher-iv-sz 16 --cipher-op
> > encrypt --cipher-key-sz 16 --docsis-hdr-sz 17
> > EAL: Detected CPU lcores: 128
> > EAL: Detected NUMA nodes: 2
> > EAL: Detected static linkage of DPDK
> > EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
> > EAL: Selected IOVA mode 'PA'
> > EAL: VFIO support initialized
> > EAL: Using IOMMU type 1 (Type 1)
> > EAL: Probe PCI driver: qat (8086:37c9) device: 0000:33:01.0 (socket 0)
> > CRYPTODEV: Creating cryptodev 0000:33:01.0_qat_sym
> >
> > CRYPTODEV: Initialisation parameters - name: 0000:33:01.0_qat_sym,socket
> id:
> > 0, max queue pairs: 0
> > CRYPTODEV: Creating cryptodev 0000:33:01.0_qat_asym
> >
> > CRYPTODEV: Initialisation parameters - name: 0000:33:01.0_qat_asym,socket
> > id: 0, max queue pairs: 0
> > CRYPTODEV: Creating cryptodev crypto_aesni_mb1
> >
> > CRYPTODEV: Initialisation parameters - name: crypto_aesni_mb1,socket id: 0,
> > max queue pairs: 8
> > ipsec_mb_create() line 152: IPSec Multi-buffer library version used: 1.2.0
> >
> > CRYPTODEV: Creating cryptodev crypto_scheduler
> >
> > CRYPTODEV: Initialisation parameters - name: crypto_scheduler,socket id: 0,
> > max queue pairs: 8
> > cryptodev_scheduler_create() line 138:   Scheduling mode = packet-size-distr
> > PMD:   Sched mode param (threshold = 64)
> > cryptodev_scheduler_create() line 193:   Packet ordering = disable
> > scheduler_attach_init_worker() line 45: Scheduler crypto_scheduler attached
> > worker 0000:33:01.0_qat_sym
> > scheduler_attach_init_worker() line 45: Scheduler crypto_scheduler attached
> > worker crypto_aesni_mb1
> > Allocated pool "sess_mp_0" on socket 0
> > USER1: Test run constructor failed
> >
> > > -----Original Message-----
> > > From: Akhil Goyal <gakhil at marvell.com>
> > > Sent: Monday, September 26, 2022 8:14 PM
> > > To: dev at dpdk.org
> > > Cc: thomas at monjalon.net; david.marchand at redhat.com;
> > > hemant.agrawal at nxp.com; vattunuru at marvell.com;
> > > ferruh.yigit at xilinx.com; andrew.rybchenko at oktetlabs.ru;
> > > konstantin.v.ananyev at yandex.ru; jiawenwu at trustnetic.com;
> > > yisen.zhuang at huawei.com; irusskikh at marvell.com; jerinj at marvell.com;
> > > adwivedi at marvell.com; maxime.coquelin at redhat.com; chandu at amd.com;
> > > ruifeng.wang at arm.com; ajit.khaparde at broadcom.com;
> > > anoobj at marvell.com; De Lara Guarch, Pablo
> > > <pablo.de.lara.guarch at intel.com>; matan at nvidia.com; g.singh at nxp.com;
> > > Yang, Qiming <qiming.yang at intel.com>; Wu, Wenjun1
> > > <wenjun1.wu at intel.com>; jianwang at trustnetic.com; Wu, Jingjing
> > > <jingjing.wu at intel.com>; Xing, Beilei <beilei.xing at intel.com>;
> > > ndabilpuram at marvell.com; Zhang, Roy Fan <roy.fan.zhang at intel.com>;
> > > Akhil Goyal <gakhil at marvell.com>; Ji, Kai <kai.ji at intel.com>; Coyle, David
> > > <david.coyle at intel.com>; O'Sullivan, Kevin <kevin.osullivan at intel.com>
> > > Subject: [PATCH v4 2/6] crypto/scheduler: use unified session
> > >
> > > From: Fan Zhang <roy.fan.zhang at intel.com>
> > >
> > > This patch updates the scheduler PMD to use unified session data structure.
> > > Previously thanks to the private session array in cryptodev sym session there
> > > are no necessary change needed for scheduler PMD other than the way ops
> > > are enqueued/dequeued. The patch inherits the same design in the original
> > > session data structure to the scheduler PMD so the cryptodev sym session
> > > can be as a linear buffer for both session header and driver private data.
> > >
> > > With the change there are inevitable extra cost on both memory
> > > (64 bytes per session per driver type) and cycle count (set the correct session
> > > for each cop based on the worker before enqueue, and retrieve the original
> > > session after dequeue).
> > >
> > > Signed-off-by: Fan Zhang <roy.fan.zhang at intel.com>
> > > Signed-off-by: Akhil Goyal <gakhil at marvell.com>
> > > Acked-by: Kai Ji <kai.ji at intel.com>
> > > Tested-by: Gagandeep Singh <g.singh at nxp.com>
> > > Tested-by: David Coyle <david.coyle at intel.com>
> > > Tested-by: Kevin O'Sullivan <kevin.osullivan at intel.com>
> > > ---



More information about the dev mailing list