Aracılığıyla paylaş


MPI uygulamalarını çalıştırmak için kullanılan HPC Pack içeren Windows RDMA kümesi ayarlama

Önemli

Klasik VM'ler 1 Mart 2023'te kullanımdan kaldırılacaktır.

ASM'den IaaS kaynaklarını kullanıyorsanız lütfen geçişinizi 1 Mart 2023'e kadar tamamlayın. Azure Resource Manager'daki birçok özellik geliştirmelerinden yararlanmak için geçişi daha erken yapmanızı öneririz.

Daha fazla bilgi için bkz. IaaS kaynaklarınızı 1 Mart 2023'e kadar Azure Resource Manager geçirme.

Paralel İleti Geçirme Arabirimi (MPI) uygulamalarını çalıştırmak için Microsoft HPC Pack ve RDMA özellikli HPC VM boyutlarıyla Azure'da bir Windows RDMA kümesi ayarlayın. BIR HPC Pack kümesinde RDMA özellikli, Windows Server tabanlı düğümler ayarladığınızda, MPI uygulamaları Azure'da uzak doğrudan bellek erişimi (RDMA) teknolojisini temel alan düşük gecikme süresi ve yüksek aktarım hızı ağı üzerinden verimli bir şekilde iletişim kurar.

HPC Pack küme dağıtım seçenekleri

Microsoft HPC Paketi, Windows veya Linux HPC uygulamalarını çalıştırmak için şirket içinde veya Azure'da HPC kümeleri oluşturmak için ek ücret ödemeden sağlanan bir araçtır. HPC Pack, Windows için İleti Geçirme Arabiriminin (MS-MPI) Microsoft uygulaması için bir çalışma zamanı ortamı içerir. Desteklenen bir Windows Server işletim sistemi çalıştıran RDMA özellikli örneklerle kullanıldığında HPC Pack, Azure RDMA ağına erişen Windows MPI uygulamalarını çalıştırmak için verimli bir seçenek sağlar.

Bu makalede, Microsoft HPC Pack 2012 R2 ile bir Windows RDMA kümesi ayarlamaya yönelik iki senaryo ve ayrıntılı kılavuzun bağlantıları tanıtılır.

  • 1\. Senaryo Yoğun işlem gücü kullanımlı çalışan rolü örneklerini dağıtma (PaaS)
  • 2\. Senaryo İşlem yoğunluklu VM'lerde (IaaS) işlem düğümlerini dağıtma

Senaryo 1: İşlem yoğunluklu çalışan rolü örneklerini dağıtma (PaaS)

Mevcut bir HPC Pack kümesinden, bulut hizmetinde (PaaS) çalışan Azure çalışan rolü örneklerine (Azure düğümleri) fazladan işlem kaynakları ekleyin. HPC Pack'ten "Azure'a patlama" olarak da adlandırılan bu özellik, çalışan rolü örnekleri için bir dizi boyutu destekler. Azure düğümlerini eklerken RDMA özellikli boyutlardan birini belirtin.

Aşağıda mevcut (genellikle şirket içi) bir kümeden RDMA özellikli Azure örneklerine yönelik önemli noktalar ve adımlar yer almaktadır. Azure VM'de dağıtılan bir HPC Paketi baş düğümüne çalışan rolü örnekleri eklemek için benzer yordamları kullanın.

Not

HPC Pack ile Azure'a hızlı geçiş öğreticisi için bkz. HPC Pack ile karma küme ayarlama. Aşağıdaki adımlarda yer alan ve özellikle RDMA özellikli Azure düğümleri için geçerli olan noktalara dikkat edin.

Azure'a seri çekim

