python / pyperformance

Python Performance Benchmark Suite
http://pyperformance.readthedocs.io/
MIT License
860 stars 174 forks source link

speed.python.org not run since May 2 #98

Closed sweeneyde closed 3 years ago

sweeneyde commented 3 years ago

I don't known if this is an issue here, but it may have something to do with the default branch of CPython's got repo being renamed to "main". There seem to be some remaining references to "master" here.

pablogsal commented 3 years ago

Indeed! I changed all references to master to point to main

pablogsal commented 3 years ago

Please, reopen if this is not fixed in 1 day or so when the cron job tries to build new commits

sweeneyde commented 3 years ago

It looks like there still aren't any new benchmarks at https://speed.python.org/

pablogsal commented 3 years ago

Apparently the genshi benchmark is failing:

2021-05-10 00:24:23,424: [10/47] genshi...
2021-05-10 00:24:23,424: INFO:root:Running `/home/pablogsal/bench_tmpdir_cron/venv/bin/python -u /home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperformance/benchmarks/bm_genshi.py --verbose --output /tmp/tm
pvdba6c3k`
2021-05-10 00:24:23,595: Traceback (most recent call last):
2021-05-10 00:24:23,595:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperformance/benchmarks/bm_genshi.py", line 68, in <module>
2021-05-10 00:24:23,595:     runner.bench_time_func(name, bench_genshi, tmpl_cls, tmpl_str)
2021-05-10 00:24:23,595:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_runner.py", line 458, in bench_time_func
2021-05-10 00:24:23,595:     return self._main(task)
2021-05-10 00:24:23,595:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_runner.py", line 423, in _main
2021-05-10 00:24:23,596:     bench = self._worker(task)
2021-05-10 00:24:23,596:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_runner.py", line 397, in _worker
2021-05-10 00:24:23,596:     run = task.create_run()
2021-05-10 00:24:23,596:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_worker.py", line 293, in create_run
2021-05-10 00:24:23,596:     self.compute()
2021-05-10 00:24:23,596:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_worker.py", line 331, in compute
2021-05-10 00:24:23,596:     WorkerTask.compute(self)
2021-05-10 00:24:23,596:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_worker.py", line 280, in compute
2021-05-10 00:24:23,597:     self.calibrate_loops()
2021-05-10 00:24:23,597:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_worker.py", line 243, in calibrate_loops
2021-05-10 00:24:23,597:     self._compute_values(self.warmups, nvalue,
2021-05-10 00:24:23,597:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_worker.py", line 76, in _compute_values
2021-05-10 00:24:23,597:     raw_value = self.task_func(self, self.loops)
2021-05-10 00:24:23,597:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperf/_runner.py", line 454, in task_func
2021-05-10 00:24:23,597:     return time_func(loops, *args)
2021-05-10 00:24:23,597:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/pyperformance/benchmarks/bm_genshi.py", line 29, in bench_genshi
2021-05-10 00:24:23,598:     tmpl = tmpl_cls(tmpl_str)
2021-05-10 00:24:23,598:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/template/text.py", line 137, in __init__
2021-05-10 00:24:23,598:     Template.__init__(self, source, filepath=filepath, filename=filename,
2021-05-10 00:24:23,598:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/template/base.py", line 418, in __init__
2021-05-10 00:24:23,598:     self._stream = self._parse(source, encoding)
2021-05-10 00:24:23,598:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/template/text.py", line 181, in _parse
2021-05-10 00:24:23,598:     for kind, data, pos in interpolate(text, self.filepath, lineno,
2021-05-10 00:24:23,598:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/template/interpolation.py", line 77, in interpolate
2021-05-10 00:24:23,599:     expr = Expression(chunk.strip(), pos[0], pos[1],
2021-05-10 00:24:23,599:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/template/eval.py", line 93, in __init__
2021-05-10 00:24:23,599:     self.code = _compile(node, self.source, mode=self.mode,
2021-05-10 00:24:23,599:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/template/eval.py", line 470, in _compile
2021-05-10 00:24:23,599:     return build_code_chunk(code, filename, name, lineno)
2021-05-10 00:24:23,600:   File "/home/pablogsal/bench_tmpdir_cron/venv/lib/python3.11/site-packages/genshi/compat.py", line 107, in build_code_chunk
2021-05-10 00:24:23,600:     return CodeType(*params)
2021-05-10 00:24:23,600: TypeError: code() argument 15 must be bytes, not tuple
pablogsal commented 3 years ago

Very likely due to https://bugs.python.org/issue40222

pablogsal commented 3 years ago

@vstinner any way to easily skip the benchmark if it fails?

vstinner commented 3 years ago

@vstinner any way to easily skip the benchmark if it fails?

Comment it in DEFAULT_GROUP of pyperformance/benchmarks/__init__.py.

For example, hg_startup is currently disabled.

In setup.py manual release procedure, I have this reminder:

# FIXME:
#
# - REENABLE HG_STARTUP BENCHMARK.
vstinner commented 3 years ago

We could also allow to upload results even if some benchmarks failed, but I like to see hard errors and only ignore them explicitly once I investigated them.

pablogsal commented 3 years ago

@vstinner I cannot do a release since I don't have privileges in Pypi. Could you give me privileges so I can release 1.0.2?

(Everything else is prepared)

vstinner commented 3 years ago

I made @pablogsal an owner of the PyPI project and he released https://pypi.org/project/pyperformance/ ;-)

I don't close the issue, right now https://speed.python.org/ latest build was still May 2.

pablogsal commented 3 years ago

Ok, it works now:

https://speed.python.org/changes/?rev=23ae2c3bacc167f7bbfea1846bbbc9dde63a1bfd&exe=12&env=speed-python

But i had to cheat and tell the speed center that we have still a master branch. This is because there is no way I can see of configuring the default branch of the project. Maybe @vstinner knows

vstinner commented 3 years ago

speed.python.org website runs codespeed. I don't recall if we run a patched fork or unpatched https://github.com/tobami/codespeed/