![]()
Qiskit SDK v2.4版本現已正式發布!作為v2.x系列的最新小版本更新,本次發布延續了我們持續強化SDK核心基礎設施的努力,致力于讓其在電路規模不斷擴大、編譯工作流日趨復雜的背景下,運行更快、擴展性更強、使用更便捷。
在過去幾個版本中,我們一直在為與編譯型語言的深度集成、更高性能的編譯路徑以及更具可擴展性的內部工具奠定基礎。Qiskit v2.4在此基礎上,對各個方面的已有能力進行了整合與延伸。
本次更新的一大核心原則是"改進不中斷"。下文所述的許多優化項可自動生效,無需修改現有代碼,并且能夠隨工作負載的規模與復雜度自動擴展。無論你是在構建自定義編譯Python擴展,還是在探索早期容錯電路,Qiskit v2.4都致力于讓你的工作流運行更快、操作更簡便。
本次v2.4更新涵蓋以下幾項重要內容:
Python擴展支持改進
Qiskit v2.4通過將所需頭文件直接內置于SDK中,大幅降低了基于C API構建并分發編譯型Python擴展的門檻,開發者無需借助任何自定義工具鏈即可構建高性能擴展。
容錯編譯管線改進
全新的容錯轉譯管線通過將分階段處理流程與基于gridsynth的RZ合成相結合,實現了更快的Clifford+T編譯速度以及更低的T門數量。這些改進在針對離散基礎門集進行編譯時會自動啟用,使容錯風格的編譯在更大規模下更快速、更實用。
C API能力進一步擴展
Qiskit的C API在v2.4中持續擴展,新增了對參數化門、基于泡利算符的計算、DAG級轉譯器處理流程以及基于文本的電路繪圖的支持。其目標是讓開發者能夠在C語言中構建更深層次、更高性能的編譯器工具,同時與現有Python工作流無縫集成。
QPY序列化速度提升
QPY電路序列化格式已在內部重構為使用Rust實現,顯著提升了電路的序列化與反序列化速度,且無需對現有工作流進行任何修改。
Python擴展支持改進詳解
Qiskit v2.4通過將C API頭文件直接作為SDK的一部分提供,進一步降低了使用編譯代碼擴展Qiskit的入門門檻。即便你自己不編寫C或Rust代碼,這一改動也使外部軟件包和實驗性工具更易于與Qiskit緊密集成,并將優化功能回饋給社區。
對于使用編譯型語言的開發者而言,此次更新使將性能關鍵型或底層組件遷移至編譯擴展中成為可行之舉,同時保持Qiskit的Python接口不變。擴展包可在構建時依賴Qiskit來定位所需的頭文件,然后使用標準Python工具將其打包并以普通Python wheel的形式分發。
為演示這一工作流,我們構建了一個可正常運行的外部轉譯器處理流程,作為編譯型Python擴展的示例。該示例將Qiskit插件工具包中的AddSpectatorMeasures處理流程從Python移植到了C語言實現。值得注意的是,Qiskit的C API目前仍處于不穩定狀態,跨小版本的二進制兼容性尚未得到保證,我們計劃在未來版本中提供有版本承諾的穩定性支持。
容錯編譯管線改進詳解
本次Qiskit版本引入了顯著改進的容錯轉譯管線,專為針對離散Clifford+T基礎門集進行編譯而設計,在提升編譯質量的同時大幅縮短了運行時間。
該管線首先針對連續基礎門集(Clifford+RZ)應用Qiskit的高性能編譯流程,再將生成的電路轉換為離散的Clifford+T門集,并直接在該表示上執行優化。這種分階段處理方式使每個階段均能采用最適合其任務的算法,從而同時提升性能與輸出質量。
此外,Qiskit現已采用gridsynth算法作為在離散基礎下合成RZ旋轉的默認方法,取代了此前版本中使用的SolovayKitaevDecomposition。gridsynth能夠生成顯著更低的T門數量,而新的容錯轉譯管線還對角度合成結果進行緩存,以進一步減少大型電路中的重復計算。兩者疊加的效果是:編譯更快,且電路所需的T門數量大幅減少。
最重要的是,你無需對工作流做任何修改即可獲得這些提升——在針對離散基礎門集進行編譯時,上述改進均默認啟用。基準測試顯示,在編譯時間和T門數量縮減方面均有持續且顯著的改進。
Q&A
Q1:Qiskit v2.4的C API頭文件內置有什么實際作用?
A:Qiskit v2.4將C API頭文件直接內置于SDK中,開發者在構建編譯型Python擴展時無需再配置自定義工具鏈或額外安裝頭文件包。擴展可在構建時直接依賴Qiskit定位頭文件,并以標準Python wheel格式打包分發。這大幅降低了構建高性能擴展的門檻,也讓外部工具更容易與Qiskit深度集成。不過需注意,C API目前仍處于不穩定狀態,跨小版本的二進制兼容性暫不保證。
Q2:Qiskit v2.4中的gridsynth算法比之前的方案好在哪里?
A:gridsynth替代了此前的SolovayKitaevDecomposition,成為在離散基礎下合成RZ旋轉的默認方法。其最主要的優勢在于能生成顯著更低的T門數量,而T門在容錯量子計算中是成本最高的門操作之一。新管線還對角度合成結果進行緩存,減少大型電路中的重復計算,最終實現更快的編譯速度和更高質量的電路輸出。
Q3:升級到Qiskit v2.4需要修改現有代碼嗎?
A:大多數情況下不需要。v2.4的許多改進均可自動生效,包括容錯轉譯管線的優化、QPY序列化的提速等,用戶無需修改任何現有代碼。只要將SDK更新至v2.4版本,在針對離散基礎門集進行編譯時,新的編譯管線和gridsynth算法即會默認啟用,編譯性能和電路質量的提升將自動體現在現有工作流中。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.