Allow calculating geometric mean of groups of benchmarks based on tags
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 32/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- python
- Bereich
- performance, tooling
Rechercherichtung
Beginne damit nachzuverfolgen, wie Benchmark-Tags aus pyperformance's pyproject.yaml in Benchmark-Ergebnissen und Metadaten dargestellt werden, und untersuche anschließend pyperf's compare_to-Ablauf. Die Aufgabe ist abgeschlossen, wenn Tags in den Metadaten offengelegt werden und geometrische Mittelwerte sowohl für jede Tag-Teilmenge als auch für alle Benchmarks berechnet werden, wobei das Verhalten zur Abwärtskompatibilität geklärt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
[Moved from https://github.com/faster-cpython/ideas/discussions/395]
It's becoming obvious that:
- The pyperformance suite needs more benchmarks that are more similar to real-world workloads, and we should lean into optimizing for these and using these to report progress.
- Microbenchmarks of a particular feature are also useful and belong in the benchmark suite, but we shouldn't over-optimize for them or use them as a (misleading) indicator of overall progress.
It seems that one way to address this would be to lean into "tags" more in the pyperformance/pyperf ecosystem. pyperformance already allows for tags in each benchmark's pyproject.yaml.
I propose we:
- Output the tags for each benchmark in the benchmark results in the
metadatadictionary. pyperfcompare_towould then calculate the geometric mean for each subset of benchmarks for each tag found in the results, as well as "all" benchmarks (existing behavior). This could be behind a flag if backward compatibility matters.
Alternatives:
We could instead use the nested benchmark heirarchy, rather than tags. Personally, I think tags is easier to understand and more flexible (a benchmark could be associated with multiple tags).
- Vorherrschende Sprache
- Python
- Sterne
- 1k
- Forks
- 203
- Ø Merge
- 1 Std. 20 Min.
- Gemergte PRs (30 T.)
- 2
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus python/pyperformance
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
python/pyperformance#346 · 3 Kommentare ·
-
python/pyperformance#474 · 4 Reaktionen · 1 zugewiesene Person ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 25/100
python/pyperformance#473 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
python/pyperformance#464 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
python/pyperformance#460 · 2 Kommentare · 1 Reaktion ·
Alle Issues in python/pyperformance
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
anthropics/skills#1811 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
speaches-ai/speaches#678 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
datalayer/mcp-compose#42 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
conda-forge/spacy-feedstock#177 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
UKGovernmentBEIS/inspect_evals#2523 ·