Adımlar

  1. HPC Pack 2012 R2 baş düğümünü dağıtma ve yapılandırma

    MICROSOFT İndirme Merkezi'nden HPC Paketi yükleme paketini indirin. Azure seri dağıtımına hazırlanma gereksinimleri ve yönergeleri için bkz. Microsoft HPC Pack ile Azure Çalışan Örneklerine Yönelik Seri Yükleme.

  2. Azure aboneliğinde yönetim sertifikası yapılandırma

    Baş düğüm ile Azure arasındaki bağlantının güvenliğini sağlamak için bir sertifika yapılandırın. Seçenekler ve yordamlar için bkz. HPC Paketi için Azure Yönetim Sertifikasını Yapılandırma Senaryoları. Test dağıtımları için HPC Pack, Azure aboneliğinize hızla yükleyebileceğiniz bir Varsayılan Microsoft HPC Azure Yönetim Sertifikası yükler.

  3. Yeni bir bulut hizmeti ve depolama hesabı oluşturma

    Dağıtım için bir bulut hizmeti (klasik) ve depolama hesabı (klasik) oluşturmak için Azure portal kullanın. Bu kaynakları, kullanmak istediğiniz H serisi, A8 veya A9 boyutunun kullanılabildiği bir bölgede oluşturun. Bkz. Bölgeye göre Azure ürünleri.

  4. Azure düğüm şablonu oluşturma

    HPC Küme Yöneticisi'nde Düğüm Şablonu Oluşturma Sihirbazı'nı kullanın. Adımlar için bkz. "Microsoft HPC Paketi ile Azure Düğümlerini Dağıtma Adımları" bölümündeki Azure düğümü şablonu oluşturma .

    İlk testler için şablonda el ile kullanılabilirlik ilkesi yapılandırmanızı öneririz.

  5. Kümeye düğüm ekleme

    HPC Küme Yöneticisi'nde Düğüm Ekleme Sihirbazı'nı kullanın. Daha fazla bilgi için bkz. Windows HPC Kümesine Azure Düğümleri Ekleme.

    Düğümlerin boyutunu belirtirken RDMA özellikli örnek boyutlarından birini seçin.

    Not

    İşlem yoğunluklu örneklerle Azure dağıtımına yapılan her seride HPC Pack, belirttiğiniz Azure çalışan rolü örneklerine ek olarak ara sunucu düğümleri olarak en az iki RDMA özellikli örneği (A8 gibi) otomatik olarak dağıtır. Ara sunucu düğümleri aboneliğe ayrılan çekirdekleri kullanır ve Azure çalışan rolü örnekleriyle birlikte ücretlendirilir.

  6. Düğümleri başlatın (sağlayın) ve işleri çalıştırmak için çevrimiçine getirin

    Düğümleri seçin ve HPC Küme Yöneticisi'nde Başlat eylemini kullanın. Sağlama tamamlandığında düğümleri seçin ve HPC Küme Yöneticisi'nde Çevrimiçi Getir eylemini kullanın. Düğümler işleri çalıştırmaya hazırdır.

  7. Kümeye iş gönderme

    Küme işlerini çalıştırmak için HPC Pack iş gönderme araçlarını kullanın. Bkz. Microsoft HPC Paketi: İş Yönetimi.

  8. Düğümleri durdurma (sağlamasını kaldırma)

    İşleri çalıştırmayı bitirdiğinizde düğümleri çevrimdışı duruma getirin ve HPC Küme Yöneticisi'nde Durdur eylemini kullanın.

Senaryo 2: İşlem yoğunluklu VM'lerde (IaaS) işlem düğümlerini dağıtma

Bu senaryoda, HPC Pack baş düğümünü ve küme işlem düğümlerini bir Azure sanal ağındaki VM'lere dağıtırsınız. HPC Pack, Azure VM'lerinde otomatik dağıtım betikleri ve Azure hızlı başlangıç şablonları dahil olmak üzere çeşitli dağıtım seçenekleri sağlar. Örnek olarak, aşağıdaki önemli noktalar ve adımlar Azure'da HPC Pack 2012 R2 kümesinin dağıtımını otomatikleştirmek için HPC Pack IaaS dağıtım betiğini kullanmanıza yol gösterir.

Azure VM'lerinde küme

