prelink performance gains

Dhiru Kholia dhiru.kholia at gmail.com
Mon Oct 14 16:42:35 UTC 2013


Hi,

During the development of "unSPEC" [1] benchmarking suite, I made some
interesting observations regarding prelink.

- Here are some measurements (for LibreOffice [2] loading time in
  seconds) done using the "unSPEC" bench-marking suite. These numbers
  are repeatable and you are encouraged to try "unSPEC" to do
  independent validation of these numbers.

  - hkario (modern SSD based system, cache flushed): (1.816, 1.811,
    1.797, 1.827 with prelink), (2.034, 2.042, 2.027, 2.016 without
    prelink)

  - hkario (modern SSD based system, cache intact): (2.155, 2.121,
    2.101, 2.299 with prelink), (2.311, 2.052, 2.047, 2.037 without
    prelink)

  - halfie (T430s): (10.725, 10.095, 10.378, 10.568 with prelink),
    (8.901, 8.993, 9.075, 9.448, 9.489 without prelink)

  - danpb (T530): I see basically no measurable difference in times with
    or without prelink - quite a lot of variation, but all in same
    ballpark, (8.374, 7.849, 8.457, 7.673, 7.608, 8.031, 8.350, 8.183,
    7.381 with prelink), (7.366, 8.009, 7.500, 7.949, 8.208, 8.351,
    7.849, without prelink).

- For building kernels (using the "kernel-bench" [3] component of unSPEC
  suite), prelink saved <= 250 ms over the non-prelink environment
  (which took 1m19.138s). hkario even reports worse performance numbers
  for the prelink environment. Additionally, we have specialized
  softwares like ccache and distcc to solve long-compilation-time
  problems.

In short, we could not distinguish the performance gains of prelink over
the "background noise" in many (or even most) cases.

So, I was wondering if you are aware of any use-cases where prelink
provides measurable benefits. It would be awesome if you could run
unSPEC on your systems and report back the numbers.

unSPEC is easy to use and doesn't take much time (or steps) to run. For
more information, please see the following links.

References:

[1] https://github.com/kholia/unSPEC
[2] https://github.com/kholia/unSPEC/tree/master/LibreOffice
[3] https://github.com/kholia/unSPEC/tree/master/kernel-bench

--
Dhiru


More information about the security mailing list