Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Broken pyperformance benchmarks #311

Closed
2 tasks done
brandtbucher opened this issue Mar 2, 2022 · 17 comments
Closed
2 tasks done

Broken pyperformance benchmarks #311

brandtbucher opened this issue Mar 2, 2022 · 17 comments
Assignees

Comments

@brandtbucher
Copy link
Member

brandtbucher commented Mar 2, 2022

Broken:

  • sqlalchemy_declarative
  • sqlalchemy_imperative

Cause: https://bugs.python.org/issue46836

Fixes:

@brandtbucher brandtbucher self-assigned this Mar 2, 2022
@vstinner
Copy link

vstinner commented Mar 2, 2022

genshi

What is the issue with genshi?

@brandtbucher
Copy link
Member Author

What is the issue with genshi?

Sorry, that was an unrelated issue that has since been fixed. Removed it from the list!

@gvanrossum
Copy link
Collaborator

See also #333 for Windows breakages.

@gvanrossum
Copy link
Collaborator

Seems a new Genshi issue has popped up, see #333 (comment) and ff.

@gvanrossum
Copy link
Collaborator

Well, it wasn't a new genshi issue -- it's fixed in master but there's no release yet.

@vstinner
Copy link

My greenlet PR is merged python-greenlet/greenlet#294 but there is no release yet.

Problem: it's unclear to me if gevent uses or can use the newer greenlet. It seems like greenlet got a new "v2" design which better hides its internals and CPython internals.

@vstinner
Copy link

Currently, on PyPI, there are only greenlet 1.x releases. The master branch of greenlet is not released yet. Maybe we change should be re-done in a greenlet "stable" branch, I didn't check if it exists.

@brandtbucher
Copy link
Member Author

Currently, on PyPI, there are only greenlet 1.x releases. The master branch of greenlet is not released yet. Maybe we change should be re-done in a greenlet "stable" branch, I didn't check if it exists.

2.0.0a2 was released yesterday. I believe it includes your changes?

If so, we can just use that. pyperformance already using 2.0.0a1, currently.

@brandtbucher
Copy link
Member Author

The annoying thing is that the benchmarks don't actually use greenlet (it's just a required dependency of SQLAlchemy). For example, just using an old cached 3.11 wheel works fine. 🤦🏼‍♂️

@vstinner, do you want to bump the version in pyperformance, or should I?

@gvanrossum
Copy link
Collaborator

Maybe involve @ericsnowcurrently too? He recently (this week) did a bunch of work, but I’m not sure he is done. The psutil thing isn’t fixed on Windows, and —python is broken.

@vstinner
Copy link

I no longer maintain pyperformance.

@gvanrossum
Copy link
Collaborator

Then who does?

@vstinner
Copy link

Then who does?

The latest release was done by @pablogsal: python/pyperformance@034f58b

@gvanrossum
Copy link
Collaborator

Interestingly, for me (on Windows) moving to greenlet==2.0.0a2 (from ...a1) the sqlalchemy benchmarks run fine. So perhaps this is done? (Then what is python-greenlet/greenlet#294 about?)

@brandtbucher
Copy link
Member Author

Interestingly, for me (on Windows) moving to greenlet==2.0.0a2 (from ...a1) the sqlalchemy benchmarks run fine. So perhaps this is done? (Then what is python-greenlet/greenlet#294 about?)

python-greenlet/greenlet#294 was the fix shipped in 2.0.0a2.

@gvanrossum
Copy link
Collaborator

gvanrossum commented Mar 29, 2022

Now I'm confused. Your open checkbox links to gevent/gevent#1872 which is still open. What is that then?

Anyway, I confirmed that on macOS all BMs work (UPDATE: Also with Python 3.10 and 3.9). So maybe you can close this, or check that box?

@brandtbucher
Copy link
Member Author

Now I'm confused. Your open checkbox links to gevent/gevent#1872 which is still open. What is that then?

Ah, I think that might be actually breaking the Pyston macrobenchmarks, not pyperformance. I might have added it here since the cause was the same as the others, and there was an open PR to fix it. I can track it elsewhere.

Closing, since I've confirmed locally (Linux) that the main branch of pyperformance is now working. We still need a new release, though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

3 participants