原料
1.装有exar加速卡的机器
lspci | grep Hifn
1.1).DX_SDK_v2.3.0L_EXAR_20190329.tar.gz
Md5:daae58c627c09878d6f86709e753d81d
1.2).DX_SDK_v2.3.0L_PUBLIC_20190329.tar.gz
Md5:2a6100d0427cf5a7a1be9806e36ef792
1.3).openssl_engine_3.2.0_20191019.tar.gz
Md5:6e63c9c120fd41c4506d6d86a668af11
openssl环境以openssl-1.1.1b为例
1.4).openssl-1.1.1b
Md5:4532712e7bcc9414f5bce995e4e13930

安装步骤
- 创建SDK工作目录(文档中路径为/home/exar_env/)
- 拷贝DX_SDK_v2.3.0L_PUBLIC_20190329.tar.gz文件到/home/exar_env
- 解压文件DX_SDK_v2.3.0L_PUBLIC_20190329.tar.gz
- 拷贝DX_SDK_v2.3.0L_EXAR_20190329.tar.gz文件到/home/exar_env
- 解压文件DX_SDK_v2.3.0L_EXAR_20190329.tar.gz
- 解压后/home/exar_env下子目录及文件列表如下:
drwxr-xr-x. 4 root root 26 Feb 24 2019 api
 drwxr-xr-x. 5 root root 46 Feb 24 2019 app
 -rw-r--r--. 1 root root 7436 Feb 24 2019 demo.cfg.xml
 drwxr-xr-x. 3 root root 166 Feb 24 2019 diag
 -rw-r--r--. 1 root root 9084 Feb 24 2019 driver.cfg.xml
 drwxr-xr-x. 2 root root 4096 Feb 24 2019 dsd820x
 drwxr-xr-x. 2 root root 4096 Feb 24 2019 dsd92xx
 drwxr-xr-x. 4 root root 4096 Feb 24 2019 esf
 drwxr-xr-x. 2 root root 4096 Feb 24 2019 h
 -rw-r--r--. 1 root root 3069 Feb 24 2019 Load
 -rw-r--r--. 1 root root 20690 Feb 24 2019 Makefile
 -rw-r--r--. 1 root root 2894 Feb 24 2019 README.exar
 -rw-r--r--. 1 root root 10800 Feb 24 2019 README.public
 drwxr-xr-x. 5 root root 40 Feb 24 2019 sai
 -rw-r--r--. 1 root root 2911 Feb 24 2019 sdemo.decode.cfg.xml
 -rw-r--r--. 1 root root 3474 Feb 24 2019 sdemo.drbg.xml
 -rw-r--r--. 1 root root 3167 Feb 24 2019 sdemo.encode.cfg.xml
 -rw-r--r--. 1 root root 905 Feb 24 2019 sdemo.ivaad.xml
 -rw-r--r--. 1 root root 3579 Feb 24 2019 sdemo.key.xml
 drwxr-xr-x. 7 root root 4096 Feb 24 2019 swlib
 -rw-r--r--. 1 root root 470 Feb 24 2019 UnLoad
 drwxr-xr-x. 2 root root 62 Feb 24 2019 userspace
修改driver.cfg.xml配置

- pk_enable根据cpu核数以及exar加速卡队列数(现阶段线上版本有17个队列,0,16队列有固定使用场景,1-15可以分配使用,我们设置12是因为有两块卡,cpu有24核,这样绑中断刚好可以绑的均匀)
- 执行make;make install命令
- 在/home/exar_env下生成dre_drv.ko, 安装该模块insmod /home/exar_env/dre_drv.ko
- 安装之后执行Load irq_balance绑定中断(Load做过修改,附件中md5:5984602ff8599232490bcf425a4bb507 版本适用于两块卡,pk_enable:12 , cpu 24核的中断绑定,其他情况酌情修改)
- 创建/home/openssl_engine,拷贝openssl_engine_3.2.0_20191019.tar.gz至该目录
- 解压openssl_engine_3.2.0_20191019.tar.gz后/home/openssl_engine目录下文件列表:
rw-rrrw-rrrw-rrrw-rrrw-rr
- 修改Makefile相关字段:
OPENSSL_INSTALL_PATH := /path/to/openssl-1.1.1b/.openssl #openssl 安装路径
- 执行make;make install命令
- 在/home/openssl_engine下生成pk_drv.ko并安装该模块insmod /home/openssl_engine/pk_drv.ko
测试安装情况
测试命令:
 openssl speed rsa2048 -engine eng_dx -elapsed -multi 24

单张exar加速卡可以到4w/s即可认为安装成功。
注意
1.用户如果需要使用该engine,需要设置OPENSSL_ENGINES环境变量:
例如,root用户的程序需要使用该engine,那么我们可以将OPENSSL_ENGINES变量写在/root/.bashrc中:

2.机器有重启的可能,如果机器重启,可以在rc.local中添加自动加载模块以及设置的命令,达到自动加载的目的:











