Ampere-powered systems have multiple use cases, especially packet processing workloads built on DPDK. Ampere has published a setup and tuning guide for DPDK. Many customers use encryption/decryption in DPDK apps, so additional crypto library support info is added.
Poll Mode Drivers for Crypto on Ampere Processors
- ARMv8 Crypto Driver: Enables crypto extensions for ARMv8, core functions in assembly, published by Arm at https://github.com/ARM-software/AArch64cryptolib.git. Supports RTE_CRYPTO_CIPHER_AES_CBC, RTE_CRYPTO_AUTH_SHA1_HMAC, RTE_CRYPTO_AUTH_SHA256_HMAC.
- Build DPDK With ARMv8 Crypto PMD: Download and build AArch64 crypto library source code. Different commands for Ampere Altra and AmpereOne families. Reference: https://doc.dpdk.org/guides/cryptodevs/armv8.html.
- OpenSSL Crypto Driver: Use OpenSSL 3.2 or 1.1.1 on Ampere Altra, and 3.4.0 on AmpereOne for best performance. Avoid versions 3.0.x and 3.1.x. Supports various cipher and authentication algorithms. Download and install OpenSSL 3.4.0 with specific commands for each family. Reference: https://doc.dpdk.org/guides/cryptodevs/openssl.html.
- IPSec Multi-Buffer Library for Aarch64: Supports specific cipher and authentication algorithms. Download and build with
git cloneandmake install. Reference: https://doc.dpdk.org/guides/cryptodevs/snow3g.html. - Build DPDK With Crypto Support: Set environment variables for different operating systems. Build DPDK with
meson build,ninja -C build, andninja -C build install. Check supported crypto devices. - Crypto Performance Test on Ampere Altra Q80-30 and AmpereOne A192-32X: Test various crypto algorithms on different systems with specific commands and performance data shown.
- Performance Scaling With Core Counts: Crypto throughput on Ampere processor is linear with core count. Examples given for AES-GCM-128 and snow3g-uea2.
- Run l2fwd With Crypto: DPDK provides l2fwd-crypto example app. Set up Pktgen-dpdk as packet generator. Examples shown for different crypto types.
- Tuning Guide: Hardware configure with 1 DIMM per channel. BIOS settings like enabling/disabling certain options. OS settings like setting frequency governor to performance mode and using proper GCC. Select appropriate library versions.
- References: Various links related to DPDK, crypto, and Ampere.
Overall, Ampere provides detailed guides and examples for optimizing crypto performance on their systems.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。