Protip: If you have the LUKS/dm-crypt tools installed, there is a benchmark tool that comes with it for checking your performance of different algorithms per the Linux kernel crypto API, by simply invoking cryptsetup benchmark. I just wish it also benchmarked some newer ciphers as well, like those used in WireGuard. Some examples of numbers:
Intel(R) Celeron(R) 2955U @ 1.40GHz (no AES extension support):
# Algorithm | Key | Encryption | Decryption aes-cbc 128b 86.8 MiB/s 101.8 MiB/s serpent-cbc 128b 36.3 MiB/s 114.8 MiB/s twofish-cbc 128b 72.2 MiB/s 109.4 MiB/s aes-cbc 256b 71.3 MiB/s 79.3 MiB/sAMD Ryzen 5 5600X 6-Core Processor (aes and vaes extensions):
# Algorithm | Key | Encryption | Decryption aes-cbc 128b 1458.4 MiB/s 5963.2 MiB/s serpent-cbc 128b 142.6 MiB/s 1007.5 MiB/s twofish-cbc 128b 276.7 MiB/s 504.2 MiB/s aes-cbc 256b 1080.3 MiB/s 5159.8 MiB/sSiFive Freedom U740 (HiFive Unmatched; no AES extensions):
# Algorithm | Key | Encryption | Decryption aes-cbc 128b 21.5 MiB/s 22.4 MiB/s serpent-cbc 128b 15.1 MiB/s 16.0 MiB/s twofish-cbc 128b 23.5 MiB/s 25.0 MiB/s aes-cbc 256b 17.2 MiB/s 17.8 MiB/s