TPU kopyaları arasında veri alışverişi yapmaya yönelik bir Op.
Her kopyada giriş, "split_dimension" boyunca "split_count" bloklarına bölünür ve grup_atama verilen diğer kopyalara gönderilir. Diğer replikalardan `split_count` - 1 blok aldıktan sonra çıktı olarak blokları `concat_dimension` boyunca birleştiriyoruz.
Örneğin, 2 TPU kopyası olduğunu varsayalım: kopya 0 girdiyi alır: "[[A, B]]" kopya 1 girdiyi alır: "[[C, D]]"
group_questment=`[[0, 1]]` concat_dimension=0 split_dimension=1 split_count=2
kopya 0'ın çıkışı: "[[A], [C]]" kopya 1'in çıkışı: "[[B], [D]]"
Sabitler
Sicim | OP_NAME | Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı |
Genel Yöntemler
Çıkış <T> | Çıkış olarak () Tensörün sembolik tutamacını döndürür. |
statik <T, TType'ı genişletir > TümüTümüne <T> | |
Çıkış <T> | çıktı () Değiştirilen sonuç. |
Kalıtsal Yöntemler
Sabitler
genel statik son Dize OP_NAME
Bu operasyonun TensorFlow çekirdek motoru tarafından bilinen adı
Genel Yöntemler
genel Çıkış <T> asOutput ()
Tensörün sembolik tutamacını döndürür.
TensorFlow işlemlerinin girdileri, başka bir TensorFlow işleminin çıktılarıdır. Bu yöntem, girişin hesaplanmasını temsil eden sembolik bir tanıtıcı elde etmek için kullanılır.
public static AllToAll <T> create ( Kapsam kapsamı, İşlenen <T> girişi, İşlenen < TInt32 > groupAssignment, Long concatDimension, Long splitDimension, Long splitCount)
Yeni bir AllToAll işlemini saran bir sınıf oluşturmak için fabrika yöntemi.
Parametreler
kapsam | mevcut kapsam |
---|---|
giriş | Toplamın yerel girişi. |
grup ödevi | [num_groups, num_replicas_per_group] şeklinde bir int32 tensörü. 'group_questment[i]', i'inci alt gruptaki kopya kimliklerini temsil eder. |
concatBoyut | Birleştirilecek boyut numarası. |
bölünmüş Boyut | Bölünecek boyut numarası. |
splitCount | Bölünme sayısı, bu sayı alt grup boyutuna eşit olmalıdır(group_questment.get_shape()[1]) |
İadeler
- AllToAll'ın yeni bir örneği