使用qat加速时,不开启异步模式,Tengine的CPU使用率跟不用qat一样,性能没有提升。我的理解是只要使用qat硬件加速,不管同步异步模式,握手的RSA计算都应该有硬件加速卡计算,不会占用CPU的资源,CPU的负载应该比不使用QAT硬件加速时低呀
Ⅱ. Describe what happened1、测试环境 1)服务端环境,Tengine作为作为LB,挂载三个后端实例 OS: CentOS7.6(3.10.0-957.21.3.el7.x86_64) Tengine环境 ./sbin/nginx -V Tengine version: Tengine/2.3.2 nginx version: nginx/1.17.3 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) built with OpenSSL 1.1.1c 28 May 2019 TLS SNI support enabled configure arguments: --prefix=/mypath/srv/tengine-2.3.2 --with-http_ssl_module --with-openssl-async --with-cc-opt='-DNGX_SECURE_MEM -I/mypath/srv/openssl/include -Wno-error=deprecated-declarations' --with-ld-opt='-Wl,-rpath=/mypath/srv/openssl/lib -L/mypath/srv/openssl/lib'
开启10个进程:worker_processes 10;
OpenSSL-1.1.1c
QAT环境 qat1.7.l.4.7.0-00006 https://github.com/intel/QAT_Engine.git 编译时安装是成功的 service qat_service status Checking status of all devices. There is 1 QAT acceleration device(s) in the system: qat_dev0 - type: dh895xcc, inst_id: 0, node_id: 0, bsf: 0000:13:00.0, #accel: 6 #engines: 12 state: up
2)测试端 CentOS6.6 测试脚本 for((i=0;i<25;i++)) do ab -n 10000 -c 50 https://mydomain/ > logs/$i.txt& done
2、测试三种情况 1)没有使用qat硬件加速卡 service qat_service stop 将配置中关闭ssl_engine,关闭ssl_async
ssl_engine qat; ssl_async on;2)使用qat,但是不开启异步模式 service qat_service start ssl_engine qat;
ssl_async on;3)使用qat,开启异步模式 service qat_service start ssl_engine qat; ssl_async on;
从测试数据来看,第一种场景(不使用qat)和第二种场景(使用qat,但是不开启异步模式),CPU的使用率一样呀,我的理解是只要使用qat卡,不管同步异步模式,握手的RSA计算都应该有硬件加速卡计算,不会占用CPU的资源,CPU的负载应该比不使用QAT硬件加速时低呀,但是从测试的数据来看不是这样。 第三种情况(开启异步模式),CPU使用率可以节约50%,这个数据可以说的过去。 请问Tengine的同学,在使用qat时是否对比测试过这三种场景,结果是怎样的?