This week I installed Ubuntu 21.04 Beta with OpenZFS 2.02 on my desktop with a 512 GB nvme-SSD, 128 GB sata-SSD and 1.5 TB of HDDs and I’m really impressed with the performance of the persistent SSD Cache (L2ARC). Boot times of my VMs from the L2ARC caching two striped HDDs are getting very very close to the boot times of the VMs from the nvme-SSD (11 secs vs 9 secs)
The large conky picture on the extreme right monitors my Host OS of the Ryzen desktop. It is just after a fresh boot with only Xubuntu 20.04 VM started from the nvme-SSD and Xubuntu 18.04 booted from L2ARC and its striped HDDs. Note that the hit rate of the L2ARC will go up from 16% to 50%, if used more frequently. So 97% of my disk IO would be from the memory cache (L1ARC) and from the remaining 3%, half will be served by the sata-SSD cache (L2ARC; 540 MB/s) and half from the 2 HDDs (together max sequential read 240 MB/s, but don’t forget the HDD mechanical seek times of ~12 msec). During normal operation almost all IO will be run from L1ARC, mainly booting and initial program loading will be served from the SSD cache (L2ARC).
Note that the L1ARC and L2ARC sizes are given as (uncompressed size) real lz4 compressed size and for the L2ARC it is (204) GB uncompressed and 104 GB lz4 compressed