يمكن أن يؤثر التدريب على TPU Core مقابل ثمانية بشكل كبير على الأداء بسبب الطبيعة الموزعة لـ TPUs. يحتوي كل TPU على ثمانية نوى ، ويتم تحسين هذه النوى للمعالجة المتوازية لعمليات التنس ، والتي تعتبر أساسية لحساب الشبكة العصبية [8]. عند استخدام جوهر TPU واحد ، يدرب النموذج على هذا النواة المحددة ، ويستفيد من بنيةه المحسنة لمضاعفات المصفوفة [8]. ومع ذلك ، عند استخدام جميع النوى الثمانية ، يمكن أن توزع عملية التدريب عبر هذه النوى ، مما قد يؤدي إلى أوقات تدريب أسرع بسبب التوازي.
بشكل عام ، يتيح استخدام النوى المتعددة الاستخدام بشكل أفضل لموارد TPU ، مثل عرض النطاق الترددي للذاكرة العالي وقدرات التوصيل البيني ، والتي يمكن أن تعزز إنتاجية التدريب الشاملة [2]. هذا مفيد بشكل خاص للنماذج أو مجموعات البيانات على نطاق واسع حيث يمكن للمعالجة الموازية أن تقلل بشكل كبير من وقت التدريب. ومع ذلك ، يعتمد كسب الأداء الفعلي على مدى جودة النموذج والبيانات للتدريب الموزع على TPUs.
في بعض الحالات ، إذا لم يكن النموذج أو البيانات مناسبًا جيدًا للتوازي عبر النوى المتعددة ، فقد لا يكون فرق الأداء واضحًا. بالإضافة إلى ذلك ، يمكن أن تؤثر عوامل مثل الاختناقات I/O أو تعقيد النموذج على فعالية استخدام نوى TPU المتعددة [2]. ومع ذلك ، بالنسبة لمعظم مهام التعلم الآلي ، فإن الاستفادة من جميع النوى الثمانية من TPU يوفر أداءً أفضل مقارنةً باستخدام نواة واحدة فقط.
الاستشهادات:[1] https://www.datacamp.com/blog/tpu-vs-gpu-ai
[2] https://eng.snap.com/training-models-with-tpus
[3]
[4] https://cloud.google.com/blog/products/ai-machine-learning/an-in-ed-look-at-googles-first-tensor-processing-unit-tpu
[5] https://www.linkedin.com/pulse/gpus-vs-tpus-comprehmuny-comparison-neural-network-workloads-joel
[6]
[7] https://cloud.google.com/blog/products/compute/performance-per-dollar-of-gpus-and-tpus-for-ai-
[8] https://lightning.ai/docs/pytorch/1.6.0/accelerators/tpu.html