For a time, VirtualBox did not play well alongside windows Subsystem for Linux 2 (WSL2) but it seems that with later releases of VirtualBox 6 and now VirtualBox 7 that is no longer an issue. Supposedly the issue was having Hyper-V enabled in Windows, which is required for WSL2. I installed and ran a fairly recent Rocky Linux 9.1 distribution and ran some quick tests to see if Hyper-V would outperform the default for Linux VMs, which is KVM. As in most things, the default of KVM (for Linux at least) seems to be the way to go.
With VirtualBox Paravirtualization set to Hyper-V
Hyper-V | Blocks | Seconds | Rate |
Doing md5 for 3s on 16 size blocks | 6933143 | 2.92 | 2,374,364.04 |
Doing md5 for 3s on 64 size blocks | 4645431 | 3.03 | 1,533,145.54 |
Doing md5 for 3s on 256 size blocks | 2584532 | 2.98 | 867,292.62 |
Doing md5 for 3s on 1024 size blocks | 951927 | 2.98 | 319,438.59 |
Doing md5 for 3s on 8192 size blocks | 126942 | 2.99 | 42,455.52 |
Doing md5 for 3s on 16384 size blocks | 65758 | 2.99 | 21,992.64 |
Doing sha1 for 3s on 16 size blocks | 6390386 | 2.99 | 2,137,252.84 |
Doing sha1 for 3s on 64 size blocks | 4782580 | 2.98 | 1,604,892.62 |
Doing sha1 for 3s on 256 size blocks | 2775973 | 2.98 | 931,534.56 |
Doing sha1 for 3s on 1024 size blocks | 1103137 | 2.99 | 368,942.14 |
Doing sha1 for 3s on 8192 size blocks | 171429 | 3.00 | 57,143.00 |
Doing sha1 for 3s on 16384 size blocks | 84294 | 2.99 | 28,191.97 |
Doing sha256 for 3s on 16 size blocks | 4710250 | 3.00 | 1,570,083.33 |
The same test with Paravirtualization set to KVM
KVM | Blocks | Seconds | Rate |
Doing md5 for 3s on 16 size blocks | 7401630 | 2.16 | 3,426,680.56 |
Doing md5 for 3s on 64 size blocks | 7152292 | 2.85 | 2,509,576.14 |
Doing md5 for 3s on 256 size blocks | 3660329 | 3.82 | 958,201.31 |
Doing md5 for 3s on 1024 size blocks | 986638 | 2.76 | 357,477.54 |
Doing md5 for 3s on 8192 size blocks | 148002 | 2.52 | 58,730.95 |
Doing md5 for 3s on 16384 size blocks | 74026 | 2.48 | 29,849.19 |
Doing sha1 for 3s on 16 size blocks | 6973624 | 2.92 | 2,388,227.40 |
Doing sha1 for 3s on 64 size blocks | 5403471 | 2.21 | 2,445,009.50 |
Doing sha1 for 3s on 256 size blocks | 4234692 | 2.35 | 1,801,996.60 |
Doing sha1 for 3s on 1024 size blocks | 1689812 | 3.25 | 519,942.15 |
Doing sha1 for 3s on 8192 size blocks | 190892 | 2.39 | 79,871.13 |
Doing sha1 for 3s on 16384 size blocks | 88654 | 2.99 | 29,650.17 |
Doing sha256 for 3s on 16 size blocks | 5308357 | 3.00 | 1,769,452.33 |
The “test” is simply “openssl speed” which by all accounts is the World’s Hokiest Benchmark, but it does solely focus on CPU (crypto is mainly math) and is installed on essentially every Linux host.
Leave a Reply