Adımlar

  1. İstemci bilgisayarda HPC Pack IaaS dağıtım betiğini çalıştırarak küme baş düğümü ve işlem düğümü VM'leri oluşturma

    Microsoft İndirme Merkezi'nden HPC Pack IaaS Dağıtım Betiği paketini indirin.

    İstemci bilgisayarı hazırlamak, betik yapılandırma dosyasını oluşturmak ve betiği çalıştırmak için bkz. HPC Pack IaaS dağıtım betiğiyle HPC Kümesi oluşturma.

    RDMA özellikli işlem düğümlerini dağıtma konusunda dikkat edilmesi gerekenler için bkz . Yüksek performanslı işlem VM boyutları ve aşağıdakilere dikkat edin:

    • Sanal ağ: Kullanmak istediğiniz H serisi, A8 veya A9 boyutunun kullanılabildiği bir bölgede yeni bir sanal ağ belirtin. Bkz. Bölgeye göre Azure ürünleri.

    • Windows Server işletim sistemi: RDMA bağlantısını desteklemek için işlem düğümü VM'leri için Windows Server 2012 R2 gibi uyumlu bir Windows Server işletim sistemi belirtin.

    • Bulut hizmetleri: Betik klasik dağıtım modelini kullandığından, küme VM'leri Azure bulut hizmetleri (ServiceName yapılandırma dosyasındaki ayarlar) kullanılarak dağıtılır. Baş düğümünüzü tek bir bulut hizmetinde ve işlem düğümlerinizi farklı bir bulut hizmetinde dağıtmanızı öneririz.

    • Baş düğüm boyutu: Bu senaryo için baş düğüm için en az A4 (Fazla Büyük) boyutunu göz önünde bulundurun.

    • HpcVmDrivers uzantısı: Dağıtım betiği, A8 veya A9 işlem düğümlerini Bir Windows Server işletim sistemiyle dağıttığınızda Azure VM Aracısı'nı ve HpcVmDrivers uzantısını otomatik olarak yükler. HpcVmDrivers, RDMA ağına bağlanabilmeleri için sürücüleri işlem düğümü VM'lerine yükler. RDMA özellikli H serisi VM'lerde HpcVmDrivers uzantısını el ile yüklemeniz gerekir. Bkz. Yüksek performanslı işlem VM boyutları.

    • Küme ağ yapılandırması: Dağıtım betiği, Topoloji 5'te (Kurumsal ağdaki tüm düğümler) HPC Pack kümesini otomatik olarak ayarlar. Bu topoloji, VM'lerdeki tüm HPC Pack küme dağıtımları için gereklidir. Küme ağ topolojisini daha sonra değiştirmeyin.

  2. İşleri çalıştırmak için işlem düğümlerini çevrimiçine getirme

    Düğümleri seçin ve HPC Küme Yöneticisi'nde Çevrimiçi Getir eylemini kullanın. Düğümler işleri çalıştırmaya hazırdır.

  3. Kümeye iş gönderme

    İşleri göndermek için baş düğüme bağlanın veya bunu yapmak için bir şirket içi bilgisayar ayarlayın. Bilgi için bkz. Azure'da hpc kümesine iş gönderme.

  4. Düğümleri çevrimdışına alın ve durdurun (serbest bırakın)

    İşleri çalıştırmayı bitirdiğinizde, HPC Küme Yöneticisi'nde düğümleri çevrimdışına alın. Ardından Azure yönetim araçlarını kullanarak bunları kapatın.

Kümede MPI uygulamalarını çalıştırma

Örnek: BIR HPC Pack kümesinde mpipingpong çalıştırma

RDMA özellikli örneklerin HPC Pack dağıtımını doğrulamak için kümede HPC Pack mpipingpong komutunu çalıştırın. mpipingpong , RDMA özellikli uygulama ağı için gecikme süresini ve aktarım hızı ölçümlerini ve istatistiklerini hesaplamak için eşleştirilmiş düğümler arasında art arda veri paketleri gönderir. Bu örnekte, cluster mpiexec komutunu kullanarak bir MPI işi (bu örnekte mpipingpong) çalıştırmaya yönelik tipik bir desen gösterilmektedir.

