-
-
Notifications
You must be signed in to change notification settings - Fork 452
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Row.c code shrink and adding a new format for Row_printNanoseconds() #1579
base: main
Are you sure you want to change the base?
Conversation
0c14007
to
46e88a9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Although a bit unconventional to skip from ns
to ms
right away … Also, even though we have Unicode, for units I'd still prefer to use us
unconditionally.
"1.0000ms" vs. "1000.0us" ... These are same precision for showing the fractions of a second. I don't know which one looks better. Note that the time units in the GPUMeter would have to use |
I'm neutral either way … |
46e88a9
to
4ff9f7a
Compare
* Reduce length of the format strings by removing redundant field width specifications (e.g. "%1u" -> "%u"). * Merge some identical function calls in conditionals. Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
Shorten a format string ("%1ud" -> "%ud"). Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
Merge two xSnprintf() calls within the function. When the time value to print is less than one second, the "%.u" format allows us to print no digits in the seconds field. Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
Add a new format: "1.0000ms" - "9.9999ms". Previously they would print as ".001000s" and ".009999s", and this new format adds one extra digit of precision. Note that I print the unit as "ms" rather than microseconds; this saves code for deciding whether to print the Greek "mu" or the Latin "u". Row_printNanoseconds() now prints this list of formats: " 0ns", "999999ns", "1.0000ms", "9.9999ms", ".010000s", ".999999s", "1.00000s", "59.9999s", "1:00.000", "9:59.999", "10:00.00" ... Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
4ff9f7a
to
54d77d4
Compare
Can we have one "format times" code as in #1583 and this combined? |
https://en.wikipedia.org/wiki/Microsecond ... "Its symbol is μs, sometimes simplified to us when Unicode is not available." |
The output of #1583 is an ASCII string (
Ask @BenBE for this. Actually I wished the Greek letter mu (μ, U+03BC) be used when it's available, but a previous comment of BenBE said something about using |
The first three commits are code shrinks.
The last one commit adds a new format for Row_printNanoseconds() because I feel I missed a chance of allowing one extra digit of precision to be printed.
The last commit is optional. If people feel the new format is not worth it, I can drop that commit.
(Follow-up of #1425)