시뮬레이터 비교 - 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 범용 상태 벡터 시뮬레이터입니다. 양자 상태의 전파 함수를 저장하고 상태에 게이트 연산을 순차적으로 적용합니다. 가능성이 극히 낮은 가능성을 포함한 모든 가능성을 저장합니다. The SV1 양자 작업을 위한 시뮬레이터의 실행 시간은 회로의 게이트 수에 따라 선형적으로 증가합니다.

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

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

텐서 네트워크 시뮬레이터란 무엇인가요?

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

  • 그래프의 노드는 양자 게이트로 구성되거나 qubits.

  • 그래프의 가장자리는 게이트 간의 연결을 나타냅니다.

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

TN1 두 단계가 필요합니다.

일반적으로 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) 회로가 얼마나 단단한지 알아보려면 (예: 10) TN1, 더 높은 개수로 진행하기 전에 shots.

참고

수축 단계를 형성하는 일련의 곱셈은 작은 NxN 행렬에서 시작됩니다. 예를 들어, a 2-qubit 게이트에는 4x4 매트릭스가 필요합니다. 수축 과정에서 필요한 중간 행렬이 너무 어렵다고 판단되면 크기가 매우 큽니다. 이러한 계산을 완료하려면 며칠이 걸릴 것입니다. 그 때문이죠.Amazon 브라켓은 매우 복잡한 수축을 시도하지 않습니다.

동시성

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