Träning på en TPU -kärna kontra åtta kan påverka prestandan på grund av TPU: s distribuerade natur. Varje TPU har åtta kärnor, och dessa kärnor är optimerade för parallell bearbetning av tensoroperationer, som är grundläggande för neurala nätverksberäkningar [8]. När man använder en enda TPU -kärna tränar modellen på den specifika kärnan och utnyttjar sin optimerade arkitektur för matris multiplicerar [8]. Men när du använder alla åtta kärnor kan träningsprocessen distribuera över dessa kärnor, vilket potentiellt kan leda till snabbare träningstider på grund av parallellisering.
I allmänhet möjliggör användning av flera kärnor bättre användning av TPU: s resurser, såsom bandbredd för högre minne och sammankopplingar, vilket kan förbättra den totala utbildningsgenomströmningen [2]. Detta är särskilt fördelaktigt för storskaliga modeller eller datasätt där parallellbehandling kan minska träningstiden avsevärt. Den faktiska prestationsförstärkningen beror emellertid på hur väl modellen och data är optimerade för distribuerad träning på TPU: er.
I vissa fall, om modellen eller data inte är väl lämpade för parallellisering över flera kärnor, kanske prestationsskillnaden inte är så uttalad. Dessutom kan faktorer som I/O -flaskhalsar eller modellkomplexitet påverka effektiviteten av att använda flera TPU -kärnor [2]. För de flesta maskininlärningsuppgifter erbjuder man dock att använda alla åtta kärnor i en TPU vanligtvis bättre prestanda jämfört med att använda bara en kärna.
Citeringar:[1] https://www.datacamp.com/blog/tpu-vs-gpu-ai
[2] https://eng.snap.com/training-models-with-tpus
[3] https://blog.google/technology/ai/differference-cpu-gpu-tpu-trillium/
[4] https://cloud.google.com/blog/products/ai-machine-learning/an-in-depth-look-at-googles-first-tensor-processing-unit-tpu
]
[6] https://www.reddit.com/r/machinelearning/comments/19e8d1a/d_when_does_it_make_sense_to_train_on_tpu
[7] https://cloud.google.com/blog/products/compute/performance-per-dollar-of-gpus-and-tpus-for-ai-interence
[8] https://light.ai/docs/pytorch/1.6.0/accelerators/tpu.html