Toolkit to run Python benchmarks

Is psf/pyperf beginner-friendly?

The maintainers of psf/pyperf usually reply to a pull request within 1 day. No beginner-friendly issue is open right now; the list below has the other issues we hold for it.

Stars
967
Forks
112
Open beginner issues
0
Indexed issues
35
Avg merge
5d 8h
Merged PRs (30d)
9
Dominant language
Python
License
MIT
Last GitHub push
Nov 8, 2026
Latest indexed
Sep 19, 2026
Contributing guide
No contributing guide
Code of conduct
Code of conduct
Beginner labels
No beginner labels indexed

How to contribute to psf/pyperf

  1. There is no contributing guide, so start from the README and a few recently merged pull requests to see how changes are proposed.
  2. Read its code of conduct: it covers issues and pull requests as well as chat.
  3. Your contributions will be published under the project's MIT license.
  4. Follow the repository to hear when a new beginner-friendly issue opens, or look through the other issues below.

Issues somebody may already be working on are listed last. List everything by date

  • No check for CPU quota or thermal throttling: a throttled run looks statistically stable
    Open

    Difficulty 5/5 Over a week Newbie friendliness 35/100

    psf/pyperf#274 · 5 comments ·

    Maintainers usually reply within 1 day

  • `pyperf system {tune,show}` on macOS
    Open

    Difficulty 5/5 Over a week Newbie friendliness 32/100

    psf/pyperf#243 · 2 comments ·

    Maintainers usually reply within 1 day

  • Windows bench_command memory tracking fails
    Open

    Difficulty 5/5 Over a week Newbie friendliness 20/100

    psf/pyperf#216 · 3 comments ·

    Maintainers usually reply within 1 day

  • Add Heirarchical Performance Testing (HPT) technique to `compare_to`?
    Open

    Difficulty 5/5 Over a week Newbie friendliness 30/100

    psf/pyperf#168 · 3 comments · 3 reactions ·

    Maintainers usually reply within 1 day

  • bench_func returning None for all but the first benchmark
    May be free again @amritamishra01 claimed this 360 days ago, and no pull request is open. Open

    Difficulty 3/5 1-2 days Newbie friendliness 38/100

    psf/pyperf#166 · 5 comments · 3 reactions ·

    Maintainers usually reply within 1 day

  • Programmatically define output file for bench_func
    May be free again @Shreyas310805 claimed this 290 days ago, and no pull request is open. Open

    Difficulty 2/5 1-3 hours Newbie friendliness 35/100

    psf/pyperf#165 · 2 comments ·

    Maintainers usually reply within 1 day

  • Display additional information through table.
    May be free again @amritamishra01 claimed this 360 days ago, and no pull request is open. Open

    Difficulty 4/5 3-5 days Newbie friendliness 38/100

    psf/pyperf#162 · 2 comments ·

    Maintainers usually reply within 1 day

  • Allow for warmup in PEP659
    Open

    Difficulty 3/5 1-2 days Newbie friendliness 45/100

    psf/pyperf#144 · 7 comments ·

    Maintainers usually reply within 1 day

  • Waiting for runner's bench_func and bench_command functions to complete instead of receiving outputs individually?
    Open

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    psf/pyperf#141 · 5 comments ·

    Maintainers usually reply within 1 day

  • Having trouble while using pypy: pyperf is much slower than timeit
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    psf/pyperf#137 · 4 comments ·

    Maintainers usually reply within 1 day

  • Increase default running time per process?
    Open

    Difficulty 5/5 Over a week Newbie friendliness 20/100

    psf/pyperf#136 · 7 comments ·

    Maintainers usually reply within 1 day

  • Output geometric mean to 0.1% precision
    May be free again A pull request for this issue was closed without being merged. Open

    Difficulty 3/5 1-2 days Newbie friendliness 42/100

    psf/pyperf#123 · 3 comments ·

    Maintainers usually reply within 1 day

  • Generate perf stats
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    psf/pyperf#122 ·

    Maintainers usually reply within 1 day

  • Boost tuning for AMD processors
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 42/100

    psf/pyperf#120 · 3 comments · 1 reaction ·

    Maintainers usually reply within 1 day

  • Having trouble tuning in WSL
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    psf/pyperf#109 · 1 comment ·

    Maintainers usually reply within 1 day

  • Instruction counts instead of wall clock time?
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#107 · 4 comments ·

    Maintainers usually reply within 1 day

  • Allow setting updated/new env var *values* on Runner.
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#100 · 2 comments · 1 reaction ·

    Maintainers usually reply within 1 day

  • CI failed on Windows
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    psf/pyperf#97 · 3 comments ·

    Maintainers usually reply within 1 day

  • Reconsidering min()?
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#75 · 8 comments ·

    Maintainers usually reply within 1 day

  • pyperf does not work in REPL
    Open

    Difficulty 3/5 1-2 days Newbie friendliness 45/100

    psf/pyperf#74 · 3 comments ·

    Maintainers usually reply within 1 day

  • Move venv setup from pyperformance?
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#72 · 1 comment ·

    Maintainers usually reply within 1 day

  • Logging instead of prints?
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#71 ·

    Maintainers usually reply within 1 day

  • psutil is missing in setup dependencies
    Open

    Difficulty 2/5 1-3 hours Newbie friendliness 48/100

    psf/pyperf#70 · 4 comments · 1 reaction ·

    Maintainers usually reply within 1 day

  • CPU time option
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#69 · 2 comments · 1 reaction ·

    Maintainers usually reply within 1 day

  • Why is spawning a new process per benchmark more accurate?
    Open

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    psf/pyperf#66 ·

    Maintainers usually reply within 1 day

  • pyperf is incompatible with click
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    psf/pyperf#65 · 5 comments ·

    Maintainers usually reply within 1 day

  • How to specify setup code with Runner.bench_func() ?
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 45/100

    psf/pyperf#38 · 7 comments · 4 reactions ·

    Maintainers usually reply within 1 day

  • Runner.bench_func can't run different module's function?
    Open

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    psf/pyperf#29 · 7 comments ·

    Maintainers usually reply within 1 day

  • Output the probability of being faster (slower) when compare results
    Open

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    psf/pyperf#22 · 5 comments ·

    Maintainers usually reply within 1 day

  • Kernel density estimation instead of histogram
    Open

    Difficulty 5/5 Over a week Newbie friendliness 30/100

    psf/pyperf#13 · 2 comments ·

    Maintainers usually reply within 1 day

  • Improve Type System for `pyperf`
    Possibly taken @DebanKsahu claimed this 69 days ago. Open

    Difficulty 4/5 3-5 days Newbie friendliness 45/100

    psf/pyperf#255 · 2 comments ·

    Maintainers usually reply within 1 day

  • Extend hook's teardown metadata with warmup/calibration flags
    Possibly taken @maurycy claimed this 170 days ago. Open

    Difficulty 4/5 3-5 days Newbie friendliness 48/100

    psf/pyperf#239 · 12 comments ·

    Maintainers usually reply within 1 day

  • 2.6.2: sphinx warnings `reference target not found`
    Possibly taken @amritamishra01 claimed this 355 days ago. Open

    Difficulty 3/5 1-2 days Newbie friendliness 42/100

    psf/pyperf#172 · 2 comments ·

    Maintainers usually reply within 1 day

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.