Skip to content

[Design] Improve proto wire size for serialized circuits #598

Open
@MichaelBroughton

Description

@MichaelBroughton

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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions