Aracılığıyla paylaş


MPI_Dist_graph_create_adjacent işlevi

Dağıtılmış graf topolojisi bilgilerinin eklendiği yeni bir iletişimciye tanıtıcı döndürür.

Söz dizimi

int WINAPI MPI_Dist_graph_create_adjacent(
  _In_  MPI_Comm                comm_old,
        _In_range_(>=,0)  int   indegree,
        _In_reads_opt const int sources[],
        _In_reads_opt const int sourceweights[],
        _In_range_(>=,0)  int   outdegree,
        _In_reads_opt const int destinations[],
        _In_reads_opt const int destweights[],
  _In_  MPI_Info                info,
        _In_range_(0,1) int     reorder,
  _Out_ MPI_Comm                *comm_dist_graph
);

Parametreler

  • comm_old [in]
    Topoloji bilgileri (tanıtıcı) olmadan communicator tutamacı.

  • indegree
    Kaynakların ve kaynak ağırlık dizilerinin boyutu (negatif olmayan tamsayı).

  • kaynaklar[]
    Çağırma işleminin hedef olduğu işlemlerin dereceleri (negatif olmayan tamsayılar dizisi).

  • sourceweights[]
    Karşılık gelen kenarların çağrı işlemine ağırlıkları (negatif olmayan tamsayı dizisi).

  • outdegree
    Hedeflerin ve destweights dizilerinin boyutu (negatif olmayan tamsayı).

  • destinations[]
    Çağırma işleminin kaynak olduğu işlemlerin dereceleri (negatif olmayan tamsayılar dizisi).

  • destweights[]
    Karşılık gelen kenarların ağırlıkları çağırma işleminin dışındadır (negatif olmayan tamsayılar dizisi).

  • bilgi [in]
    Ağırlıkların iyileştirilmesi veya yorumlanmasıyla ilgili ipuçları (tutamaç). Şu anda bu değişken dahili olarak kullanılmadığından MPI_INFO_NULL kullanın.

  • Sipariş
    Dereceler yeniden sıralanabilir (true) veya değil (false) (mantıksal). Şu anda bu şirket içinde kullanılmaz.

  • comm_dist_graph [out]
    Dağıtılmış graf topolojisi bilgilerinin eklendiği (tanıtıcı) iletişimciye tanıtın.

Döndürülen değer

Başarılı MPI_SUCCESS döndürür. Aksi takdirde, dönüş değeri bir hata kodudur.

Fortran'da dönüş değeri IERROR parametresinde depolanır.

Fortran

    MPI_DIST_GRAPH_CREATE_ADJACENT (COMM_OLD, INDEGREE, SOURCES, SOURCEWEIGHTS,
    OUTDEGREE, DESTINATIONS, DESTWEIGHTS, INFO, REORDER,
    COMM_DIST_GRAPH, IERROR)
        INTEGER COMM_OLD, INDEGREE, SOURCES (*), SOURCEWEIGHTS (*), OUTDEGREE,
    DESTINATIONS (*), DESTWEIGHTS (*), INFO, COMM_DIST_GRAPH, IERROR
        LOGICAL REORDER

Açıklamalar

comm_old communicator'daki her işlem, sanal dağıtılmış graf topolojisindeki gelen ve giden kenarları hakkındaki tüm bilgileri geçirir. Çağırma işlemleri grafın her kenarının kaynakta ve hedef işlemde graf ağırlıklıysa aynı ağırlıkta açıklanmasını sağlamalıdır. Belirli bir kaynak hedef çifti için birden çok kenar varsa, bu kenarların ağırlıklarının sırası önemli değildir.

İletişim topolojisinin tamamı, comm_old'daki tüm işlemlerin kaynak dizisinde gösterilen tüm kenarların birleşimidir ve hedef dizisinde gösterilen tüm kenarların birleşimiyle aynı olmalıdır. Kaynak ve hedef dereceleri , comm_old işlem dereceleri olmalıdır. Bu, iletişim grafiğinin tam olarak dağıtılmış belirtimini sağlar. Yalıtılmış işlemlere, yani dağıtılmış topolojide gelen veya giden kenarı olmayan işlemlere ve dolayısıyla indegree veya outdegree ya da her ikisine de (sıfır olarak) izin verilir.

yeni oluşturulan iletişimcideki işlem sayısı (comm_dist_graph) comm_old işlem sayısıyla aynıdır. Bu işleve çağrı topludur.

Ağırlıklar, graf ağırlıklı bir grafikse kaynak ağırlıklar ve ağırlık kaldırma dizileri kullanılarak negatif olmayan tamsayılar olarak belirtilir. Bir uygulamanın, tüm kenarların aynı (etkin olarak hayır) ağırlığına sahip olduğunu belirtmek için hemkaynak ağırlıklar hem de ağırlık kaldırma dizileri için MPI_UNWEIGHTED belirtmesi gerekir. comm_old bazı işlemleri için değil , bazı işlemleri için MPI_UNWEIGHTED sağlamak hatalıdır. Böyle bir durumda davranış garanti değildir. Graf ağırlıklıysa, ancak bir işlem için yeşil veya yeşil değilse, MPI_WEIGHTS_EMPTY veya herhangi bir rastgele dizi bu işlem tarafından kaynak ağırlıklara veya destweights'a geçirilebilir.

Gereksinimler

Ürün

Microsoft MPI v6

Üst bilgi

Mpi.h; Mpif.h

Kitaplık

Msmpi.lib

DLL

Msmpi.dll

Ayrıca bkz.

MPI İşlem Topolojisi İşlevleri

MPI_Dist_graph_create

MPI_Dist_graph_neighbors_count

MPI_Dist_graph_neighbors