-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor after update to qibolab 0.2 #1095
Comments
Instead of this, I would also consider the more ambitious option of not executing anything at all in
I.e. do not make calls in to E.g., if you allow just a sequence of calls (which will happen sequentially in any case, so I'd recommend it, even following the discussion in #1089), you may just return from
Fundamentally, it means to define acquisition with the following type: acquisition: Callable[[_ParametersT], Union[Sequence[PulseInput], Sequence[CircuitInput]]] or even to use two different attributes (e.g. Once that is done, the results should just be collected in a single array, with the usual dimension +1, and the additional one being the sequence of experiments itself (if multiple experiments are needed).
I agree about this, and, in my opinion, it would fit nicely in the above plan. |
Btw, I believe we may do better, and possibly expose direct access to the compiler. Rather than forcing Qibocal to pass through the same mechanism intended for individual runs (i.e. the However, for individual protocols (like the RB) the feature is already there, i.e. |
Thanks for the feedback @alecandido.
I see your point. I mentioned to include the
Regarding this I know that |
Agreed. But it is more about how the acquisition is realized, since the result layout is quite standard because of Qibolab.
EDIT: ok, the one above was the wrong proposal - it will make it harder to use simulation; no, we should just put the |
Now that we have recently completed the update to Qibolab 0.2 in #990. We can proceed with a refactor aimed at simplifying the code and reducing code duplication. Here is a first tentative list of features that we would like to implement:
register_qubit
and find an easier way to process the data retrieved from qibolab. A possible solution suggested by @hay-k consists in mapping each call toplatform.execute()
to a dedicated attribute inside theData
class which could be later stored as an array. Any post-processing on the data should be done by external function (not class methods), in order to easily test them. For storing theData
class itself we could try to come up with a mechanism to store together all these different arrays or for time being, given that we are not dealing with huge data just store each one in a separated file.Acquisition
object (target one qubit or pair)Given two
Acquisition
objects Qibocal could try to perform a parallel execution and throw an error if it is not possible. The user should be able to specify if the execution should be in parallel for all targets.CalibrationPlatform
in Adding calibration parameters to qibocal #1021.register_qubit
)The text was updated successfully, but these errors were encountered: