T3 : Suivi et Déclenchement Transparents pour un Chevauchement Finement Granulaire entre Calcul et Collectives
T3: Transparent Tracking & Triggering for Fine-grained Overlap of Compute & Collectives
January 30, 2024
Auteurs: Suchita Pati, Shaizeen Aga, Mahzabeen Islam, Nuwan Jayasena, Matthew D. Sinclair
cs.AI
Résumé
Les grands modèles de langage reposent de plus en plus sur des techniques distribuées pour leur entraînement et leur inférence. Ces techniques nécessitent une communication entre les dispositifs, ce qui peut réduire l'efficacité de la mise à l'échelle à mesure que le nombre de dispositifs augmente. Bien que certaines techniques distribuées puissent se chevaucher et ainsi masquer cette communication avec des calculs indépendants, des techniques telles que le parallélisme tensoriel (TP) sérialisent intrinsèquement la communication avec l'exécution du modèle. Une approche pour masquer cette communication sérialisée consiste à l'entrelacer de manière fine avec l'opération productrice (des données communiquées). Cependant, cet entrelacement fin entre communication et calcul dans le logiciel peut être difficile. De plus, comme pour toute exécution concurrente, il nécessite que les ressources de calcul et de mémoire soient partagées entre le calcul et la communication, ce qui entraîne une contention des ressources et réduit l'efficacité du chevauchement.
Pour surmonter ces défis, nous proposons T3, qui applique une co-conception matérielle-logicielle pour chevaucher de manière transparente la communication sérialisée tout en minimisant la contention des ressources avec le calcul. T3 fusionne de manière transparente les opérations productrices avec la communication subséquente via une simple configuration de l'espace d'adressage de sortie du producteur et nécessite des modifications logicielles mineures. Au niveau matériel, T3 ajoute un mécanisme léger de suivi et de déclenchement pour orchestrer le calcul et la communication du producteur. Il utilise en outre des mémoires améliorées pour le calcul pour le calcul associé à la communication. En conséquence, T3 réduit la contention des ressources et chevauche efficacement la communication sérialisée avec le calcul. Pour des modèles de transformateurs importants comme T-NLG, T3 accélère les sous-couches intensives en communication de 30 % en moyenne géométrique (max 47 %) et réduit le mouvement des données de 22 % en moyenne géométrique (max 36 %). De plus, les avantages de T3 persistent à mesure que les modèles évoluent : une moyenne géométrique de 29 % pour les sous-couches dans des modèles de 500 milliards de paramètres simulés, PALM et MT-NLG.
English
Large Language Models increasingly rely on distributed techniques for their
training and inference. These techniques require communication across devices
which can reduce scaling efficiency as the number of devices increases. While
some distributed techniques can overlap, and thus, hide this communication with
independent computations, techniques such as Tensor Parallelism (TP) inherently
serialize communication with model execution. One approach to hide this
serialized communication is to interleave it with the producer operation (of
the communicated data) in a fine-grained manner. However, this fine-grained
interleaving of communication and computation in software can be difficult.
Furthermore, as with any concurrent execution, it requires compute and memory
resources to be shared between computation and communication, causing resource
contention that reduces overlapping efficacy.
To overcome these challenges, we propose T3 which applies hardware-software
co-design to transparently overlap serialized communication while minimizing
resource contention with compute. T3 transparently fuses producer operations
with the subsequent communication via a simple configuration of the producer's
output address space and requires minor software changes. At the hardware
level, T3 adds a lightweight track and trigger mechanism to orchestrate the
producer's compute, and communication. It further uses compute-enhanced
memories for communication's attendant compute. As a result, T3 reduces
resource contention, and efficiently overlaps serialized communication with
computation. For important Transformer models like T-NLG, T3 speeds up
communication-heavy sublayers by 30% geomean (max 47%) and reduces data
movement by 22% geomean (max 36%). Furthermore, T3's benefits persist as models
scale: geomean 29% for sublayers in sim500-billion parameter models, PALM
and MT-NLG.