PeakUsageGreedyQubitManager Clase
Un administrador de cúbits que realiza el seguimiento de los cúbits de proceso y memoria por separado.
Consta de dos administradores de cúbits independientes para cada tipo de cúbit. Cada administrador usa una estrategia de asignación expansa de cirq.GreedyQubitManager.
Los cúbits de un tipo, después de liberarse, no se pueden reutilizar como cúbits de tipo diferente. Por lo tanto, el recuento de cúbits máximos es igual a la suma de los recuentos de cúbits máximos para cada tipo.
Inicialice peakUsageGreedyQubitManager.
Constructor
PeakUsageGreedyQubitManager(prefix: str, *, size: int, maximize_reuse: bool)
Parámetros
| Nombre | Description |
|---|---|
|
prefix
Requerido
|
Asignar un prefijo para cúbits asignados. |
|
size
Requerido
|
Tamaño inicial del grupo pasado a |
|
maximize_reuse
Requerido
|
Marca para controlar la estrategia de reutilización de cúbits. Si |
Parámetros de palabra clave únicamente
| Nombre | Description |
|---|---|
|
size
Requerido
|
|
|
maximize_reuse
Requerido
|
|
Métodos
| compute_qubit_count |
Devuelve el número máximo de cúbits COMPUTE de uso simultáneo. |
| current_in_use |
Número de cúbits actualmente en uso. |
| memory_qubit_count |
Devuelve el número máximo de cúbits MEMORY simultáneamente en uso. |
| qalloc |
Asigne |
| qborrow |
Préstamo de cúbits (no compatible). |
| qfree |
Libere los cúbits especificados. |
| qubit_count |
Devuelve el número máximo de cúbits de todos los tipos. Es igual a la suma de los recuentos máximos de cada tipo, ya que los cúbits de un tipo no se pueden reutilizar como cúbits de un tipo diferente. |
compute_qubit_count
Devuelve el número máximo de cúbits COMPUTE de uso simultáneo.
compute_qubit_count() -> int
current_in_use
Número de cúbits actualmente en uso.
current_in_use() -> int
memory_qubit_count
Devuelve el número máximo de cúbits MEMORY simultáneamente en uso.
memory_qubit_count() -> int
qalloc
Asigne n cúbits y actualice los contadores de uso.
qalloc(n: int, dim: int, qubit_type: QubitType = QubitType.COMPUTE) -> list[cirq.ops.raw_types.Qid]
Parámetros
| Nombre | Description |
|---|---|
|
n
Requerido
|
Número de cúbits que se van a asignar. |
|
dim
Requerido
|
Dimensión de cada cúbit. Ejemplo: 2 para cúbits. |
|
qubit_type
|
Tipo de cúbits (COMPUTE o MEMORY). Valor predeterminado: QubitType.COMPUTE
|
Devoluciones
| Tipo | Description |
|---|---|
|
Lista de cúbits asignados. |
qborrow
Préstamo de cúbits (no compatible).
qborrow(n: int, dim: int = 2) -> list[cirq.ops.raw_types.Qid]
Parámetros
| Nombre | Description |
|---|---|
|
n
Requerido
|
|
|
dim
|
Valor predeterminado: 2
|
qfree
Libere los cúbits especificados.
qfree(qubits: Iterable[Qid]) -> None
Parámetros
| Nombre | Description |
|---|---|
|
qubits
Requerido
|
|
qubit_count
Devuelve el número máximo de cúbits de todos los tipos.
Es igual a la suma de los recuentos máximos de cada tipo, ya que los cúbits de un tipo no se pueden reutilizar como cúbits de un tipo diferente.
qubit_count() -> int