عملية لتبادل البيانات عبر نسخ TPU المتماثلة.
في كل نسخة متماثلة، يتم تقسيم الإدخال إلى كتل `split_count` بطول `split_dimension` وإرسالها إلى النسخ المتماثلة الأخرى المعطاة لمجموعة_تعيين. بعد تلقي كتل `split_count` - 1 من النسخ المتماثلة الأخرى، نقوم بتسلسل الكتل على طول `concat_dimension` كمخرجات.
على سبيل المثال، لنفترض أن هناك نسختين متماثلتين من مادة TPU: النسخة المتماثلة 0 تتلقى الإدخال: `[[A, B]]` النسخة المتماثلة 1 تتلقى الإدخال: `[[C, D]]`
group_signment=`[[0, 1]]` concat_dimension=0 Split_dimension=1 Split_count=2
إخراج النسخة المتماثلة 0: `[[A], [C]]` إخراج النسخة المتماثلة 1: `[[B], [D]]`
الأساليب العامة
الإخراج <T> | كإخراج () إرجاع المقبض الرمزي للموتر. |
ثابت <T> AllToAll <T> | |
الإخراج <T> | انتاج () النتيجة المتبادلة. |
الطرق الموروثة
الأساليب العامة
الإخراج العام <T> كإخراج ()
إرجاع المقبض الرمزي للموتر.
المدخلات إلى عمليات TensorFlow هي مخرجات عملية TensorFlow أخرى. يتم استخدام هذه الطريقة للحصول على مقبض رمزي يمثل حساب الإدخال.
إنشاء AllToAll <T> ثابت عام (نطاق النطاق ، إدخال المعامل <T>، المعامل <Integer> groupAssignment، Long concatDimension، Long SplitDimension، Long SplitCount)
طريقة المصنع لإنشاء فئة تغلف عملية AllToAll جديدة.
حدود
نِطَاق | النطاق الحالي |
---|---|
مدخل | الإدخال المحلي للمجموع. |
مهمه المجموعه | موتر int32 بالشكل [num_groups, num_replicas_per_group]. يمثل `group_signment[i]` المعرفات المتماثلة في المجموعة الفرعية i. |
concatDimension | رقم البعد المراد تسلسله. |
com.splitDimension | رقم البعد المراد تقسيمه. |
SplitCount | عدد الانقسامات، يجب أن يكون هذا العدد مساويا لحجم المجموعة الفرعية (group_assiment.get_shape()[1]) |
عائدات
- مثيل جديد من AllToAll