Yeni NVIDIA CUDA-Q Özellikleri Quantum Uygulama Performansını Artırıyor

4


NVIDIA CUDA-Q (eski adıyla NVIDIA CUDA Quantum), CPU, GPU ve tüm avantajlardan yararlanan kuantum hızlandırmalı süper bilgi işlem uygulamaları oluşturmaya yönelik açık kaynaklı bir programlama modelidir. QPU hesaplama yetenekleri. Bugün bu uygulamaları geliştirmek zordur ve yeni algoritmaların performansını verimli bir şekilde değerlendirmek ve geliştirmek için güçlü kuantum simülasyon yetenekleriyle birleştirilmiş, kullanımı kolay bir kodlama ortamı gerektirir.

CUDA-Q, performansı önemli ölçüde artıran ve kullanıcıların klasik süper bilgisayarlarda simüle edilebilecek şeylerin sınırlarını zorlamasına olanak tanıyan birçok yeni özellik içerir. Bu gönderi, kuantum simülasyonu için CUDA-Q'nun performans iyileştirmesini gösteriyor ve iyileştirmelerin kısa bir açıklamasını sunuyor.

Performans arttırmak

Beklenti değerlerinin hesaplanması, Değişken Kuantum Eigensolver (VQE) uygulamasındaki birincil kuantum görevidir. Bu değerleri CUDA-Q'da aşağıdaki komutu kullanarak kolayca hesaplayabilirsiniz: observe işlev. En yeni üç CUDA-Q sürümünün performansı, iki küçük molekülün (C) temel durum enerjisini belirlemeyi amaçlayan 24 ve 28 kubitlik VQE problemleri kullanılarak test edildi.2H2 ve C2H4). Deneyler standart UCCSD ansatz'ı kullandı ve Python'da yazıldı.

Her sürüm için (v0.6, v0.7, v0.7.1), üç durum vektör simülatörü arka ucu test edildi: nvidia (Tek hassasiyet), nvidia-fp64 (çift duyarlık) ve nvidia-mgpu (nvidia-fp64 kapı füzyonu ile). Aşağıdaki numara nvidia-mgpu daha önce sabit olarak 6 olarak kodlanmış olan ancak artık v0.7.1'de ayarlanabilir bir parametre olan geçit birleştirme seviyesini belirler.

Kapı füzyonu, genel hesaplama maliyetini azaltmak ve devre verimliliğini artırmak için ardışık kuantum kapılarının tek bir kapıda birleştirildiği veya birleştirildiği bir optimizasyon tekniğidir. Birleştirilen kapıların sayısı (geçit birleştirme seviyesi) simülasyon performansını önemli ölçüde etkileyebilir ve her uygulama için optimize edilmesi gerekir. Artık ayarlayabilirsiniz CUDAQ_MGPU_FUSE parametre ve v0.7.1'in varsayılan değeri olan 4'ten farklı özel kapı birleştirme düzeylerini belirtin.

Resimde kuantum hesaplamaya yönelik NVIDIA CUDA-Q yazılım geliştirme kitinin (SDK) farklı sürümlerinin performansının karşılaştırması gösterilmektedir.  SDK, NVIDIA GPU'larda kuantum hesaplama uygulamaları geliştirmek ve çalıştırmak için kullanılır.  Resim, SDK'nın en son sürümü olan 0.7.1 sürümünün önceki sürümlere göre önemli performans iyileştirmeleri sunduğunu göstermektedir.  Örneğin, 24 kübitlik bir sistemde SDK'nın en son sürümü, önceki sürüme göre 7 kata kadar daha hızlıdır.  28 kübitlik bir sistemde SDK'nın en son sürümü önceki sürüme göre 4,7 kata kadar daha hızlıdır.  Bu performans iyileştirmeleri, derleyici, çalışma zamanı sistemi ve kitaplıklardaki iyileştirmeler de dahil olmak üzere bir dizi faktörden kaynaklanmaktadır.
Şekil 1. 10 için uygulama süreleri observe 24 ve 28 kübitlik UCCSD-VQE deneylerinde çağrılar

Şekil 1, NVIDIA H100 GPU'ları kullanan her bir simülatör ve CUDA-Q sürümü için çalışma süresini göstermektedir. Kapı füzyonu olmayan iki simülatör, v0.6'dan v0.7.1'e en az 2 kat hızlanma yaşadı.

