-
Notifications
You must be signed in to change notification settings - Fork 17
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
Remove qualang-tools dependency and QM simulation #1131
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1131 +/- ##
==========================================
- Coverage 51.34% 50.74% -0.60%
==========================================
Files 63 63
Lines 2984 3019 +35
==========================================
Hits 1532 1532
- Misses 1452 1487 +35
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
cf2681a
to
141e92f
Compare
I tested several routines on qw11q using this branch and all seems fine, so I will mark as ready for review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't read the whole of _qua_for_loop
, but I guess you mostly copied it from qualang_tools
.
Maybe, since we should (at some point), since from now on we'll maintain that code.
But for the time being, I'm fine with the idea, and we can merge this.
Thanks!
) | ||
|
||
# Logarithmic increment | ||
if np.isclose(np.std(array[1:] / array[:-1]), 0, atol=1e-3): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Funny condition...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is exact copy from qualang_tools
.
Co-authored-by: Alessandro Candido <[email protected]>
Thanks for the review.
Indeed. In terms of behavior, the only change is that the original function in some cases raises an error prompting the user to use Generally |
@stavros11 well, this is something we should actually investigate deeper (not necessarily immediately). While for simulation there is a clear answer regarding performances (i.e. the shortest the better), that's not the same for hardware (or in general real-time execution). In any case, let's keep it in mind, and postpone the discussion. |
The price to pay is that we need to grab the
qualang_tools
functions we are using and put them in our code but given that they are quite simple, I find it preferable over having many dependencies (dash, Flask, etc.) which do not make much sense for qibolab as a driver and not reporting library.I also decided to drop the simulation capability from the QM driver, as it was quite useless as it was and to avoid porting one more
qualang_tools
function. Since we need to write custom code to process the simulation output anyway, it is usually easier to just get the QUA script we are interested in simulating and doing the simulation externally, without qibolab.I still need to confirm these changes don't break anything.