Amazon Braket 시뮬레이터 비교 - Amazon Braket

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon Braket 시뮬레이터 비교

이 섹션에서는 일부 개념, 제한 사항 및 사용 사례를 설명하여 양자 작업에 가장 적합한 Amazon Braket 시뮬레이터를 선택하는 데 도움이 됩니다.

로컬 시뮬레이터와 온디맨드 시뮬레이터 중에서 선택(SV1, TN1, DM1)

로컬 시뮬레이터의 성능은 시뮬레이터를 실행하는 데 사용되는 Braket 노트북 인스턴스와 같은 로컬 환경을 호스팅하는 하드웨어에 따라 달라집니다. 온디맨드 시뮬레이터는 AWS 클라우드에서 실행되며 일반적인 로컬 환경 이상으로 확장되도록 설계되었습니다. 온디맨드 시뮬레이터는 더 큰 회로에 최적화되어 있지만 양자 작업 또는 양자 작업 배치당 약간의 지연 시간 오버헤드를 추가합니다. 이는 많은 양자 작업이 관련된 경우 절충을 의미할 수 있습니다. 이러한 일반적인 성능 특성을 고려할 때 다음 지침은 노이즈가 있는 시뮬레이션을 포함하여 시뮬레이션을 실행하는 방법을 선택하는 데 도움이 될 수 있습니다.

시뮬레이션의 경우:

  • 18개 미만을 사용하는 경우 qubits로컬 시뮬레이터를 사용합니다.

  • 18~24를 사용하는 경우 qubits에서 워크로드를 기반으로 시뮬레이터를 선택합니다.

  • 24개 이상 고용 시 qubits에서 온디맨드 시뮬레이터를 사용합니다.

노이즈 시뮬레이션의 경우:

  • 9개 미만을 사용하는 경우 qubits로컬 시뮬레이터를 사용합니다.

  • 9~12를 사용하는 경우 qubits에서 워크로드를 기반으로 시뮬레이터를 선택합니다.

  • 12개 이상 고용 시 qubits, 사용 DM1.

상태 벡터 시뮬레이터란 무엇입니까?

SV1 는 범용 상태 벡터 시뮬레이터입니다. 양자 상태의 전체 웨이브 함수를 저장하고 순차적으로 게이트 작업을 상태에 적용합니다. 매우 가능성이 낮은 가능성이라도 모든 가능성을 저장합니다. 는 SV1 양자 작업에 대한 시뮬레이터의 런타임은 회로의 게이트 수에 따라 선형적으로 증가합니다.

밀도 매트릭스 시뮬레이터란 무엇입니까?

DM1 는 노이즈가 있는 양자 회로를 시뮬레이션합니다. 시스템의 전체 밀도 매트릭스를 저장하고 회로의 게이트 및 노이즈 작업을 순차적으로 적용합니다. 최종 밀도 매트릭스에는 회로 실행 후 양자 상태에 대한 전체 정보가 포함되어 있습니다. 런타임은 일반적으로 작업 수에 따라 선형으로 확장되고 qubits.

텐서 네트워크 시뮬레이터란 무엇입니까?

TN1 는 양자 회로를 구조화된 그래프로 인코딩합니다.

  • 그래프의 노드는 양자 게이트 또는 qubits.

  • 그래프의 엣지는 게이트 간의 연결을 나타냅니다.

이 구조로 인해 TN1 는 비교적 크고 복잡한 양자 회로에 대해 시뮬레이션된 솔루션을 찾을 수 있습니다.

TN1 2단계 필요

일반적으로 TN1 는 양자 계산을 시뮬레이션하는 2단계 접근 방식으로 작동합니다.

  • 리허설 단계: 이 단계에서는 TN1 는 원하는 측정치를 얻을 수 있도록 모든 노드를 방문하는 효율적인 방식으로 그래프를 가로지르는 방법을 제공합니다. 다음과 같은 이유로 고객은 이 단계를 볼 수 없습니다.TN1 는 두 단계를 함께 수행합니다. 첫 번째 단계를 완료하고 실제 제약 조건에 따라 두 번째 단계를 자체적으로 수행할지 여부를 결정합니다. 시뮬레이션이 시작된 후에는 해당 결정에 대한 입력이 없습니다.

  • 수축 단계: 이 단계는 클래식 컴퓨터에서 계산의 실행 단계와 유사합니다. 단계는 일련의 매트릭스 곱셈으로 구성됩니다. 이러한 곱셈의 순서는 계산의 어려움에 큰 영향을 미칩니다. 따라서 리허설 단계는 그래프에서 가장 효과적인 계산 경로를 찾기 위해 먼저 수행됩니다. 리허설 단계에서 수축 경로를 찾은 후 TN1 는 회로의 게이트를 함께 연결하여 시뮬레이션 결과를 생성합니다.

TN1 그래프는 맵과 유사합니다.

기본적으로 기본 TN1 도시의 거리를 그래프로 표시합니다. 그리드가 계획된 도시에서는 지도를 사용하여 목적지까지의 경로를 쉽게 찾을 수 있습니다. 계획되지 않은 거리, 중복된 거리 이름 등이 있는 도시에서는 지도를 보면 목적지까지의 경로를 찾기 어려울 수 있습니다.

If TN1 는 리허설 단계를 수행하지 않았습니다. 지도를 먼저 보는 대신 도시의 거리를 돌아다니면서 목적지를 찾는 것이 좋습니다. 지도를 보는 데 더 많은 시간을 할애하는 데 시간을 할애하는 것이 정말 도움이 될 수 있습니다. 마찬가지로 리허설 단계에서는 중요한 정보를 제공합니다.

