Programming-Language-Benchmarks icon indicating copy to clipboard operation
Programming-Language-Benchmarks copied to clipboard

Move Compiler Info to dedicated Page

Open HenryJk opened this issue 3 years ago • 6 comments

This PR changes the UI so that compiler column in the benchmark table only show the name instead of name+version. This change is intended to help reduce horizontal footprint of the benchmark results on mobile UI. Unstable/nightly version is indicated by "*" (star) symbol and a dedicated page for compiler/runtime version is added.

Preview of the UI on mobile page (320px width)

bench

compiler

dummy benchmark results has to be regenerated since it adds a new property to benchmark result json file: "unstable" property

HenryJk avatar Feb 01 '22 23:02 HenryJk

Saving horizontal footprint would be easier by reducing with of time(user) and time(sys) by dropping (user) ans (sys) to the second line. Or at least put a space between them to let the system dynamically drop it when needed. Same with compiler/runtime. I personally definitely prefer always seeing compiler/runtime version information. time time (user) (sys)

bpecsek avatar Feb 02 '22 09:02 bpecsek

Those are already hidden by default on mobile UI. Would specifying compiler branch be a good compromise? e.g. using label stable/beta/nightly instead of full version number.

HenryJk avatar Feb 02 '22 14:02 HenryJk

Not when you rotate the screen and use landscape mode that I always do.

bpecsek avatar Feb 02 '22 15:02 bpecsek

This might not work for comparing different versions of the same compiler/runtime, e.g. javascript has numbers of both lts and latest Also, it might be easier to detect whether a version is unstable from the version string instead of manually annotating it. Pre-1.0 langs should also be considered unstable (e.g. v, zig)

It can be similar to how this gradle package update detection plugin parses semver strings

hanabi1224 avatar Feb 03 '22 06:02 hanabi1224

The ms’ and MB could also go to the heather like this

time stddev mem
[ms]  [ms]  [Mb]

bpecsek avatar Feb 03 '22 09:02 bpecsek

This might not work for comparing different versions of the same compiler/runtime, e.g. javascript has numbers of both lts and latest

What I'm concerned about is whether moving compiler information away from the benchmark table page is good change in at least one variant of the idea. For example, I can make it so that the compiler column in the benchmark table shows compiler branch instead of (*) star symbol, alleviating the need to annotate the compiler and remove confusion whether node-17 and node-16 is unstable or not. However, if those ideas are overall seen as less user friendly than the current format, then I better close this PR.

The ms’ and MB could also go to the heather like this

time stddev mem
[ms]  [ms]  [Mb]

That's actually a good idea. But I believe I should make a separate PR for this instead of here.

HenryJk avatar Feb 03 '22 20:02 HenryJk