python / python/cpython

Tachyon Oracle

Aperta
#153,804 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

stdlib topic-profiling type-feature
Lingua principale
Python
Stelle
77.2k
Fork
35.9k
Metriche di merge delle PR
Metriche PR in attesa

Descrizione

Feature or enhancement

Proposal:

The big question is: how we can ensure that Tachyon is trustworthy?

In particular: the profiler reports some frames, effectively: some distribution of gathered samples. How do we know if they actually match reality? How well do they match reality?

Do we even report the distribution of samples that's similar to how the actual app behaves? Do we report impossible frames?

These are not theoretical questions, as demonstrated by #151426, #151613 or #151022.

Especially in the non-blocking mode we don't have fully atomic reads. If we use too many remote calls, traverse the frames, coro or task-waiters in an inefficient way, or invalidate the cache incorrectly - there's a room for introducing the noise (bias? drift? whatever the name).

Unfortunately, the CI is not the right tool for the job, given that we should avoid flaky tests at all costs and the statistical nature of Tachyon means that we cannot aim for 100% perfection. Even in the blocking mode, we simply cannot guarantee that we block the target ideally.

With the pipeline of changes happening the Tachyon, I think we should introduce some "harness" for this purpose.

This was discussed offline with @pablogsal

Has this already been discussed elsewhere?

No response given

Links to previous discussion of this feature:

No response

Linked PRs
  • gh-153806

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia esaminando il contesto di Tachyon nelle issue #151426, #151613 e #151022, quindi ispeziona il lavoro collegato gh-153806. La proposta non specifica file, test o un punto di ingresso; il lavoro sarebbe completato definendo un harness che valuti se le distribuzioni dei sample e i frame segnalati corrispondono al comportamento osservato dell’applicazione, incluso il rumore del non-blocking-mode.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
devtools, observability, performance
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
15/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.