開發有用的 量子計算 是一項涉及政府、企業和學術界的全球性工作。量子計算的優勢可以幫助解決一些與應用程序(如材料模擬、氣候建模、風險管理、供應鏈優化和生物信息學)有關的全球性挑戰。
實現量子計算的優勢需要將量子計算機集成到現有的超級計算基礎架構和科學計算工作流程中,并允許領域科學家使用熟悉的語言和熟悉的工具對其進行編程。
這種工作流程的普及和開發強大可靠的軟件堆棧正是使 GPU 能夠革新超級計算的關鍵所在。從使加速計算成功的框架開始構建是量子計算從研究項目到助力科學發展的關鍵。這種理念稱為量子加速超級計算。
本文提供了關于量子計算機的基礎知識,以及量子加速超級計算如何利用其優勢并解決其弱點的見解。文末還提供了開發者構建可擴展且高性能的量子加速工作流程的一些實際注意事項,這些工作流程將隨著量子計算機的發展而擴展。
量子計算機的構建塊:QPU 和量子位
量子加速超級計算利用 量子處理器 (QPU) 來執行量子計算任務。QPU 的核心是一組名為量子位的二級量子物理系統。量子位可以通過各種方式創建,例如利用捕獲離子、光振動和通過超導環傳輸等現有方法。
相較于只能處于 0 或 1 狀態的經典比特,量子比特可以同時存在于這兩種狀態的組合中,因此可以更靈活地編碼信息。這種現象稱為超級疊加,也是為什么擁有量子位可以存儲呈指數級增長的數量(
)?的經典信息。多個量子位點通過名為干涉和相互作用的現象進行交互,從而能夠以獨特的方式處理量子信息。
不可以直接訪問完整的量子狀態。量子計算機輸出信息的唯一途徑是通過測量每個量子位,返回 0 或 1 的隨機概率,并將它們的超級狀態聚合到相應的經典狀態。許多重復測量 (樣本) 的分布提供了對量子狀態不可直接觀察的額外見解。量子位的狀態通常表示為圖 1 中的 Bloch 球體上的向量。

量子計算硬件和算法
量子計算可以簡化為兩個主要組件:硬件 (QPU) 和量子算法。硬件是一種非常復雜且精密設計的設備,用于保護、操縱和測量量子位。
許多類型的量子位被用于構建 QPU,每種類型都需要完全不同的硬件設計。例如,捕捉離子 QPU 通過激光運行量子位,而超導 QPU 則使用微波脈沖運行量子位。每種架構都具有與量子位質量、速度、可擴展性等有關的優缺點。
量子位 (qubit) 非常敏感于環境,即使是微小的干擾也會導致量子信息混亂 (decoherence),從而導致計算錯誤。避免混亂非常困難,是實現有用的 QPU 的主要障礙。
量子計算的第二個方面是量子算法。量子算法是一組數學運算,用于在測量系統中的兩個量子位的情況下操控存儲在一組量子位中的量子信息,以產生有意義的結果。量子算法通常以量子電路的形式表示,如圖 2 所示。兩條水平線表示系統中的兩個量子位,從 |0>狀態。以下框和線表示單位或雙位量子門操作。