Bu örnekte, azure düğümlerini "Azure'a seri" yapılandırmasına eklediğiniz varsayılır ([Senaryo 1](bu makalede #scenario-1.-deploy-compute-intensive-worker-role-instances-(PaaS). HPC Pack'i bir Azure VM kümesine dağıttıysanız, farklı bir düğüm grubu belirtmek ve ağ trafiğini RDMA ağına yönlendirmek için ek ortam değişkenleri ayarlamak için komut söz dizimini değiştirmeniz gerekir.

Kümede mpipingpong çalıştırmak için:

  1. Baş düğümde veya düzgün yapılandırılmış bir istemci bilgisayarda bir Komut İstemi açın.

  2. Dört düğümün Azure seri dağıtımında düğüm çiftleri arasındaki gecikme süresini tahmin etmek için aşağıdaki komutu yazarak mpipingpong'u küçük bir paket boyutu ve birçok yinelemeyle çalıştıracak bir iş gönderin:

    job submit /nodegroup:azurenodes /numnodes:4 mpiexec -c 1 -affinity mpipingpong -p 1:100000 -op -s nul
    

    komutu, gönderilen işin kimliğini döndürür.

    Azure VM'lerine dağıtılan HPC Pack kümesini dağıttıysanız, tek bir bulut hizmetinde dağıtılan işlem düğümü VM'lerini içeren bir düğüm grubu belirtin ve mpiexec komutunu aşağıdaki gibi değiştirin:

    job submit /nodegroup:vmcomputenodes /numnodes:4 mpiexec -c 1 -affinity -env MSMPI_DISABLE_SOCK 1 -env MSMPI_PRECONNECT all -env MPICH_NETMASK 172.16.0.0/255.255.0.0 mpipingpong -p 1:100000 -op -s nul
    
  3. İş tamamlandığında, çıktıyı görüntülemek için (bu durumda işin 1. görevinin çıktısı) aşağıdakileri yazın

    task view <JobID>.1
    

    burada <JobID> , gönderilen işin kimliğidir.

    Çıktı, aşağıdakine benzer gecikme süresi sonuçları içerir.

    Ping pong gecikmesi

  4. Azure seri aktarım hızı düğümleri çiftleri arasındaki aktarım hızını tahmin etmek için aşağıdaki komutu yazarak mpipingpong'u büyük bir paket boyutuna ve birkaç yinelemeye sahip çalıştıracak bir iş gönderin:

    job submit /nodegroup:azurenodes /numnodes:4 mpiexec -c 1 -affinity mpipingpong -p 4000000:1000 -op -s nul
    

    komutu, gönderilen işin kimliğini döndürür.

    Azure VM'lerine dağıtılan bir HPC Pack kümesinde, 2. adımda belirtildiği gibi komutu değiştirin.

  5. İş tamamlandığında çıktıyı görüntülemek için (bu durumda işin 1. görevinin çıktısı) aşağıdakileri yazın:

    task view <JobID>.1
    

    Çıktı, aşağıdakine benzer aktarım hızı sonuçları içerir.

    Ping pong aktarım hızı

MPI uygulamasında dikkat edilmesi gerekenler

Aşağıda Azure'da HPC Pack ile MPI uygulamalarını çalıştırmaya yönelik önemli noktalar yer alır. Bazıları yalnızca Azure düğümlerinin dağıtımları için geçerlidir ("Azure'a seri dağıtım" yapılandırmasına eklenen çalışan rolü örnekleri).

  • Bulut hizmetindeki çalışan rolü örnekleri, Azure tarafından bildirimde bulunmaksızın düzenli aralıklarla yeniden sağlanır (örneğin, sistem bakımı için veya bir örneğin başarısız olması durumunda). Bir örnek bir MPI işi çalıştırırken yeniden oluşturulursa, örnek verilerini kaybeder ve ilk dağıtıldığında durumuna döner ve bu da MPI işinin başarısız olmasına neden olabilir. Tek bir MPI işi için ne kadar çok düğüm kullanırsanız ve iş ne kadar uzun süre çalışırsa, bir iş çalışırken örneklerden birinin yeniden sağlanması o kadar olasıdır. Dağıtımdaki tek bir düğümü dosya sunucusu olarak belirlediğinizde de bunu göz önünde bulundurun.

  • Azure'da MPI işlerini çalıştırmak için RDMA özellikli örnekleri kullanmanız gerekmez. HPC Pack tarafından desteklenen herhangi bir örnek boyutunu kullanabilirsiniz. Ancak RDMA özellikli örneklerin, düğümleri bağlayan ağın gecikme süresine ve bant genişliğine duyarlı nispeten büyük ölçekli MPI işleri çalıştırması önerilir. Gecikme süresine ve bant genişliğine duyarlı MPI işlerini çalıştırmak için başka boyutlar kullanıyorsanız, tek bir görevin yalnızca birkaç düğümde çalıştığı küçük işler çalıştırmanızı öneririz.

  • Azure örneklerine dağıtılan uygulamalar, uygulamayla ilişkili lisans koşullarına tabidir. Bulutta çalışmayla ilgili lisans ya da başka kısıtlamalar için satıcıyla birlikte ticari uygulamaları denetleyin. Satıcıların tümü kullandıkça öde lisansı sunmaz.

  • Azure örneklerinin şirket içi düğümlere, paylaşımlara ve lisans sunucularına erişmek için daha fazla kuruluma ihtiyacı vardır. Örneğin, Azure düğümlerinin şirket içi lisans sunucusuna erişmesini sağlamak için siteden siteye Azure sanal ağını yapılandırabilirsiniz.

  • Azure örneklerinde MPI uygulamaları çalıştırmak için hpcfwutil komutunu çalıştırarak her MPI uygulamasını örneklerde Windows Güvenlik Duvarı ile kaydedin. Bu, MPI iletişimlerinin güvenlik duvarı tarafından dinamik olarak atanan bir bağlantı noktasında gerçekleştirilmesini sağlar.

    Not

    Azure dağıtımlarına yönelik ani artış için, kümenize eklenen tüm yeni Azure düğümlerinde otomatik olarak çalışacak bir güvenlik duvarı özel durum komutu da yapılandırabilirsiniz. hpcfwutil komutunu çalıştırdıktan ve uygulamanızın çalıştığını doğruladıktan sonra komutunu Azure düğümleriniz için bir başlangıç betiğine ekleyin. Daha fazla bilgi için bkz. Azure Düğümleri için Başlangıç Betiği Kullanma.

  • HPC Pack, MPI iletişimi için kabul edilebilir adres aralığını belirtmek üzere CCP_MPI_NETMASK küme ortam değişkenini kullanır. HPC Pack 2012 R2'den başlayarak, CCP_MPI_NETMASK küme ortam değişkeni yalnızca etki alanına katılmış küme işlem düğümleri (şirket içi veya Azure VM'lerinde) arasındaki MPI iletişimini etkiler. Değişken, Azure yapılandırmasına eklenen düğümler tarafından yoksayılır.

  • MPI işleri, farklı bulut hizmetlerinde dağıtılan Azure örnekleri arasında çalıştırılamaz (örneğin, farklı düğüm şablonlarına sahip Azure dağıtımlarına veya birden çok bulut hizmetlerine dağıtılan Azure VM işlem düğümlerinde). Farklı düğüm şablonlarıyla başlatılan birden çok Azure düğümü dağıtımınız varsa, MPI işi yalnızca bir Azure düğümü kümesinde çalıştırılmalıdır.

  • Azure düğümlerini kümenize ekleyip çevrimiçi yaptığınızda HPC İş Zamanlayıcı Hizmeti hemen düğümlerde işleri başlatmayı dener. İş yükünüzün yalnızca bir bölümü Azure'da çalıştırılabilirse, Azure'da hangi iş türlerinin çalışabileceğini tanımlamak için iş şablonlarını güncelleştirdiğinizden veya oluşturduğunuzdan emin olun. Örneğin, bir iş şablonuyla gönderilen işlerin yalnızca Azure düğümlerinde çalıştığından emin olmak için Düğüm Grupları özelliğini iş şablonuna ekleyin ve gerekli değer olarak AzureNodes'u seçin. Azure düğümleriniz için özel gruplar oluşturmak için Add-HpcGroup HPC PowerShell cmdlet'ini kullanın.

Sonraki adımlar