nvidia-mgpu-6 v0.7.1 simülatör sonuçları, 24 ve 28 kubitlik deneyler için v0.6 sonuçlarından sırasıyla 3,2 kat ve 4,7 kat daha hızlıydı. Kapı füzyon seviyesinin ayarlanması, performansı sırasıyla ilave 12 kat ve 1,2 kat artırdı; bu da bu parametrenin ne kadar önemli ve sisteme bağımlı olabileceğini gösterdi.

nvidia-mgpu simülatör, v0.8'den başlayarak (henüz yayınlanmadı) yeni varsayılan olacak ve en iyi genel performansı sunacak ve çok kübitli simülasyonlar için birden fazla GPU'nun anında kullanımına olanak sağlayacak.

Kodu hızlandırmak

CUDA-Q v0.7, derlemeyi iyileştiren ve başarılı derleme için gereken süreyi hızlandıran bir dizi geliştirme içerir. observe çağrılar (Şekil 2).

İlk olarak, çekirdeğin daha verimli bir şekilde derlenmesi için tam zamanında (JIT) derleme yolu geliştirildi. Daha önce bu prosedür devredeki kapı sayısına göre karesel olarak ölçekleniyordu, ancak doğrusal ölçeklendirmeye indirgenmişti.

JIT derleyicisinin performansında bir takım önemli iyileştirmeler olduğunu gösteren grafik.  Bu iyileştirmeler, kodun derlenmesi ve çalıştırılması için gereken sürenin önemli ölçüde azalmasına neden oldu.
Şekil 2. CUDA-Q v0.7 ve v0.7.1'de yer alan değişikliklerin ve çalışma zamanı iyileştirmelerinin dörde gösterimi observe aramalar

İkincisi, JIT değişiklik tespit kontrollerine yönelik karma işlemindeki iyileştirmeler, ortam değişiklikleri nedeniyle herhangi bir kodun yeniden derlenmesi gerekip gerekmediğini kontrol etmek için gereken süreyi azaltır. Bu, her biri için bu kontroller için gereken süreyi neredeyse tamamen ortadan kaldırır. observe Arama.

Son olarak v0.6, belirtilen günlük düzeyine bakılmaksızın her çağrı için tüm günlük işlemlerini gerçekleştirecektir. Bu, yalnızca belirtilen günlük düzeyi için gerekli işlemi gerçekleştirmek üzere v0.7'de değiştirildi.

Kapı füzyonuna ek olarak, 0.7.1, çalışma süresini daha da azaltan otomatik Hamiltonian gruplamayı (Şekil 3) tanıttı. observe toplu Hamiltonian değerlendirmelerini tek bir GPU'da etkinleştirerek çağrılar.

Hamiltonian gruplandırmanın, Hamiltonian elemanlarının hesaplanması için harcanan zamanı büyük ölçüde azaltırken, temel devreyi yürütmek için gereken süreyi değiştirmeden bıraktığını gösteren grafik.
Şekil 3. Hamiltonian gruplamasından elde edilen hızlanmanın gösterimi

Performansı daha da artırmak için gelecek sürümlerde durum hazırlığı, Pauli operatörlerinin kullanımı ve üniter sentez konularında daha fazla iyileştirme yer alacak.

CUDA-Q'yu kullanmaya başlayın

Mevcut ve beklenen CUDA-Q iyileştirmeleri, geliştiricilere kuantum hızlandırmalı süper bilgi işlem uygulamaları oluşturmak için daha performanslı bir platform sağlıyor. Bugün yalnızca geliştirme hızlandırılmakla kalmıyor, aynı zamanda CUDA-Q üzerinde oluşturulan uygulamalar pratik kuantum hesaplama için gerekli olan hibrit CPU, GPU ve QPU ortamlarında dağıtılacak şekilde konumlandırılıyor.

CUDA-Q Hızlı başlangıç ​​Kılavuzu ortamınızı hızlı bir şekilde kurmanıza yardımcı olurken, Temel bilgiler bölümü, ilk CUDA-Q başvurunuzu yazarken size rehberlik edecektir. Keşfedin kod örnekleri Ve uygulamalar Kendi kuantum uygulama geliştirmeniz için ilham almak için. Geri bildirim ve önerilerde bulunmak için şu adresi ziyaret edin: NVIDIA/cuda-kuantum GitHub deposu.

Kaynak: Nvidia

Doğrudan cihazınızda gerçek zamanlı güncellemeleri alın, şimdi abone olun.

Yorumlar