-
Notifications
You must be signed in to change notification settings - Fork 86
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Error budget pruning strategy in resource estimator core (#1951)
Resource estimation takes as input an error budget. This is a triplet of budget contribution to logical errors, rotation synthesis errors, and magic state distillation errors. The user can either specify each of these three values separately or provide a total value that is uniformly distributed among the three parts. So far, RE does not modify these provided values. This PR implements a pruning strategy for the error budget that will decrease the budget for logical errors and rotation synthesis errors (without affecting the estimation), while increasing the budget for magic state distillation errors in order to reduce the resources required for factories. For logical errors, we can reduce the budget by finding the largest value that still leads to the same code parameter (e.g., code distance). Similarly, for synthesis errors, we can reduce the budget by finding the largest value that still leads to the same number of magic states. The latter is layout dependent, and therefore a new function is added to the `Overhead` trait. The function has an empty default implementation, and therefore does not break existing layout implementations. The strategy needs to be explicitly set for the resource estimation and only works for a resource estimation without any other constraints (e.g., maximum number of qubits or duration), and does not work for frontier based estimation. There is no job parameter yet to enable the behavior.
- Loading branch information
Showing
11 changed files
with
308 additions
and
156 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.