Przejdź do głównej treści

Wprowadzenie do narzędzi debugowania

Możesz testować swoje programy kwantowe, uruchamiając je na symulowanych urządzeniach i analizując ich działanie w warunkach realistycznych modeli szumów urządzeń. Dzięki temu możesz je debugować przed wysłaniem do jednostki przetwarzania kwantowego (QPU).

Symulatory kwantowe pomagają rozwijać i testować programy przed ich dopracowaniem i wysłaniem na sprzęt kwantowy. Lokalne symulatory realizują to z dobrą wydajnością i efektywnością.

Ponieważ koszt klasycznej symulacji obwodów kwantowych rośnie wykładniczo wraz z liczbą qubitów, obwody liczące więcej niż około 50 qubitów zazwyczaj nie mogą być uruchamiane na symulatorach. W przypadku takich obwodów możesz:

  • Testować mniejsze wersje obwodów, które można symulować klasycznie.
  • Modyfikować obwody tak, aby stały się klasycznie symulowalne, choć mniej dokładne.

Obwody stabilizatorowe, znane również jako obwody Clifforda, są przydatnym narzędziem do realizacji tego drugiego celu. Należą one do ograniczonej klasy obwodów kwantowych, które można efektywnie symulować klasycznie. Wyspecjalizowane symulatory potrafią z łatwością symulować obwody stabilizatorowe złożone z tysięcy qubitów. Więcej informacji znajdziesz w artykule Efficient simulation of stabilizer circuits with Qiskit Aer primitives.

Do testowania i debugowania programów kwantowych dostępne są następujące narzędzia dla ogólnych obwodów kwantowych:

Wymagania sprzętowe

Na zapotrzebowanie pamięci przy symulacji kwantowej wpływa kilka czynników, dlatego nie ma ścisłych wymagań sprzętowych — istnieją jednak pewne wskazówki, którymi możesz się kierować.

  • Jedynym wymaganiem do uruchomienia Qiskit jest działające środowisko Python. Szczegóły znajdziesz w sekcji Operating system support.
  • Ponieważ wymagania dotyczące symulowania obwodów kwantowych rosną wykładniczo wraz z liczbą qubitów, dostępny sprzęt ogranicza liczbę qubitów, które można symulować. Na przykład system z 4 GB RAM może symulować około 27 qubitów.
  • Większa lub mniejsza ilość dostępnej pamięci nie wpływa na dokładność wyników (przy założeniu, że wyniki są zwracane), choć większa ilość pamięci może przyspieszyć uzyskiwanie wyników lub pozwolić na symulację większej liczby qubitów.
  • Aby jak najlepiej wykorzystać swój sprzęt, korzystaj z lokalnej symulacji obwodów stabilizatorowych (Clifforda), gdy tylko jest to możliwe. Przykłady znajdziesz w artykułach Clifford simulation with Qiskit Runtime local testing mode lub Efficient simulation of stabilizer circuits with Qiskit Aer primitives.
  • Możesz zwiększyć swoją moc obliczeniową, postępując zgodnie z instrukcjami uruchamiania z wieloma GPU, węzłami lub oboma.