3 ms·
Because the start-up time of the interpreter will affect you every time you run one of those utilities.
by mzl 16y ago
Because the start-up time of the interpreter will affect you every time you run one of those utilities.
- fauigerzigerk 16y agoSure, and I did mention command line utilities. The issue I see with the benchmark is that it compares apples and oranges. For some programs it tests JIT performance and for others it tests startup time. If I want to test startup time, I just use a hello world program. To test JIT/interpreter performance, I try to exclude startup time.
- derefr 16y agoHello world programs only ever rely on the bare runtime, though; real utilities have to load libraries after the runtime loads, which incurs further delays (which might depend on JITing/interpreting speed if they're not pre-compiled.)
- mzl 16y agoOk, you've got a point there about separating the things that are measured.
- rdtsc 16y agoThe same can be said about benchmarking numeric vs io code. Is it apples and oranges and bananas then? Most programs have a mix of everything. Whether Eurler's problems are a good mix that represent your workload is up to you to decide.
- Raphael_Amiard 16y agoIn addition to what fauigerzigerk said, if you run a lot of command line utilities where startup time is relevant, there are established solutions to that (nailgun for example) so it still isn't a fair comparison. If you want a comparison of state of the art solutions, which this post obviously is, put nailgun into the mix.