Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Design] Improve proto wire size for serialized circuits

Aperta
#598 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cpp, python
Ambito
performance

Direzione di ricerca

Inizia esaminando le modifiche alla serializzazione di #590, quindi analizza op_serializer.py, program.proto e il relativo codice di serializzazione in Python e C++. Esegui il profiling della serializzazione e deserializzazione per piccole simulazioni, definisci il design rivisto del proto e i relativi obiettivi per le dimensioni wire e i tempi, quindi implementa le modifiche in entrambi i linguaggi.

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

Descrizione

area/circuits area/performance kind/feature-request

Thanks to #590 we can now roll our own proto structures + serialization code. We should do some work to try and make our program.proto wire size and serialization code (python and C++) as fast as possible. Anecdotally I can say that in smaller simulation workloads ( < 10 qubits ) The lions share of the time in C++ is actually spent deserializing, this shouldn't be the case.

Some good steps for this project would be to:

  1. Slim down the code in op_serializer.py and other modules as much as possible so that we have the bare minimum needed for our functionality. i.e. we don't allow boolean types in our serialization.

  2. Draft a new proto design spec for program.proto with an eye for fast serialization time and small wire size.

  3. Gradually implement that new spec which would require steady changes in both python and C++ code.

Lingua principale
Python
Stelle
2.2k
Fork
665
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

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.

Altre issue di tensorflow/quantum

Tutte le issue di tensorflow/quantum

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.