OvmfPkg: raise PcdShellFileOperationSize to 128KB
Some UEFI shell commands read and write files in chunks. The chunk size is given by "PcdShellFileOperationSize", whose default in "ShellPkg/ShellPkg.dec" is 4KB (0x1000). The virtio-fs daemon of QEMU advertizes a 128KB maximum buffer size by default, for the FUSE_WRITE operation. By raising PcdShellFileOperationSize 32-fold, the number of FUSE write requests shrinks proportionately, when writing large files. And when a Virtio Filesystem is not used, a 128KB chunk size is still not particularly wasteful. Some ad-hoc measurements on my laptop, using OVMF: - The time it takes to copy a ~270MB file from a Virtio Filesystem to the same Virtio Filesystem improves from ~9 seconds to ~1 second. - The time it takes to compare two identical ~270MB files on the same Virtio Filesystem improves from ~11 seconds to ~3 seconds. Cc: Ard Biesheuvel <ard.biesheuvel@arm.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3125 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Ard Biesheuvel <ard.biesheuvel@arm.com> Message-Id: <20210113085453.10168-3-lersek@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
parent
f72fd9616e
commit
2912341cd9
|
@ -562,6 +562,8 @@
|
|||
#
|
||||
!include NetworkPkg/NetworkPcds.dsc.inc
|
||||
|
||||
gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
|
||||
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000
|
||||
!endif
|
||||
|
|
|
@ -568,6 +568,8 @@
|
|||
#
|
||||
!include NetworkPkg/NetworkPcds.dsc.inc
|
||||
|
||||
gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
|
||||
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000
|
||||
!endif
|
||||
|
|
|
@ -568,6 +568,8 @@
|
|||
#
|
||||
!include NetworkPkg/NetworkPcds.dsc.inc
|
||||
|
||||
gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|0x20000
|
||||
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000
|
||||
!endif
|
||||
|
|
Loading…
Reference in New Issue