linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: Kernel compression benchmarks
@ 2020-07-26 16:43 Jan Ziak
  0 siblings, 0 replies; 9+ messages in thread
From: Jan Ziak @ 2020-07-26 16:43 UTC (permalink / raw)
  To: alex_y_xu
  Cc: Kernel-team, clm, gregkh, keescook, kilobyte, linux-kbuild,
	linux-kernel, mingo, nickrterrell, nolange79, oss, patrick,
	patrickw3, rmikey, sedat.dilek, terrelln, x86

Hello

I looked at the SVG graphs and it appears that the formula used wasn't
T_load+T_decompress, but was just T_decompress.

Without considering the time it takes to load the compressed data from
a storage device, the SVG graphs are only half-done and might be
deceiving.

There are 3 kinds of typical device speeds nowadays, the sequential
read speed of a large non-fragmented compressed file is one of the
following:

100 MB/s: rotational disks and USB flash drives
500 MB/s: SATA SSD
2 GB/s: NVMe SSD

The read speeds of USB flash devices vary a lot, but in case of recent
high-speed USB flash drives it falls into the 100 MB/s category of
rotational disks. Taking USB flash read speed into consideration is
important for deciding which compression to use when creating the ISO
image of a Linux distribution.

In summary: Instead of the 1 kernel-decomp.svg file, there should be 3
kernel-read-decomp.svg files. Similarly in the case of the
initramfs-decomp.svg file.

As a rule of thumb, if the kernel and initramfs are stored on a NVMe
SSD then simply select the fastest decompressor without considering
the compression ratio - or avoid using any compression at all in which
case T_decompress will be zero.

The formula T_load+T_decompress assumes that loading and decompression
aren't executing in parallel. If they are, the formula should be
max(T_load, T_decompress).

Sincerely
Jan

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-07-26 16:44 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1588791882.08g1378g67.none.ref@localhost>
2020-07-01 14:35 ` Kernel compression benchmarks Alex Xu (Hello71)
2020-07-01 15:50   ` Gao Xiang
2020-07-01 17:32     ` Alex Xu (Hello71)
2020-07-02 15:18   ` Kees Cook
2020-07-03  8:15     ` Sedat Dilek
2020-07-03 16:06       ` Kees Cook
2020-07-03 17:36         ` Norbert Lange
2020-07-06 15:05         ` Nick Terrell
2020-07-26 16:43 Jan Ziak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).