Pytorch Lightning spracováva paralelizmus údajov na TPU využitím schopností architektúry TPU, ktorá je optimalizovaná pre vysoko výkonné pracovné zaťaženie, ako sú násobky matrice a konvolúcie. Pri výcviku na TPU, Lightning automaticky spravuje distribúciu údajov v jadrách TPU, čím sa zabezpečí, že každá jadro spracuje príslušnú časť údajov. Dosahuje sa to bez potreby manuálnej implementácie distribuovaných vzorkovačov, pretože blesk vkladá správne vzorkovače pre školenie TPU [7].
V nastavení TPU sa model replikuje na každom zariadení a dátový paralelný tréning umožňuje modelu zmestiť sa na jedno zariadenie TPU a zároveň sa replikovať na viacerých zariadeniach v distribuovanej konfigurácii [6]. Tento prístup umožňuje efektívne paralelné spracovanie veľkých súborov údajov, čo výrazne urýchľuje časy tréningu.
Ak chcete využiť TPU s bleskom Pytorch, môžete nakonfigurovať `tréner` zadaním počtu jadier TPU. Napríklad na použitie úplného tPU podu s 8 jadrami by ste nastavili `tpu_cores = 8` v inicializácii` trénera [7]. Toto nastavenie umožňuje bezproblémový paralelizmus údajov bez vyžadovania explicitného riadenia distribúcie údajov v jadrách TPU.
Pre optimálny výkon na TPU je však rozhodujúce zvážiť faktory, ako je veľkosť dávky, hodnotenie tenzoru, dynamické tvary tenzora a obmedzenia zdrojov, aby sa zabezpečilo efektívne využitie zdrojov TPU [9].
Citácie:[1] https://pytorch-lightning.readthedocs.io/en/1.5.10/advanced/multi_gpu.html
[2] https://pytorch-lightning.readthedocs.io/en/1.1.8/multi_gpu.html
[3] https://pytorch-lightning.readthedocs.io/en/0.9.0/multi_gpu.html
[4] https://github.com/lighning-ai/pytorch-lighning/issues/11922
[5] https://www.restack.io/p/pytorch-lighting-answer-Multi-cpu-usage-cat-ai
[6] https://cloud.google.com/blog/topics/Developers-practitioners/Scaling-deep-learning-workloads-pytorch-xla-and--cloud-tpu-vm
[7] https://lighning.ai/docs/pytorch/1.5.9/advanced/tpu.html
[8] https://forums.fast.ai/t/how-to-create-a-callback-using-utorch-Multiprocessing-tpu/56264?page=7
[9] https://www.Restack.io/p/pytorch-lightning-answer-set-device-cat-ai