On Wed, Jan 25, 2017 at 07:43:01PM +0100, René Scharfe wrote:
> We could track processor time spent and memory allocated in QSORT_S and the
> whole program and show a warning at the end if one of the two exceeded, say,
> 5% of the total, asking nicely to send it to our mailing list. Would
> something like this be useful for other functions or metrics as well? Would
> it be too impolite to use users as telemetry transports?
Frankly, that sounds a bit overboard to me. If people want to profile
there are profiling tools. If we want users to profile on their systems
and send results to us, I think I'd rather give them instructions or a
wrapper script for doing so.
> If we find such cases then we'd better fix them for all platforms, e.g. by
> importing timsort, no?
Yes, as long as they are strict improvements. I can't think of a case
where some sorting behavior is a matter of opinion, and they'd prefer
Git behave like the rest of their system rather than like Git on other
systems[1].
-Peff
[1] I wonder the same about regex implementations. I generally consider
our GNU regex fallback to be a strict improvement over system
versions, at least in terms of features. But I was interested to see
recently that musl implements pcre-style "\x" as an extension, but
it _doesn't_ do REG_STARTEND. So it's at tradeoff. They have to use
the fallback on newer versions of git (to get REG_STARTEND), but
that means the rest of their system understands "\x" but Git does
not.