From a850b868103c2088b9c7535c55c3c9ce2e3a3ace Mon Sep 17 00:00:00 2001 From: Martin Wimpress Date: Sun, 25 Jan 2026 15:58:17 +0000 Subject: [PATCH] perf(quickemu): improve disk I/O defaults (cache,aio) - add cache=writeback and aio=threads to DRIVE_OPTIMISATIONS - retain existing optimisations: discard=unmap,detect-zeroes=unmap - improve write performance (host writeback caching) and async I/O parallelism via thread-based AIO - follows Proxmox/libvirt QEMU disk best practices; researched for macOS but applies to all guests Signed-off-by: Martin Wimpress --- quickemu | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/quickemu b/quickemu index 7e75357980..0b10f32879 100755 --- a/quickemu +++ b/quickemu @@ -1887,8 +1887,9 @@ function vm_boot() { # Add the disks # - https://turlucode.com/qemu-disk-io-performance-comparison-native-or-threads-windows-10-version/ - # Optimise disk I/O: enable TRIM/discard and zero detection for thin provisioning - DRIVE_OPTIMISATIONS="discard=unmap,detect-zeroes=unmap" + # Optimise disk I/O: enable TRIM/discard, zero detection for thin provisioning, + # writeback caching and threaded async I/O + DRIVE_OPTIMISATIONS="discard=unmap,detect-zeroes=unmap,cache=writeback,aio=threads" if [[ "${boot}" == *"efi"* ]]; then QCOW2CODE=$(is_firmware_qcow2 "${EFI_CODE}")