回答:
もちろん!あなたが持っている想像検索オラクルのコピーあなたが使用できることを。通常、アクション
初期状態から開始。これには時間がかかります。(私はを使用して単位行列を示しています。)
を使用
して、これをによってインデックスが付けられた並列コピーで置き換えることができます
および状態から開始
これらの実行に必要な時間は、ただし倍のスペースが必要になります。
スケーリングの意味では、これは無関係な結果であると考えるかもしれません。Oracleの固定数がある場合、固定()の改善が得られます(並列の古典的なコアがある場合と同様に、得られる最高の改善は因数です)。スケーリングは変わりません。しかし、それは基本的な実行時間を変更します。Groverのアルゴリズムが最適であることがわかります。単一のオラクルで可能な最小時間は絶対にかかります。したがって、時間の改善が得られることを知ることは、特定の値での特定の実行時間のベンチマークに関して有用です。
ある意味で、異なるノードで並行して実行すると、実行時間を節約できます。しかし、複雑さ(一般的にスピードアップと呼んでいるもの)について話す場合、少し分析が必要です。
非並列の場合には約演算が必要であることに同意します。2つのノードがあり、N要素のリストをサイズ 2つのリストに分割するとします。サブリストの検索には約かかります。
ただし、
また、並列プロセスによって返される出力のうち、どの出力が目的のものかを確認する必要があります。複雑さを一定にするため、通常は表記に隠します。
ただし、キュービットの数やその他の制限に制限があるため、ハードウェアをクラスター化する必要がある場合は特に興味深いでしょう。