量子算法的設計非常復雜,因為它必須解決一個由經典信息組成的真實問題,并以一種可映射到量子系統、操作為量子信息的方式將其轉換為量子解決方案,然后再將其轉換回經典解決方案。通常,一個成功的量子算法會有效準備一個量子狀態,當多次采樣時,它會以高概率產生“正確答案”。
量子電路中的每個操作都與目標量子比特進行了極其精確的物理交互,并引入了系統中的噪聲,噪聲可以快速累積并產生不一致的結果。為了運行實用的量子算法,量子誤差校正 (QEC) 代碼必須使用多個噪聲量子比特來編碼邏輯量子比特,以保護量子信息。量子誤差校正 (QEC) 代碼的開發仍然是解決 QPU 上實際問題的重大障礙之一。
QPU 可以加速哪些工作流程?
有一種常見的誤解是,QPU 將加速任何類型的計算。這可能不是真的,因為 QPU 非常適合執行非常特定的任務。一個量子計算機的主要弱點是,只能通過非確定性測量生成長度為 256 位的比特字符串?
因此,了解在 QPU 上有理論證明或有效實現的問題類型至關重要,如下所列。
- 模擬量子系統:QPU(量子系統本身)天然擅長模擬其他量子系統。這可以實現從探索新的化學反應和材料到揭示高能物理學之謎的各種基礎科學。
- 優化:QPU 中存儲的信息量呈指數級增長,這有助于找到更好的解決方案來應對大規模組合優化問題,從而為各種用例(包括路線規劃、網格優化、遺傳和組合產品選擇)帶來益處。
- AI 和機器學習:QPU 的特性使其非常適合構建和采樣復雜分布,以及在高維數據集中找到模式。這些技術非常可移植,可以為幾乎任何科學和工業領域帶來益處。
- 蒙特卡洛估計:QPU 可以為蒙特卡洛估算提供理論上的二次加速,從而提高獲取風險指標和金融預測的準確性和速度,從而在市場中獲得競爭優勢。
- 流體動力學:空氣動力學、天氣模擬和水箱模擬是多尺度問題的示例,這些問題需要使用大型網格來解決差分方程系統。QPU 正在探索用于解決差分方程系統的工具,以實現更精確的流體動力學模擬。
這些只是潛在的 QPU 應用程序之一。隨著硬件和算法研究的繼續,這一列表可能會擴大,并且可能會發現新的應用程序和用例,這些應用程序和用例超出了我們當前的理解范圍。
超級計算機如何助力量子計算?
第二個關于 QPU 的誤解是,它們將削弱當今的計算機的重要性,因為它們高效地執行通常用于大部分超級計算資源的子程序。QPU 的本質約束很快證明了這一點。部署任何量子加速工作流程都需要來自高性能 CPU 和 GPU 以及尖端 AI 技術的大量支持。實際上,量子加速超級計算能夠提供更高的靈活性,因此每個處理器都能完成最適合的任務。
量子誤差校正 (QEC) 曾被討論為實際量子計算的前提條件。QEC 是一個很好的示例,說明了 QPU 與 HPC 設備的緊密耦合是絕對必要的 .QEC 代碼需要重復編碼邏輯量子位,執行邏輯運算,并解碼錯誤。
在量子算法運行期間,大部分工作都需要在輔助 CPU 和 GPU 上進行實時處理。經典處理器必須與 QPU 緊密耦合;否則,延遲可能會使 QEC 程序變得非常緩慢。很可能,許多 QEC 代碼都需要快速執行計算密集型機器學習程序,這些程序需要可擴展的加速計算。
除 QEC 之外,在執行量子算法之前、之后或在執行量子算法期間,還需要執行其他重要的計算任務,例如:
- 優化硬件執行的量子電路編譯
- 密集型預處理和后處理例程
- 高效管理硬件控制系統
- 管理多 QPU 交互
值得注意的是,傳統超級計算機在量子計算研究的硬件和軟件領域中發揮著重要作用。通過量子模擬(即在經典計算機上模擬量子算法),可以獲得比許多物理量子處理單元(QPU)更準確的結果,因為量子比特仍然存在噪聲且數量有限。
這些模擬可以通過各種方式進行量子研究,例如通過生成無噪聲基準數據來評估 QPU 噪聲分布,或者根據其擴展行為確定新算法的可行性。對于需要先進加速計算來推動模擬極限的經典處理器,量子模擬的成本會呈指數級增長。
啟用量子加速工作流程
成熟的量子加速超級計算不會在某一時刻達到。隨著 QPU 和量子算法的改進,它們可以解決的重要問題的規模和性質將不斷擴大。今天開發和測試量子工作流程是為了做好準備,以便在開發者關心的問題出現時使用量子加速超級計算來解決這些問題。
以下是有關開發者制作穩健且適用于實際應用的量子加速工作流程的一些注意事項。
- 無 QPU 偏見:應用程序需要能夠針對不同的 QPU 進行適當的定位,并且盡可能減少代碼修改。硬件中立開發可以節省開發者時間并提供更大的算法執行自由度。
- 與經典架構集成:由于 QPU 需要來自超級計算機的龐大運營支持,因此必須開發工作流程,以便它們可以輕松集成到可擴展的 CPU 和 GPU 架構中。低延遲連接非常重要,因此需要專門的架構來處理時間敏感型任務,例如 QEC。
- 高性能庫:為了確保 QPU 的可擴展性,必須開發和使用高度優化的軟件庫,以便在必要的時間限制內高效執行所有經典任務。
- 可訪問性:量子計算是一種高度跨學科的技術,需要與領域科學家進行直接互動。開發必須在易于訪問的環境中進行,用戶來自各種計算背景。
- 用戶靈活性:使用最終工作流程的人需要能夠以他們的首選級別與代碼進行交互。同一應用程序的用戶的首選級別可以從黑盒到高度可定制的研究實施各不相同。
- 穩定性:關鍵在于,任何量子開發都應在穩定的平臺上進行,并與量子生態系統同步發展。
探索量子加速超級計算
NVIDIA 正在與整個量子生態系統的合作伙伴合作,開發功能強大、可擴展且易于使用的工具,使政府、大學和工業公司能夠構建有用的量子加速超級計算應用程序。
如需了解更多信息,請訪問 NVIDIA 量子計算 。我們期待您親自或虛擬地參加 NVIDIA GTC 2024 會議,共同定義量子加速超級計算機。