GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — WinPython 2022-04 b5: python-3.9.10nogil experiment · winpython/winpython · Discussion #1184

WinPython 2022-04 b5: python-3.9.10nogil experiment #1184

stonebig started this conversation in General
WinPython 2022-04 b5: python-3.9.10nogil experiment #1184
@stonebig stonebig
Dec 29, 2022 · 0 comments
Return to top
Discussion options
  • Uh oh!

    There was an error while loading. Please reload this page.

stonebig
Dec 29, 2022
Maintainer

inter-thread (2022-12-29) : a nogil WinPython.

Experimenting "nogil" performance on Windows.

Nogil is the extraordinar experimental fork of standard cpython that removes "GIL" limitation.

Promise in theory (on linux), multi-thread "pure python with no I/O" programs:

  • instead of scaling per ZERO by using threads, your program speeds-up per the number of threads (up to your number of "real" cpus),
  • there is nearly no mono-thread penalty (below 10%).

On a personal test on a old intel cpu 2cpu/4threads Windows 10, with nogil python of 2022-12-22:

  • running in "notebooks\docs" the sudoku_thread_perf_comparison.py program gives
    • on Python-3.9.10 nogil of 2022-12-22:
      image
    • on a normal python-3.9.10:
      image

So on Windows, with nogil python of 2022-12-22:

  • nogil scales as for linux exactly to the number of cpu (2 normal + 2 hyperthread means in general 2.2 cpus)
  • but the current mono-thread penalty is about 50% versus standard Python, on Windows.
MD5 SHA-1 SHA-256 Binary Size SHA3-256
a8a7c8a81625528aa74e4aaa068daf7f a922945e129e5579c8bdb42636cce021fdbfb5a1 2d281ff5a21834814cfc70a254244c726e082e72d2ca6b523349fe20ff8f9a01 Winpython64-3.9.10.1dotnogil_a1.exe 26 287 370 Bytes 7c82cf1405f8e901fadeacf7ea622319b03ba7596db6333ecf477b2041643631

WinPython 3.9.10.1dotnogil

The following packages are included in WinPython-64bit v3.9.10.1dotnogil _a1.

Details

Tools

Name Version Description

Python packages

Name Version Description
Python 3.9.10 Python programming language with standard library
pip 21.3.1 The PyPA recommended tool for installing Python packages.
setuptools 58.1.0 Easily download, build, install, upgrade, and uninstall Python packages
sqlite_bro 0.12.2 a graphic SQLite Client in 1 Python file
winpython 5.3.20221226 WinPython distribution tools, including WPPM

This discussion was created from the release WinPython 2022-04 b5: python-3.9.10nogil experiment.
You must be logged in to vote
All reactions

Replies: 0 comments

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
💬
General
Labels
None yet
1 participant
@stonebig
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.