[ann] Minimal Python project
imbosol at vt.edu
Sun Jan 12 20:33:04 CET 2003
Peter Hansen wrote:
> Mike Meyer wrote:
>> Peter Hansen <peter at engcorp.com> writes:
>> > The C compiler has no knowledge of the conditions that will exist
>> > when the code runs. Even if it did, its job is already done, while
>> > the HotSpot compiler can run again, and again, tuning the
>> > application as conditions change.
>> That's not strictly true. I've dealt with compilers that could examine
>> the results of profiled runs of the code being compiled, and use that
>> information in optimizing the resulting code. You could even rerun the
>> profiled version on new data and recompile the code.
> Thanks, I had never heard of such a thing.
> It doesn't help in many cases, however, since conditions are often
> dynamic, and doing profiling runs on your server and recompiling
> it, stopping, upgrading, and restarting it just to improve its
> performance under changing conditions is probably infeasible... ;-)
I disagree; I think profiling data can help optimize the compilation
quite a bit even under widely varying conditions, especially if enough
runs are done to get a kind of average. Even if that isn't true, a
lot of optimizing will occur in purely userspace parts of the program,
and these parts won't be affected by system load.
And of course it's feasable (usually) to collect profiling data for a
time, compile a newly tuned program on another computer, and update it
quickly during a maintenance period. A little networking magic and
there won't even be a downtime at all.
More information about the Python-list