shithub: riscv

Download patch

ref: c8544c91d9bd6d8094d80881d318cbc6dac899f1
parent: 0fcab2a6e8896ba99c935a9feee798d06ed8fc3b
author: Jacob Moody <moody@posixcafe.org>
date: Wed May 8 13:20:22 EDT 2024

prof: increase precision of measurements

Currently we use millisecond ticks for time spent in each function.
This is not good enough for modern machines where fast functions could
be completed in a handful of nanoseconds.  Instead let us just use the
raw ticks and store the cyclecfreq in the output prof data.  This
requires that we enlargen the time section in the data to 8 bytes,
which broke the assumptions for struct allignment and required a
slight refactor of the code used to read it in prof(1).  Since this is
a breaking change, we've devised a small format to communicate the
version for future revision of this format and this patch includes a
modification to file(1) for recognizing this format.  Additionally
some minor improvements were made across the board.