Hacker News new | ask | show | jobs
by hgftr 1131 days ago
The largest number I have seen for microbenchmarks is around 50% speedup in comparison to the last version before this project started.

So, if that version was 40x slower than C (and that is very optimistic), the latest version is still 30x slower. That is the point that the GP made.

I would not call that substantial at all. I'd prefer to keep the CPython interpreter simple, people who want faster Python can use pypy or other things.

The real work in scientific Python will always be done in C or CUDA extensions. No 50% speedup will change anything.

1 comments

Immaterial to the substance of your point but a 50% speed-up is an improvement from 40x to 20x, not to 30x.

        X’  X’/Y   X’/Y
  0.5 = – = –––– = –––– 
        X   X/Y     40

        X’
    =>  – = 20
        Y
Depends on how you define speed-up. This is the most natural definition for me:

As a baseline, my code can do 100 operations / second.

With 50% speedup (+50%), my code can do 150 operations / second.

If C was 40x faster than the baseline, it could do 4000 operations / second. After the speedup C can still do 27x as many operations per second. (4000/150 = 26.66..)

Well, that’s true. The good old miles per gallon vs. liters per 100 kilometers conundrum.