rigetti / qcs-sdk-rust

Rust SDK for Rigetti Quantum Cloud Services (QCS)
https://docs.rs/qcs
12 stars 5 forks source link

Support transforming execution results into a `ndarray` #488

Open MarquessV opened 1 month ago

MarquessV commented 1 month ago

When retrieving results, a ControllerJobExecutionResults is returned. This type is generated from our protobuf schema, which doesn't offer an ergonomic API for end users who want to do things like linear algebra on the data. For platforms like Python, this data wrangling can be a drag on performance as well.

To make this easier, the SDK should offer a method for transforming the protobuf derived struct into an ndarray. This format would pack all readout values into a single ndarray, and return a mapping of memory regions into views of that ndarray. The ordering of memory regions should be deterministic.