다음과 같이 말할 수 있습니다.TN1 에는 기본 회로가 통과하는 구조의 특정 “인식도”가 있습니다. 리허설 단계에서 이러한 인식을 얻습니다.

이러한 시뮬레이터 유형 각각에 가장 적합한 문제 유형

SV1 는 주로 특정 수의 qubits 및 게이트. 일반적으로 필요한 시간은 게이트 수에 따라 선형으로 증가하는 반면,shots. SV1 는 일반적으로 보다 빠릅니다.TN1 28세 미만의 회로용 qubits.

SV1 더 높으면 느릴 수 있습니다.qubit 숫자는 모든 가능성을 실제로 시뮬레이션하기 때문에 매우 가능성이 낮은 가능성도 시뮬레이션합니다. 어떤 결과가 가능한지 결정할 수 있는 방법은 없습니다. 따라서 30-qubit 평가,SV1 는 2^30 구성을 계산해야 합니다. 한도 34 qubits 용 Amazon Braket SV1 시뮬레이터는 메모리 및 스토리지 제한으로 인한 실제 제약 조건입니다. 다음과 같이 생각할 수 있습니다. 를 추가할 때마다 qubit 아래로 변경합니다.SV1, 문제는 두 배 더 어려워집니다.

많은 종류의 문제의 경우 TN1 는 실제보다 훨씬 더 큰 회로를 평가할 수 있습니다.SV1 왜냐하면 TN1 는 그래프의 구조를 활용합니다. 기본적으로 솔루션의 진화를 추적하고 효율적인 통과에 기여하는 구성만 유지합니다. 즉, 구성을 저장하여 매트릭스 곱셈 순서를 생성하면 평가 프로세스가 더 간단해집니다.

에 대해 TN1, 의 수 qubits 및 게이트가 중요하지만 그래프의 구조는 훨씬 더 중요합니다. 예: TN1 는 게이트가 단거리(즉, 각각 qubit 는 게이트를 통해서만 가장 가까운 이웃에 연결됩니다.qubits) 및 연결(또는 게이트) 범위가 유사한 회로(그래프)입니다. 의 일반적인 범위 TN1 는 각각 qubit 다른 사람과만 대화 qubits 5인 qubits 멀리. 대부분의 구조가 더 많은 , 작은 또는 더 균일한 행렬로 표현할 수 있는 이와 같은 더 간단한 관계로 분해될 수 있는 경우,TN1 는 평가를 쉽게 수행합니다.

제한 사항 TN1

TN1 보다 느릴 수 있습니다.SV1 그래프의 구조적 복잡성에 따라 달라집니다. 특정 그래프의 경우 TN1 는 리허설 단계 후 시뮬레이션을 종료하고 다음 두 가지 이유 중 FAILED하나로 의 상태를 표시합니다.

  • 경로를 찾을 수 없음 - 그래프가 너무 복잡하면 양호한 횡단 경로를 찾기가 너무 어렵고 시뮬레이터가 계산을 포기합니다.TN1 는 수축을 수행할 수 없습니다. 다음과 비슷한 오류 메시지가 표시될 수 있습니다. No viable contraction path found.

  • 수축 단계가 너무 어려움 - 일부 그래프에서는 TN1 는 통과 경로를 찾을 수 있지만, 평가하는 데 매우 길고 시간이 많이 걸립니다. 이 경우 수축 비용이 너무 높아 비용이 엄청나게 들 수 있습니다.TN1 는 리허설 단계 후에 종료됩니다. 다음과 비슷한 오류 메시지가 표시될 수 있습니다. Predicted runtime based on best contraction path found exceeds TN1 limit.

참고

의 리허설 단계에 대한 요금이 청구됩니다.TN1 수축이 수행되지 않고 FAILED 상태가 표시되는 경우에도 마찬가지입니다.

예상 런타임은 에 따라 달라집니다.shot 개수입니다. 최악의 시나리오에서는 TN1 수축 시간은 에 따라 선형적으로 달라집니다.shot 개수입니다. 회로는 더 적은 수로 계약할 수 있습니다.shots. 예를 들어 100으로 양자 작업을 제출할 수 있습니다.shots,TN1 는 계약할 수 없다고 결정하지만 10개만 사용하여 다시 제출하면 축소가 진행됩니다. 이 경우 100개의 샘플을 얻기 위해 10개의 양자 태스크를 10개씩 제출할 수 있습니다.shots 동일한 회로에 대해 결과를 결합합니다.

가장 좋은 방법은 항상 몇 가지를 사용하여 회로 또는 회로 클래스를 테스트하는 것입니다.shots (예: 10) 회로의 강도를 확인하려면 TN1, 더 많은 수의 를 진행하기 전에 shots.

참고

수축 단계를 형성하는 일련의 곱셈은 작은 NxN 매트릭스로 시작됩니다. 예를 들어 2-qubit 게이트에는 4x4 매트릭스가 필요합니다. 너무 어렵다고 판단되는 수축 중에 필요한 중간 매트릭스는 거대합니다. 이러한 계산을 완료하려면 며칠이 걸립니다. 그렇기 때문에 Amazon Braket은 매우 복잡한 수축을 시도하지 않습니다.

동시성

모든 Braket 시뮬레이터는 여러 회로를 동시에 실행할 수 있는 기능을 제공합니다. 동시성 제한은 시뮬레이터와 리전에 따라 다릅니다. 동시성 한도에 대한 자세한 내용은 할당량 페이지를 참조하세요.