Skip to content

Fast Mode UX is Poor #2104

Closed
Closed
@indolering

Description

@indolering

Every recent benchmark of ZSTD that I can find skips "fast mode" (lzbench, squash, peazip, zstd).

This is partly because most of the material about ZSTD was written before the negative ranges were added. People just don't know this and you need to advertise this capability. Maybe you could break your benchmark table and graphs into 3 ranges, like is done here:

image

The other issue is that users don't read manuals. While I understand hiding the highest compression levels behind --ultra due to spiking client memory consumption, the --fast=[#] is just there to accommodate CLI formatting convention and hides the higher speed levels from end users:

No extra compression settings were used to fine tune the compression, neither for Brotli nor for Zstandard, compression was defined exclusively setting the compression level parameter. Both algorithms features plenty fine-tuning options, which are out of the scope of this benchmark.
-PeaZIP Blog

I would strongly suggest the following:

  • Accept negative integers (i.e. --5 and maybe - -5) for the compression level.
  • Deprecate (but probably never actually remove) the --fast flag to discourage this being seen as fine tuning.
  • Update all documentation to state the full range of levels.
  • Highlight the full range on the website and readme.md, perhaps by breaking up the benchmarks into fast, normal, and ultra sections. Make sure to explicitly state the range being from -5 to 22.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions