A while back, I did this comparison.

It's been a while, and I decided to look this over again.

Specifically, this time around I was able to:

- Add nuitka for Python 3.5
- Rename the two numba's to cpython?+numba-object. It turns out this is the slow way of doing numba.
- Add cpython?+numba-nopython. This is the fast way of doing numba.
- Use C math instead of Python math in the two (2.x and 3.x) cython "type" versions.

Speed. Normalized to where g++ is "1.0". Lower is better. |
Language/Implementation |

1.000000 | g++-t |

1.007000 | clang++-t |

1.142000 | shedskin-t |

1.301000 | cython2_types_t |

1.381000 | cython3_types_t |

1.898000 | pypy3-t |

2.019000 | pypy-t |

2.041000 | cpython3+numba-nopython-t |

2.055000 | cpython2+numba-nopython-t |

3.486000 | nuitka2-t.exe |

3.871000 | cython2-t |

4.251000 | cpython2-t |

4.664000 | cython3-t |

4.707000 | nuitka3-t.exe |

5.086000 | cpython3-t |

5.485000 | cpython2+numba-object-t |

5.705000 | cpython3+numba-object-t |

Hits: 1807

Timestamp: 2024-02-29 09:49:13 PST

Back to Dan's tech tidbits

You can e-mail the author with questions or comments: