Skip to content

WinPython 64 bit with PyPy #966

@stonebig

Description

@stonebig

To celebrate the arrival of PyPy on Windows 64 bit, Let see if we can build a WinPython with PyPy.

Interception course with cPython:

  • interesting spot is: PyPy + VSCode + Jupyterlab + Cython + HPy , on 64 bit, maybe pyside6-6.1
  • WinPython 2021-03: PyPy-7.3.5 for Python3.7+ VSCode + Jupyterlab + Cython, on 64 bit only
  • WinPython 2021-04: Matplotlib-3.5.0 + PySide-6.1 + HPy and performances fixes
  • WinPython 2021-05: PyPy for Python-3.8, beta seems coming this summer 2021
  • WinPython 2022-02 2022-03: PyPy for Python-3.9
  • WinPython 2022-05: PyPy for Python-3.10
  • WinPython 2023-02: PyPy for Python-3.11

so far:

  • WinPython 'dot' version; Yes but missing WPPM GUI (the Qt Problem)
  • SQLite_bro : Yes but slightly different behavior, 6x slower
  • VScode without Jupyter: ... works by updating VSCode settings per menu, to tell where pypy3.exe is
  • SQLite_bro-0.9.2 fixes PyPy compatibility
  • a small Speed-Center table (below)
  • Adapt Build System to automate PyPy builds like the cPython builds
  • SQLite-3.35.5 in PyPy-7.3.5rc1 (becoming level with CPython)
  • Numpy, Matplotlib, Pandas, scikit-learn
  • Pywinpty
  • a cython wheel (but compiling to cython slows things 2.5x, currently)
  • statsmodels (after statsmodels made a compatibility patch)
  • pyzmq fix (per Christoph Gohlke)
  • Jupyter compatibility (since May 25th morning ... to integrate in a release)

Roadblocks or Hacks :

  • Qt Stack: needs
    • COMPATIBLE PySide6-6.1 with PyPy,
    • COMPATIBLE Matplotlib-3.5.0 with PySide6-6.1 (end october june ?)

Other:

Speed-Center:

speed test (seconds) Cpython-3.9 Pypy-7.3.5 3.7.10 PyPy-7.3.6 3.8.10 nightly comment
SQLite_bro 13 85 35 seems linked to 'import' not being cached , but now SQLite-3.35.0 with math functions included, and PyPy-7.3.6 will cache imports (200x speed-up, but apparently no effect)
sudoku_norvig_for_comparison_of_complexity.py 0.09 0.51
sudoku_norvig_for_comparison_of_complexity.py (hard1) 89 42 65 python-3.10a7 = 89s, numba can't, cython = 47s
speed_basic.py (code below or there) 25.5 0.27
pyconumpy the microbench to prove or not that Pypy is a scientific option (should become good with HPy)

the Nbody experiment became good in PyPy with type freezing
at CGO ’20, February 22–26, 2020, San Diego, CA, USA

Climate Impact
image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions