레퍼런스

run() 옵션

QXel은 표준 Braket run() 메서드에 몇 가지 키워드 인자를 추가합니다. 모두 선택 사항이며, 기본값은 올바른 CPU 실행을 제공합니다. 회로가 너무 느리거나 메모리에 담기에 너무 커지면 이 값들을 조정하세요.

compute_type

어떤 게이트 커널을 실행할지 선택합니다. 먼저 기본값 'cpu'로 결과를 얻은 뒤, 회로가 올바른지 확인하고 나서 GPU 가속을 위해 'cuda'로 전환하세요.

compute_type: 'cpu' (기본값) | 'cuda' | 'cuquantum' • 'cpu' 이식성 있는 CPU 커널. GPU가 필요 없습니다 • 'cuda' 직접 튜닝한 CUDA 커널. NVIDIA GPU가 필요합니다 • 'cuquantum' NVIDIA cuQuantum 라이브러리. NVIDIA GPU가 필요합니다

offload_type 및 path

상태 벡터가 어디에 저장될지를 제어합니다. 상태 벡터가 더 이상 GPU/CPU 메모리에 담기지 않을 때만 사용하세요. 'storage'는 path가 필요하며, 이는 대역폭을 위해 함께 스트라이핑되는 하나 이상의 장치 목록입니다.

offload_type: 'none' (기본값) | 'cpu' | 'storage' • 'none' 상태 벡터를 GPU/CPU 메모리에 유지 • 'cpu' CPU DRAM으로 오프로드 • 'storage' NVMe/HDD로 오프로드. path=[...] 필요 path: List[str] 'storage' 오프로딩에 사용할 스토리지 장치

max_fusion

융합된(fused) 게이트가 작용할 수 있는 최대 큐비트 수를 설정합니다. 인접한 게이트를 융합하면 더 적고 더 큰 커널 실행으로 메모리 트래픽이 줄어듭니다. 기본값 1은 안전하며, 깊은 회로에서는 추가 설정 시간을 빠른 실행으로 맞바꾸기 위해 값을 올리세요(보통 2~4).

max_fusion: int (기본값 1) 값이 클수록 더 공격적인 게이트 융합

완전히 튜닝한 실행

CUDA 커널, 두 NVMe 드라이브에 스트라이핑한 상태 벡터, 그리고 2-큐비트 게이트 융합:

python
result = qxel.run(
    circuit,
    shots=4096,
    compute_type="cuda",
    offload_type="storage",
    max_fusion=2,
    path=["/dev/nvme0n1", "/dev/nvme1n1"],
).result()