From 471e91b0ba7b383d7198d2f9f2f36acef647f811 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Thu, 23 May 2024 13:10:10 +0000 Subject: [PATCH 01/19] first commit for ring attention --- src/nanotron/config/parallelism_config.py | 1 + src/nanotron/models/llama.py | 213 +++++++++--- src/nanotron/parallel/context.py | 48 ++- src/nanotron/parallel/tied_parameters.py | 2 +- .../ring_flash_attn/ring_flash_attn.py | 282 +++++++++++++++ src/nanotron/ring_flash_attn/utils.py | 132 +++++++ .../ring_flash_attn/zigzag_ring_flash_attn.py | 325 ++++++++++++++++++ src/nanotron/trainer.py | 5 +- 8 files changed, 948 insertions(+), 60 deletions(-) create mode 100644 src/nanotron/ring_flash_attn/ring_flash_attn.py create mode 100644 src/nanotron/ring_flash_attn/utils.py create mode 100644 src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py diff --git a/src/nanotron/config/parallelism_config.py b/src/nanotron/config/parallelism_config.py index 5912425b..1fc2cced 100644 --- a/src/nanotron/config/parallelism_config.py +++ b/src/nanotron/config/parallelism_config.py @@ -28,6 +28,7 @@ class ParallelismArgs: dp: int pp: int tp: int + sp: int pp_engine: Optional[PipelineEngine] = None tp_mode: Optional[TensorParallelLinearMode] = None tp_linear_async_communication: Optional[bool] = None diff --git a/src/nanotron/models/llama.py b/src/nanotron/models/llama.py index 32aab9cd..dfe163c3 100644 --- a/src/nanotron/models/llama.py +++ b/src/nanotron/models/llama.py @@ -14,7 +14,7 @@ # limitations under the License. """PyTorch LLaMa model.""" -from typing import Dict, Optional, Union, List +from typing import Dict, Optional, Union import torch from torch import nn @@ -32,6 +32,7 @@ from nanotron.parallel.parameters import NanotronParameter from nanotron.parallel.pipeline_parallel.block import PipelineBlock, TensorPointer from nanotron.parallel.pipeline_parallel.p2p import P2P +from nanotron.parallel.tensor_parallel.distributed_differentiable_primitives import differentiable_all_reduce_sum from nanotron.parallel.tensor_parallel.functional import sharded_cross_entropy from nanotron.parallel.tensor_parallel.nn import ( TensorParallelColumnLinear, @@ -40,9 +41,13 @@ TensorParallelRowLinear, ) from nanotron.random import RandomStates +from nanotron.ring_flash_attn.ring_flash_attn import ring_flash_attn_func +from nanotron.ring_flash_attn.utils import normal_split, zigzag_split +from nanotron.ring_flash_attn.zigzag_ring_flash_attn import zigzag_ring_flash_attn_func from nanotron.scaling.parametrization import SpectralMupParametrizator, StandardParametrizator from nanotron.utils import checkpoint_method +zigzag = True logger = logging.get_logger(__name__) @@ -172,6 +177,61 @@ def forward(self, hidden_states): # [seq_length, batch_size, hidden_dim] return {"hidden_states": hidden_states} +class RingFlashAttention(nn.Module): + def __init__(self, config: LlamaConfig, pg: dist.ProcessGroup): + super().__init__() + # TODO @thomasw21: GPT has a weird `d_kv` config which I'm guessing is essentically a `d_qkv` + assert ( + config.hidden_size % config.num_attention_heads == 0 + ), f"Hidden size {config.hidden_size} must be divisible by number of attention heads {config.num_attention_heads}." + self.d_qk = config.hidden_size // config.num_attention_heads + self.d_v = config.hidden_size // config.num_attention_heads + self.is_using_mup = config.is_using_mup + self.checkpoint_attention = False # Because flash_attn already does checkpointing + self.pg = pg + + @checkpoint_method(attr_name="checkpoint_attention") + def forward( + self, + local_q: torch.Tensor, # [batch_size, q_length, n_local_q_heads, inner_dim] + local_k: torch.Tensor, # [batch_size, kv_length, n_local_kv_heads, inner_dim] + local_v: torch.Tensor, # [batch_size, kv_length, n_local_kv_heads, inner_dim] + ): + # NOTE: this scale is for µTransfer, + # in SP, we use sqrt(1/d_h) + # softmax_scale = 1 / local_q.shape[-1] if self.is_using_mup else None + causal = True + + if zigzag: + ring_out, _, _ = zigzag_ring_flash_attn_func( + local_q, + local_k, + local_v, + dropout_p=0.0, + causal=causal, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=True, + group=self.pg, + ) + else: + ring_out, _, _ = ring_flash_attn_func( + local_q, + local_k, + local_v, + dropout_p=0.0, + causal=causal, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=True, + group=self.pg, + ) + assert ring_out.requires_grad + return ring_out + + class CoreAttention(nn.Module): def __init__(self, config: LlamaConfig, parallel_config: Optional[ParallelismArgs], layer_idx: int): super().__init__() @@ -260,6 +320,7 @@ def __init__( config: LlamaConfig, parallel_config: Optional[ParallelismArgs], tp_pg: dist.ProcessGroup, + sp_pg: dist.ProcessGroup, layer_idx: int, ): from flash_attn.layers.rotary import RotaryEmbedding as FlashRotaryEmbedding @@ -334,12 +395,19 @@ def __init__( async_communication=tp_linear_async_communication, ) - self.attention = CoreAttention( - config, - parallel_config=parallel_config, - layer_idx=layer_idx, - ) - + if not sp_pg.size() > 1: + self.attention = CoreAttention( + config, + parallel_config=parallel_config, + layer_idx=layer_idx, + ) + # ring attention + else: + self.attention = RingFlashAttention( + config, + pg=sp_pg, + ) + self.sp_pg = sp_pg self.prefill_kv_len = ( config.max_position_embeddings ) # TODO @nouamane: compute based on free memory, because in rope we can surpass max_position_embeddings @@ -348,6 +416,7 @@ def forward( self, hidden_states, # [seq_length, batch_size, hidden_size] sequence_mask, # [batch_size, seq_length] + position_ids: Optional[torch.LongTensor] = None, ): from flash_attn import bert_padding from flash_attn.flash_attn_interface import ( @@ -554,41 +623,46 @@ def forward( ) else: # Training case - # Apply rotary embeddings to query/key states - # NOTE: The layout is different from models/llama.py which is [batch_size, num_heads, seq_length, d_qk] - # Here it is, [batch_size, seq_length, num_heads, d_qk] - # [2, batch_size, seq_length, num_heads, d_qk] - key_value_states = torch.cat([key_states.unsqueeze(0), value_states.unsqueeze(0)], dim=0) - # [batch_size, seq_length, 2, num_heads, d_qk] - key_value_states = key_value_states.permute(1, 2, 0, 3, 4).contiguous() - query_states, key_value_states = self.flash_rotary_embedding(query_states, kv=key_value_states) - # [batch_size, seq_length, num_heads, d_qk] - key_states, value_states = torch.split(key_value_states, 1, dim=2) - - q_sequence_mask = sequence_mask - kv_sequence_mask = sequence_mask + # apply rotary embedding. Will adapt to flash rotary embedding later + if self.sp_pg.size() > 1: + query_states = self.rotary_embedding(query_states, position_ids=position_ids) + key_states = self.rotary_embedding(key_states, position_ids=position_ids) + else: + # Apply rotary embeddings to query/key states + # NOTE: The layout is different from models/llama.py which is [batch_size, num_heads, seq_length, d_qk] + # Here it is, [batch_size, seq_length, num_heads, d_qk] + # [2, batch_size, seq_length, num_heads, d_qk] + key_value_states = torch.cat([key_states.unsqueeze(0), value_states.unsqueeze(0)], dim=0) + # [batch_size, seq_length, 2, num_heads, d_qk] + key_value_states = key_value_states.permute(1, 2, 0, 3, 4).contiguous() + query_states, key_value_states = self.flash_rotary_embedding(query_states, kv=key_value_states) + # [batch_size, seq_length, num_heads, d_qk] + key_states, value_states = torch.split(key_value_states, 1, dim=2) kv_length = key_states.shape[1] - # [batch_size, seq_length, num_heads, d_qk] - # Shaping for use in `flash-attn` version of flash-attn: `flash_attn_unpadded_func` - query_states = query_states.view( - batch_size * q_length, self.n_local_q_heads, self.d_qk - ) # [batch_size * q_length, self.n_heads, d_qk] - - key_states = key_states.view( - batch_size * kv_length, self.n_local_kv_heads, self.d_qk - ) # [batch_size * kv_length, self.n_heads, d_qk] - value_states = value_states.view( - batch_size * kv_length, self.n_local_kv_heads, self.d_v - ) # [batch_size * kv_length, self.n_heads, d_v] - - attention_output = self.attention( - query_states=query_states, - key_states=key_states, - value_states=value_states, - q_sequence_mask=q_sequence_mask, - kv_sequence_mask=kv_sequence_mask, - ) + + ## ring attention + if self.sp_pg.size() > 1: + key_states = key_states.view(batch_size, kv_length, self.n_local_kv_heads, self.d_qk) + value_states = value_states.view(batch_size, kv_length, self.n_local_kv_heads, self.d_v) + + attention_output = self.attention( + query_states, + key_states, + value_states, + ) + assert attention_output.requires_grad + else: + query_states = query_states.view(batch_size * q_length, self.n_local_q_heads, self.d_qk) + key_states = key_states.view(batch_size * kv_length, self.n_local_kv_heads, self.d_qk) + value_states = value_states.view(batch_size * kv_length, self.n_local_kv_heads, self.d_v) + attention_output = self.attention( + query_states=query_states, + key_states=key_states, + value_states=value_states, + q_sequence_mask=sequence_mask, + kv_sequence_mask=sequence_mask, + ) attention_output = ( attention_output.contiguous().view(batch_size, q_length, self.n_local_q_heads * self.d_v).transpose(0, 1) @@ -604,6 +678,7 @@ def __init__( config: LlamaConfig, parallel_config: Optional[ParallelismArgs], tp_pg: dist.ProcessGroup, + sp_pg: dist.ProcessGroup, layer_idx: int, ): super().__init__() @@ -612,6 +687,7 @@ def __init__( config=config, parallel_config=parallel_config, tp_pg=tp_pg, + sp_pg=sp_pg, layer_idx=layer_idx, ) @@ -622,11 +698,12 @@ def forward( self, hidden_states: Union[torch.Tensor, TensorPointer], sequence_mask: Union[torch.Tensor, TensorPointer], + position_ids: Optional[torch.LongTensor] = None, ) -> Dict[str, Union[torch.Tensor, TensorPointer]]: residual = hidden_states hidden_states = self.input_layernorm(hidden_states) - output = self.attn(hidden_states=hidden_states, sequence_mask=sequence_mask) + output = self.attn(hidden_states=hidden_states, sequence_mask=sequence_mask, position_ids=position_ids) hidden_states = output["hidden_states"] hidden_states = hidden_states + residual @@ -638,6 +715,7 @@ def forward( return { "hidden_states": hidden_states, "sequence_mask": output["sequence_mask"], + "position_ids": position_ids, } @@ -682,6 +760,9 @@ def __init__( ): super().__init__() + if parallel_context.sp_pg.size() > 1: + log_rank("Using ring attention", logger=logger, level=logging.INFO, rank=0) + # Declare all the nodes self.p2p = P2P(parallel_context.pp_pg, device=torch.device("cuda")) self.config = config @@ -713,10 +794,11 @@ def __init__( "config": config, "parallel_config": parallel_config, "tp_pg": parallel_context.tp_pg, + "sp_pg": parallel_context.sp_pg, "layer_idx": layer_idx, }, - module_input_keys={"hidden_states", "sequence_mask"}, - module_output_keys={"hidden_states", "sequence_mask"}, + module_input_keys={"hidden_states", "sequence_mask", "position_ids"}, + module_output_keys={"hidden_states", "sequence_mask", "position_ids"}, ) for layer_idx in range(config.num_hidden_layers) ] @@ -767,13 +849,33 @@ def forward_with_hidden_states( input_ids: Union[torch.Tensor, TensorPointer], # [batch_size, seq_length] input_mask: Union[torch.Tensor, TensorPointer], # [batch_size, seq_length] ): + if isinstance(input_ids, torch.Tensor): + batch_size, seq_length = input_ids.shape + position_ids = torch.arange(seq_length, device=input_ids.device).unsqueeze(0).expand(batch_size, -1) + # split input if using ring attention + if self.parallel_context.sp_pg.size() > 1: + world_size = self.parallel_context.sp_pg.size() + rank = dist.get_rank(self.parallel_context.sp_pg) + + # zigzag split + if zigzag: + input_ids, input_mask, position_ids = zigzag_split( + rank, world_size, input_ids, input_mask, position_ids + ) + # normal split + else: + input_ids, input_mask, position_ids = normal_split( + rank, world_size, input_ids, input_mask, position_ids + ) + else: + position_ids = TensorPointer(input_ids.group_rank) # all tensors are optional as most ranks don't need anything from the dataloader. - output = self.token_position_embeddings(input_ids=input_ids, input_mask=input_mask) hidden_encoder_states = { "hidden_states": output["input_embeds"], "sequence_mask": input_mask, + "position_ids": position_ids, } for encoder_block in self.decoder: hidden_encoder_states = encoder_block(**hidden_encoder_states) @@ -831,9 +933,10 @@ def masked_mean(loss, label_mask, dtype): class Loss(nn.Module): - def __init__(self, tp_pg: dist.ProcessGroup): + def __init__(self, tp_pg: dist.ProcessGroup, sp_pg: dist.ProcessGroup): super().__init__() self.tp_pg = tp_pg + self.sp_pg = sp_pg def forward( self, @@ -844,6 +947,18 @@ def forward( # Megatron by defaults cast everything in fp32. `--f16-lm-cross-entropy` is an option you can use to keep current precision. # https://github.com/NVIDIA/Megatron-LM/blob/f267e6186eae1d6e2055b412b00e2e545a8e896a/megatron/model/gpt_model.py#L38 + # ring attention: split the label + if isinstance(label_ids, torch.Tensor) and self.sp_pg.size() > 1: + world_size = self.sp_pg.size() + rank = dist.get_rank(self.sp_pg) + + # zigzag split + if zigzag: + label_ids, label_mask = zigzag_split(rank, world_size, label_ids, label_mask) + # normal split + else: + label_ids, label_mask = normal_split(rank, world_size, label_ids, label_mask) + loss = sharded_cross_entropy( sharded_logits, label_ids.transpose(0, 1).contiguous(), group=self.tp_pg, dtype=torch.float ).transpose(0, 1) @@ -851,6 +966,12 @@ def forward( loss = masked_mean(loss, label_mask, dtype=torch.float) # I think indexing causes a sync we don't actually want # loss = loss[label_mask].sum() + + # Calculate the average loss over sp + if self.sp_pg.size() > 1: + differentiable_all_reduce_sum(loss, self.sp_pg) + loss /= torch.tensor(self.sp_pg.size(), dtype=loss.dtype, device=loss.device) + return {"loss": loss} @@ -867,7 +988,7 @@ def __init__( self.loss = PipelineBlock( p2p=self.model.p2p, module_builder=Loss, - module_kwargs={"tp_pg": parallel_context.tp_pg}, + module_kwargs={"tp_pg": parallel_context.tp_pg, "sp_pg": parallel_context.sp_pg}, module_input_keys={ "sharded_logits", "label_ids", diff --git a/src/nanotron/parallel/context.py b/src/nanotron/parallel/context.py index e04e26f5..1a1b8444 100644 --- a/src/nanotron/parallel/context.py +++ b/src/nanotron/parallel/context.py @@ -1,5 +1,5 @@ import os -from typing import Literal, Tuple, Annotated +from typing import Literal, Tuple import numpy as np import torch @@ -15,11 +15,14 @@ def __init__( tensor_parallel_size: int, pipeline_parallel_size: int, data_parallel_size: int, + sequence_parallel_size: int, expert_parallel_size: int = 1, backend: DistributedBackend = "nccl", ): """Initialize parallel context.""" - num_gpus_per_model = tensor_parallel_size * pipeline_parallel_size * expert_parallel_size + num_gpus_per_model = ( + tensor_parallel_size * pipeline_parallel_size * expert_parallel_size * sequence_parallel_size + ) world_size = int(os.environ["WORLD_SIZE"]) assert ( @@ -41,6 +44,7 @@ def __init__( self.tensor_parallel_size = tensor_parallel_size self.pipeline_parallel_size = pipeline_parallel_size self.data_parallel_size = data_parallel_size + self.sequence_parallel_size = sequence_parallel_size self.expert_parallel_size = expert_parallel_size self._groups = {} @@ -68,6 +72,7 @@ def _init_parallel_groups(self): world_size = int(os.environ["WORLD_SIZE"]) ranks = np.arange(0, world_size).reshape( ( + self.sequence_parallel_size, self.expert_parallel_size, self.pipeline_parallel_size, self.data_parallel_size, @@ -77,24 +82,44 @@ def _init_parallel_groups(self): self.world_ranks_to_pg = {} # Relevant process groups containing the current rank - self.tp_pg = self.create_new_group(ranks.transpose((0, 1, 2, 3)).reshape((-1, self.tensor_parallel_size))) - self.dp_pg = self.create_new_group(ranks.transpose((3, 0, 1, 2)).reshape((-1, self.data_parallel_size))) - self.pp_pg = self.create_new_group(ranks.transpose((2, 3, 0, 1)).reshape((-1, self.pipeline_parallel_size))) - self.expert_pg = self.create_new_group(ranks.transpose((1, 2, 3, 0)).reshape((-1, self.expert_parallel_size))) - # model parallel group = combination of tp and pp and exp for a given dp rank + self.tp_pg = self.create_new_group(ranks.transpose((0, 1, 2, 3, 4)).reshape((-1, self.tensor_parallel_size))) + self.dp_pg = self.create_new_group(ranks.transpose((4, 0, 1, 2, 3)).reshape((-1, self.data_parallel_size))) + self.pp_pg = self.create_new_group(ranks.transpose((3, 4, 0, 1, 2)).reshape((-1, self.pipeline_parallel_size))) + self.expert_pg = self.create_new_group( + ranks.transpose((2, 3, 4, 0, 1)).reshape((-1, self.expert_parallel_size)) + ) + self.sp_pg = self.create_new_group(ranks.transpose((1, 2, 3, 4, 0)).reshape((-1, self.sequence_parallel_size))) self.mp_pg = self.create_new_group( - [ranks[:, :, dp_rank, :].reshape(-1) for dp_rank in range(self.data_parallel_size)] + [ranks[:, :, :, dp_rank, :].reshape(-1) for dp_rank in range(self.data_parallel_size)] ) - self.tp_and_expert_pg = self.create_new_group( [ - ranks[:, pp_rank, dp_rank, :].reshape(-1) + ranks[sp_rank, :, pp_rank, dp_rank, :].reshape(-1) for pp_rank in range(self.pipeline_parallel_size) for dp_rank in range(self.data_parallel_size) + for sp_rank in range(self.sequence_parallel_size) ] ) + # self.tp_pg = self.create_new_group(ranks.transpose((0, 1, 2, 3)).reshape((-1, self.tensor_parallel_size))) + # self.dp_pg = self.create_new_group(ranks.transpose((3, 0, 1, 2)).reshape((-1, self.data_parallel_size))) + # self.pp_pg = self.create_new_group(ranks.transpose((2, 3, 0, 1)).reshape((-1, self.pipeline_parallel_size))) + # self.expert_pg = self.create_new_group(ranks.transpose((1, 2, 3, 0)).reshape((-1, self.expert_parallel_size))) + + # model parallel group = combination of tp and pp and exp for a given dp rank + # self.mp_pg = self.create_new_group( + # [ranks[:, :, dp_rank, :].reshape(-1) for dp_rank in range(self.data_parallel_size)] + # ) + + # self.tp_and_expert_pg = self.create_new_group( + # [ + # ranks[:, pp_rank, dp_rank, :].reshape(-1) + # for pp_rank in range(self.pipeline_parallel_size) + # for dp_rank in range(self.data_parallel_size) + # ] + # ) + self.world_rank_matrix: np.ndarray = ranks def create_new_group(self, all_groups_ranks: np.ndarray) -> dist.ProcessGroup: @@ -137,6 +162,7 @@ def destroy(self): def get_global_rank( self, + sp_rank: int, ep_rank: int, pp_rank: int, dp_rank: int, @@ -152,4 +178,4 @@ def get_global_rank( :return: numpy.int64, The global rank. """ - return self.world_rank_matrix[ep_rank, pp_rank, dp_rank, tp_rank] \ No newline at end of file + return self.world_rank_matrix[sp_rank, ep_rank, pp_rank, dp_rank, tp_rank] diff --git a/src/nanotron/parallel/tied_parameters.py b/src/nanotron/parallel/tied_parameters.py index 6aa0cbf5..873238b1 100644 --- a/src/nanotron/parallel/tied_parameters.py +++ b/src/nanotron/parallel/tied_parameters.py @@ -50,7 +50,7 @@ def tie_parameters( dp_ranks = tuple( sorted( { - parallel_context.get_local_ranks(world_rank=global_rank)[2] + parallel_context.get_local_ranks(world_rank=global_rank)[3] for _, global_ranks in ties for global_rank in global_ranks } diff --git a/src/nanotron/ring_flash_attn/ring_flash_attn.py b/src/nanotron/ring_flash_attn/ring_flash_attn.py new file mode 100644 index 00000000..48b394f8 --- /dev/null +++ b/src/nanotron/ring_flash_attn/ring_flash_attn.py @@ -0,0 +1,282 @@ +import torch +from flash_attn.flash_attn_interface import _flash_attn_backward, _flash_attn_forward + +from .utils import RingComm, update_out_and_lse + + +# copy from https://github.com/zhuzilin/ring-flash-attention +def ring_flash_attn_forward( + process_group, + q: torch.Tensor, + k: torch.Tensor, + v: torch.Tensor, + softmax_scale, + dropout_p=0, + causal=True, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, +): + comm = RingComm(process_group) + + out = None + lse = None + + next_k, next_v = None, None + + for step in range(comm.world_size): + if step + 1 != comm.world_size: + next_k: torch.Tensor = comm.send_recv(k) + next_v: torch.Tensor = comm.send_recv(v) + comm.commit() + + if not causal or step <= comm.rank: + block_out, _, _, _, _, block_lse, _, _ = _flash_attn_forward( + q, + k, + v, + dropout_p, + softmax_scale, + causal=causal and step == 0, + window_size=window_size, + alibi_slopes=alibi_slopes, + return_softmax=True and dropout_p > 0, + ) + out, lse = update_out_and_lse(out, lse, block_out, block_lse) + + if step + 1 != comm.world_size: + comm.wait() + k = next_k + v = next_v + + out = out.to(q.dtype) + lse = lse.squeeze(dim=-1).transpose(1, 2) + return out, lse + + +def ring_flash_attn_backward( + process_group, + doubt, + q, + k, + v, + out, + softmax_lse, + softmax_scale, + dropout_p=0, + causal=True, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, +): + kv_comm = RingComm(process_group) + d_kv_comm = RingComm(process_group) + dq, dk, dv = None, None, None + next_dk, next_dv = None, None + + block_dq_buffer = torch.empty(q.shape, dtype=q.dtype, device=q.device) + block_dk_buffer = torch.empty(k.shape, dtype=k.dtype, device=k.device) + block_dv_buffer = torch.empty(v.shape, dtype=v.dtype, device=v.device) + + next_dk, next_dv = None, None + next_k, next_v = None, None + + for step in range(kv_comm.world_size): + if step + 1 != kv_comm.world_size: + next_k = kv_comm.send_recv(k) + next_v = kv_comm.send_recv(v) + kv_comm.commit() + if step <= kv_comm.rank or not causal: + bwd_causal = causal and step == 0 + _flash_attn_backward( + doubt, + q, + k, + v, + out, + softmax_lse, + block_dq_buffer, + block_dk_buffer, + block_dv_buffer, + dropout_p, + softmax_scale, + bwd_causal, + window_size, + alibi_slopes, + deterministic, + rng_state=None, + ) + + if dq is None: + dq = block_dq_buffer.to(torch.float32) + dk = block_dk_buffer.to(torch.float32) + dv = block_dv_buffer.to(torch.float32) + else: + dq += block_dq_buffer + d_kv_comm.wait() + dk = block_dk_buffer + next_dk + dv = block_dv_buffer + next_dv + elif step != 0: + d_kv_comm.wait() + dk = next_dk + dv = next_dv + + if step + 1 != kv_comm.world_size: + kv_comm.wait() + k = next_k + v = next_v + + next_dk = d_kv_comm.send_recv(dk) + next_dv = d_kv_comm.send_recv(dv) + d_kv_comm.commit() + + d_kv_comm.wait() + + return dq.to(torch.bfloat16), next_dk.to(q.dtype), next_dv.to(q.dtype) + + +class RingFlashAttnFunc(torch.autograd.Function): + @staticmethod + def forward( + ctx, + q, + k, + v, + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_softmax, + group, + ): + if softmax_scale is None: + softmax_scale = q.shape[-1] ** (-0.5) + + assert alibi_slopes is None + k = k.contiguous() + v = v.contiguous() + out, softmax_lse = ring_flash_attn_forward( + group, + q, + k, + v, + softmax_scale=softmax_scale, + dropout_p=dropout_p, + causal=causal, + window_size=window_size, + alibi_slopes=alibi_slopes, + deterministic=False, + ) + # this should be out_padded + ctx.save_for_backward(q, k, v, out, softmax_lse) + ctx.dropout_p = dropout_p + ctx.softmax_scale = softmax_scale + ctx.causal = causal + ctx.window_size = window_size + ctx.alibi_slopes = alibi_slopes + ctx.deterministic = deterministic + ctx.group = group + return out if not return_softmax else (out, softmax_lse, None) + + @staticmethod + def backward(ctx, doubt, *args): + q, k, v, out, softmax_lse = ctx.saved_tensors + dq, dk, dv = ring_flash_attn_backward( + ctx.group, + doubt, + q, + k, + v, + out, + softmax_lse, + softmax_scale=ctx.softmax_scale, + dropout_p=ctx.dropout_p, + causal=ctx.causal, + window_size=ctx.window_size, + alibi_slopes=ctx.alibi_slopes, + deterministic=ctx.deterministic, + ) + return dq, dk, dv, None, None, None, None, None, None, None, None + + +def ring_flash_attn_qkvpacked_func( + qkv, + dropout_p=0.0, + softmax_scale=None, + causal=False, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=False, + group=None, +): + return RingFlashAttnFunc.apply( + qkv[:, :, 0], + qkv[:, :, 1], + qkv[:, :, 2], + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_attn_probs, + group, + ) + + +def ring_flash_attn_kvpacked_func( + q, + kv, + dropout_p=0.0, + softmax_scale=None, + causal=False, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=False, + group=None, +): + return RingFlashAttnFunc.apply( + q, + kv[:, :, 0], + kv[:, :, 1], + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_attn_probs, + group, + ) + + +def ring_flash_attn_func( + q, + k, + v, + dropout_p=0.0, + softmax_scale=None, + causal=False, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=False, + group=None, +): + return RingFlashAttnFunc.apply( + q, + k, + v, + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_attn_probs, + group, + ) diff --git a/src/nanotron/ring_flash_attn/utils.py b/src/nanotron/ring_flash_attn/utils.py new file mode 100644 index 00000000..dacda6cf --- /dev/null +++ b/src/nanotron/ring_flash_attn/utils.py @@ -0,0 +1,132 @@ +from typing import Optional, Tuple + +import torch +import torch.distributed as dist +import torch.nn.functional as F + +__all__ = ["update_out_and_lse", "RingComm"] + +# copy from https://github.com/zhuzilin/ring-flash-attention +@torch.jit.script +def _update_out_and_lse( + out: torch.Tensor, + lse: torch.Tensor, + block_out: torch.Tensor, + block_lse: torch.Tensor, +) -> Tuple[torch.Tensor, torch.Tensor]: + + block_out = block_out.to(torch.float32) + block_lse = block_lse.transpose(-2, -1).unsqueeze(dim=-1) + + # new_lse = lse + torch.log(1 + torch.exp(block_lse - lse)) + # torch.exp(lse - new_lse) * out + torch.exp(block_lse - new_lse) * block_out + # For additional context and discussion, please refer to: + # https://github.com/zhuzilin/ring-flash-attention/pull/34#issuecomment-2076126795 + out = out - F.sigmoid(block_lse - lse) * (out - block_out) + lse = lse - F.logsigmoid(lse - block_lse) + + return out, lse + + +def update_out_and_lse( + out: Optional[torch.Tensor], + lse: Optional[torch.Tensor], + block_out: torch.Tensor, + block_lse: torch.Tensor, + slice_=None, +) -> Tuple[torch.Tensor, torch.Tensor]: + if out is None: + if slice_ is not None: + raise RuntimeError("first update_out_and_lse should not pass slice_ args") + out = block_out.to(torch.float32) + lse = block_lse.transpose(-2, -1).unsqueeze(dim=-1) + elif slice_ is not None: + slice_out, slice_lse = out[slice_], lse[slice_] + slice_out, slice_lse = _update_out_and_lse(slice_out, slice_lse, block_out, block_lse) + out[slice_], lse[slice_] = slice_out, slice_lse + else: + out, lse = _update_out_and_lse(out, lse, block_out, block_lse) + return out, lse + + +@torch.jit.script +def flatten_varlen_lse(lse, cu_seqlens): + new_lse = [] + for i in range(len(cu_seqlens) - 1): + start, end = cu_seqlens[i], cu_seqlens[i + 1] + new_lse.append(lse[i, :, : end - start]) + return torch.cat(new_lse, dim=1) + + +@torch.jit.script +def unflatten_varlen_lse(lse, cu_seqlens, max_seqlen: int): + num_seq = len(cu_seqlens) - 1 + num_head = lse.shape[-2] + new_lse = torch.empty((num_seq, max_seqlen, num_head, 1), dtype=torch.float32, device=lse.device) + for i in range(num_seq): + start, end = cu_seqlens[i], cu_seqlens[i + 1] + new_lse[i, : end - start] = lse[start:end] + return new_lse.squeeze(dim=-1).transpose(1, 2).contiguous() + + +class RingComm: + def __init__(self, process_group: dist.ProcessGroup): + self._process_group = process_group + self._ops = [] + self.rank = dist.get_rank(self._process_group) + self.world_size = dist.get_world_size(self._process_group) + self._reqs = None + + self.send_rank = (self.rank + 1) % self.world_size + self.recv_rank = (self.rank - 1) % self.world_size + + if process_group is not None: + self.send_rank = dist.get_global_rank(self._process_group, self.send_rank) + self.recv_rank = dist.get_global_rank(self._process_group, self.recv_rank) + + def send_recv(self, to_send: torch.Tensor, recv_tensor: Optional[torch.Tensor] = None) -> torch.Tensor: + if recv_tensor is None: + res = torch.empty_like(to_send) + else: + res = recv_tensor + + send_op = dist.P2POp(dist.isend, to_send, self.send_rank, group=self._process_group) + recv_op = dist.P2POp(dist.irecv, res, self.recv_rank, group=self._process_group) + self._ops.append(send_op) + self._ops.append(recv_op) + return res + + def commit(self): + if self._reqs is not None: + raise RuntimeError("commit called twice") + self._reqs = dist.batch_isend_irecv(self._ops) + + def wait(self): + if self._reqs is None: + raise RuntimeError("wait called before commit") + for req in self._reqs: + req.wait() + self._reqs = None + self._ops = [] + + +def extract_local(tensor: torch.Tensor, rank: int, world_size: int, dim: int = 1) -> torch.Tensor: + value_chunks = tensor.chunk(2 * world_size, dim=dim) + local_value = torch.cat([value_chunks[rank], value_chunks[2 * world_size - rank - 1]], dim=dim) + return local_value.contiguous() + + +def zigzag_split(rank: int, world_size: int, *args: torch.Tensor, dim=1) -> Tuple[torch.Tensor, ...]: + local_values = [] + for tensor in args: + local_value = extract_local(tensor, rank, world_size, dim) + local_values.append(local_value) + return tuple(local_values) + + +def normal_split(rank: int, world_size: int, *args: torch.Tensor, dim=1) -> Tuple[torch.Tensor, ...]: + local_values = [] + for value in args: + local_value = value.chunk(world_size, dim=dim)[rank] + local_values.append(local_value) + return tuple(local_values) diff --git a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py new file mode 100644 index 00000000..2ac1e4e3 --- /dev/null +++ b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py @@ -0,0 +1,325 @@ +import torch +from flash_attn.flash_attn_interface import _flash_attn_backward, _flash_attn_forward + +from .utils import RingComm, update_out_and_lse + + +# copy from https://github.com/zhuzilin/ring-flash-attention +def zigzag_ring_flash_attn_forward( + process_group, + q: torch.Tensor, + k: torch.Tensor, + v: torch.Tensor, + softmax_scale, + dropout_p=0, + causal=True, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, +): + assert causal is True, "zigzag ring is meaningless for causal=False" + comm = RingComm(process_group) + + block_seq_len = q.shape[1] // 2 + q1 = q[:, block_seq_len:] + + out = None + lse = None + next_k, next_v = None, None + + def forward(q, k, v, causal): + block_out, _, _, _, _, block_lse, _, _ = _flash_attn_forward( + q, + k, + v, + dropout_p, + softmax_scale, + causal=causal, + window_size=window_size, + alibi_slopes=alibi_slopes, + return_softmax=True and dropout_p > 0, + ) + return block_out, block_lse + + for step in range(comm.world_size): + if step + 1 != comm.world_size: + next_k: torch.Tensor = comm.send_recv(k) + next_v: torch.Tensor = comm.send_recv(v) + comm.commit() + + if step == 0: + block_out, block_lse = forward(q, k, v, causal=True) + out, lse = update_out_and_lse(out, lse, block_out, block_lse) + elif step <= comm.rank: + k0 = k[:, :block_seq_len] + v0 = v[:, :block_seq_len] + block_out, block_lse = forward(q, k0, v0, causal=False) + out, lse = update_out_and_lse(out, lse, block_out, block_lse) + else: + block_out, block_lse = forward(q1, k, v, causal=False) + out, lse = update_out_and_lse( + out, + lse, + block_out, + block_lse, + slice_=(slice(None), slice(block_seq_len, None)), + ) + + if step + 1 != comm.world_size: + comm.wait() + k = next_k + v = next_v + + out = out.to(q.dtype) + lse = lse.squeeze(dim=-1).transpose(1, 2) + return out, lse + + +def zigzag_ring_flash_attn_backward( + process_group, + doubt, + q, + k, + v, + out, + softmax_lse, + softmax_scale, + dropout_p=0, + causal=True, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, +): + assert causal is True, "zigzag ring is meaningless for causal=False" + kv_comm = RingComm(process_group) + d_kv_comm = RingComm(process_group) + dq, dk, dv = None, None, None + next_dk, next_dv = None, None + next_k, next_v = None, None + dk_comm_buffer, dv_comm_buffer = None, None + + dout1 = doubt.chunk(2, dim=1)[1] + q1 = q.chunk(2, dim=1)[1] + out1 = out.chunk(2, dim=1)[1] + softmax_lse1 = softmax_lse.chunk(2, dim=2)[1].contiguous() + block_seq_len = q.shape[1] // 2 + + # repeatedly allocating buffer may be slow... + dq_buffer = torch.empty(q.shape, dtype=q.dtype, device=q.device) + dk_buffer = torch.empty(k.shape, dtype=k.dtype, device=k.device) + dv_buffer = torch.empty(v.shape, dtype=v.dtype, device=v.device) + + def backward(doubt, q, k, v, out, softmax_lse, causal): + seqlen_q = q.shape[1] + seqlen_kv = k.shape[1] + _flash_attn_backward( + doubt, + q, + k, + v, + out, + softmax_lse, + dq_buffer[:, :seqlen_q], + dk_buffer[:, :seqlen_kv], + dv_buffer[:, :seqlen_kv], + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + rng_state=None, + ) + + for step in range(kv_comm.world_size): + if step + 1 != kv_comm.world_size: + next_k = kv_comm.send_recv(k) + next_v = kv_comm.send_recv(v) + kv_comm.commit() + + if step == 0: + backward(doubt, q, k, v, out, softmax_lse, causal=True) + dq = dq_buffer.to(torch.float32) + dk = dk_buffer.to(torch.float32) + dv = dv_buffer.to(torch.float32) + else: + if step <= kv_comm.rank: + k0 = k[:, :block_seq_len] + v0 = v[:, :block_seq_len] + backward(doubt, q, k0, v0, out, softmax_lse, causal=False) + dq += dq_buffer + else: + backward(dout1, q1, k, v, out1, softmax_lse1, causal=False) + # always use the first half in dq_buffer. + dq[:, block_seq_len:] += dq_buffer[:, :block_seq_len] + + d_kv_comm.wait() + dk_comm_buffer, dv_comm_buffer = dk, dv + dk, dv = next_dk, next_dv + + if step <= kv_comm.rank: + dk[:, :block_seq_len] += dk_buffer[:, :block_seq_len] + dv[:, :block_seq_len] += dv_buffer[:, :block_seq_len] + else: + dk += dk_buffer + dv += dv_buffer + + if step + 1 != kv_comm.world_size: + kv_comm.wait() + k = next_k + v = next_v + + next_dk = d_kv_comm.send_recv(dk, dk_comm_buffer) + next_dv = d_kv_comm.send_recv(dv, dv_comm_buffer) + d_kv_comm.commit() + + d_kv_comm.wait() + + return dq.to(q.dtype), next_dk.to(q.dtype), next_dv.to(q.dtype) + + +class ZigZagRingFlashAttnFunc(torch.autograd.Function): + @staticmethod + def forward( + ctx, + q, + k, + v, + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_softmax, + group, + ): + if softmax_scale is None: + softmax_scale = q.shape[-1] ** (-0.5) + + assert alibi_slopes is None + k = k.contiguous() + v = v.contiguous() + out, softmax_lse = zigzag_ring_flash_attn_forward( + group, + q, + k, + v, + softmax_scale=softmax_scale, + dropout_p=dropout_p, + causal=causal, + window_size=window_size, + alibi_slopes=alibi_slopes, + deterministic=False, + ) + # this should be out_padded + ctx.save_for_backward(q, k, v, out, softmax_lse) + ctx.dropout_p = dropout_p + ctx.softmax_scale = softmax_scale + ctx.causal = causal + ctx.window_size = window_size + ctx.alibi_slopes = alibi_slopes + ctx.deterministic = deterministic + ctx.group = group + return out if not return_softmax else (out, softmax_lse, None) + + @staticmethod + def backward(ctx, doubt, *args): + q, k, v, out, softmax_lse = ctx.saved_tensors + dq, dk, dv = zigzag_ring_flash_attn_backward( + ctx.group, + doubt, + q, + k, + v, + out, + softmax_lse, + softmax_scale=ctx.softmax_scale, + dropout_p=ctx.dropout_p, + causal=ctx.causal, + window_size=ctx.window_size, + alibi_slopes=ctx.alibi_slopes, + deterministic=ctx.deterministic, + ) + return dq, dk, dv, None, None, None, None, None, None, None, None + + +def zigzag_ring_flash_attn_qkvpacked_func( + qkv, + dropout_p=0.0, + softmax_scale=None, + causal=False, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=False, + group=None, +): + return ZigZagRingFlashAttnFunc.apply( + qkv[:, :, 0], + qkv[:, :, 1], + qkv[:, :, 2], + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_attn_probs, + group, + ) + + +def zigzag_ring_flash_attn_kvpacked_func( + q, + kv, + dropout_p=0.0, + softmax_scale=None, + causal=False, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=False, + group=None, +): + return ZigZagRingFlashAttnFunc.apply( + q, + kv[:, :, 0], + kv[:, :, 1], + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_attn_probs, + group, + ) + + +def zigzag_ring_flash_attn_func( + q, + k, + v, + dropout_p=0.0, + softmax_scale=None, + causal=False, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=False, + group=None, +): + return ZigZagRingFlashAttnFunc.apply( + q, + k, + v, + dropout_p, + softmax_scale, + causal, + window_size, + alibi_slopes, + deterministic, + return_attn_probs, + group, + ) diff --git a/src/nanotron/trainer.py b/src/nanotron/trainer.py index 0eda00dc..19b979cc 100644 --- a/src/nanotron/trainer.py +++ b/src/nanotron/trainer.py @@ -147,6 +147,7 @@ def __init__( pipeline_parallel_size=self.config.parallelism.pp, data_parallel_size=self.config.parallelism.dp, expert_parallel_size=self.config.parallelism.expert_parallel_size, + sequence_parallel_size=self.config.parallelism.sp, ) self.pre_init() @@ -234,7 +235,7 @@ def __init__( # Setup tensorboard write and log writers on output rank self.logger_ranks = self.parallel_context.get_global_rank( - ep_rank=0, pp_rank=self.unwrapped_model.output_pp_rank, dp_rank=0, tp_rank=0 + ep_rank=0, pp_rank=self.unwrapped_model.output_pp_rank, dp_rank=0, tp_rank=0, sp_rank=0 ).flatten() self.loggerwriter = self.setup_log_writers() @@ -440,7 +441,6 @@ def train( # Checkpoint if self.iteration_step % self.config.checkpoints.checkpoint_interval == 0: self.save_checkpoint() - dist.barrier() # let's wait for everyone before leaving self.post_training() @@ -907,6 +907,7 @@ def mark_tied_parameters( target, ( parallel_context.get_global_rank( + sp_rank=dist.get_rank(parallel_context.sp_pg), ep_rank=dist.get_rank(parallel_context.expert_pg), pp_rank=get_pp_rank_of(target, module=model), dp_rank=dist.get_rank(parallel_context.dp_pg), From 111c4fc01f18ef6e5483d56bc21b9166d0ce09df Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Tue, 11 Jun 2024 08:39:58 +0000 Subject: [PATCH 02/19] still testing --- run_generate.py | 46 ++++++- src/nanotron/config/models_config.py | 4 + src/nanotron/helpers.py | 12 +- src/nanotron/logging.py | 2 +- src/nanotron/models/llama.py | 120 +++++++++++++++--- src/nanotron/parallel/context.py | 15 ++- .../ring_flash_attn/ring_flash_attn.py | 67 ++++++++++ src/nanotron/ring_flash_attn/utils.py | 54 ++++++++ .../ring_flash_attn/zigzag_ring_flash_attn.py | 87 +++++++++++++ src/nanotron/sanity_checks.py | 9 +- src/nanotron/serialize/utils.py | 6 +- src/nanotron/serialize/weights.py | 2 +- src/nanotron/trainer.py | 115 ++++++++++++++++- 13 files changed, 504 insertions(+), 35 deletions(-) diff --git a/run_generate.py b/run_generate.py index afdf32b4..22c61ab5 100644 --- a/run_generate.py +++ b/run_generate.py @@ -59,7 +59,8 @@ def get_args(): parser.add_argument("--dp", type=int, default=0) parser.add_argument("--pp", type=int, default=0) parser.add_argument("--tp", type=int, default=0) - parser.add_argument("--max-new-tokens", type=int, default=128, help="Maximum number of new tokens to generate") + parser.add_argument("--sp", type=int, default=0) + parser.add_argument("--max-new-tokens", type=int, default=50, help="Maximum number of new tokens to generate") return parser.parse_args() @@ -76,6 +77,7 @@ def main(): dp=args.dp or config.parallelism.dp, pp=args.pp or config.parallelism.pp, tp=args.tp or config.parallelism.tp, + sp=args.sp or config.parallelism.sp, pp_engine=OneForwardOneBackwardPipelineEngine(), tp_mode=TensorParallelLinearMode.ALL_REDUCE, tp_linear_async_communication=False, @@ -86,6 +88,7 @@ def main(): data_parallel_size=parallel_config.dp, pipeline_parallel_size=parallel_config.pp, tensor_parallel_size=parallel_config.tp, + sequence_parallel_size=parallel_config.sp, ) # Set log levels @@ -163,7 +166,30 @@ def main(): tokenizer.add_special_tokens({"pad_token": "[PAD]"}) tokenizer.padding_side = "left" tokenizer.truncation_side = "left" # TODO @nouamane: do we want this? + + # PREFIX = "This is a very long story book: <book>" + # NEEDLE_FORMAT = "\nThe special magic Singapore number is: 353233.\n" + # book=f"" + # QUESTION_STR = "</book>.\n Based on the content of the book, Question: What is the special magic Singapore number? Answer: The special magic Singapore number is:" + + # some different length input file + # file_path = '/fsx/haojun/PaulGrahamEssays/13k.txt' + file_path = "/fsx/haojun/PaulGrahamEssays/11k.txt" + file_path_89 = "/fsx/haojun/PaulGrahamEssays/8900.txt" + file_path_81 = "/fsx/haojun/PaulGrahamEssays/8140.txt" + + # Open and read the file + with open(file_path_89, "r") as file: + file.read() + with open(file_path, "r") as file: + file.read() + with open(file_path_81, "r") as file: + file.read() + dummy_inputs = [ + # long_text_110, + # long_text_89, + # long_text_81, "The future of AI is", "Passage: Daniel went back to the garden. Mary travelled to the kitchen. Sandra journeyed to the kitchen. Sandra went to the hallway. John went to the bedroom. Mary went back to the garden. Where is Mary?\nAnswer:", "def fib(n)", @@ -193,19 +219,33 @@ def main(): assert isinstance(generated_ids, torch.Tensor) log_rank( - f"input: {tokenizer.decode(input_ids, clean_up_tokenization_spaces=False)[:1000]}", + f"input: {tokenizer.decode(input_ids[:50], clean_up_tokenization_spaces=False)}", logger=logger, level=logging.INFO, rank=0, ) log_rank( - f"generation: {tokenizer.decode(generated_ids[len(input_ids) :], clean_up_tokenization_spaces=False)}", + f"Number of input tokens: {len(input_ids)}", logger=logger, level=logging.INFO, rank=0, ) + log_rank( + f"generation: {tokenizer.decode(generated_ids[len(input_ids) :], clean_up_tokenization_spaces=True)}", + logger=logger, + level=logging.INFO, + rank=0, + ) + + # log_rank( + # f"generation token ids: {generated_ids[len(input_ids) :]}", + # logger=logger, + # level=logging.INFO, + # rank=0, + # ) + log_rank( "--------------------------------------------------", logger=logger, diff --git a/src/nanotron/config/models_config.py b/src/nanotron/config/models_config.py index ba4559cf..2630e1d6 100644 --- a/src/nanotron/config/models_config.py +++ b/src/nanotron/config/models_config.py @@ -47,6 +47,10 @@ class LlamaConfig: pretraining_tp: int = 1 rms_norm_eps: float = 1e-6 rope_scaling: Optional[dict] = None + rope_theta: float = 10000.0 + rope_interleaved: bool = ( + True # The default value has been True, but for loading Llama3 checkpoints you have to set it to False + ) tie_word_embeddings: bool = False use_cache: bool = True vocab_size: int = 32000 diff --git a/src/nanotron/helpers.py b/src/nanotron/helpers.py index f7bf63e5..1c8bc54e 100644 --- a/src/nanotron/helpers.py +++ b/src/nanotron/helpers.py @@ -381,7 +381,8 @@ def grad_optimizer_builder(named_param_groups): named_params_or_groups=named_param_groups, # TODO @thomasw21: We need a better API for gradient accumulation/zero etc ... optimizer_builder=optimizer_builder, - dp_pg=parallel_context.dp_pg, + # dp_pg=parallel_context.dp_pg, + dp_pg=parallel_context.dp_sp_pg, ) # SANITY CHECK: assert that optimizer's named_params point to model's params (check only the first one) @@ -406,7 +407,8 @@ def grad_optimizer_builder(named_param_groups): assert isinstance(grad_accumulator, FP32GradientAccumulator) grad_accumulator.assign_param_offsets( - dp_rank=dist.get_rank(parallel_context.dp_pg), + # dp_rank=dist.get_rank(parallel_context.dp_pg), + dp_rank=dist.get_rank(parallel_context.dp_sp_pg), param_name_to_offsets=param_name_to_dp_rank_offsets, ) @@ -415,7 +417,8 @@ def grad_optimizer_builder(named_param_groups): assert isinstance(grad_accumulator, FP32GradientAccumulator) model.register_comm_hook( state=FP32GradBucketManager( - dp_pg=parallel_context.dp_pg, + # dp_pg=parallel_context.dp_pg, + dp_pg=parallel_context.dp_sp_pg, accumulator=grad_accumulator, param_id_to_name={ id(param): param.get_tied_info().get_full_name_from_module_id_to_prefix( @@ -687,7 +690,7 @@ def is_resume_from_training(): else: next_stage = next((s for s in config.data_stages if s.start_training_step > stage.start_training_step), None) total_train_steps = next_stage.start_training_step - + if metadata.last_train_step > stage.start_training_step: # NOTE: if the last_train_step is larger than the start_training_step of the current stage, # it means that the training has already passed this stage @@ -702,6 +705,7 @@ def get_consumed_train_samples_of_a_data_stage_from_ckp( stage: DatasetStageArgs, metadata: TrainingMetadata ) -> Optional[int]: start_training_step = stage.start_training_step + # TODO: if a new dataset is added, we know that it has consumed 0 tokens? Cannot add new dataset for now. return next( (s.consumed_train_samples for s in metadata.data_stages if s.start_training_step == start_training_step), None, diff --git a/src/nanotron/logging.py b/src/nanotron/logging.py index 708393b5..e762b10e 100644 --- a/src/nanotron/logging.py +++ b/src/nanotron/logging.py @@ -293,7 +293,7 @@ def set_logger_verbosity_format(logging_level: str, parallel_context: ParallelCo ) formatter = Formatter( fmt=f"%(asctime)s [%(levelname)s|DP={dist.get_rank(parallel_context.dp_pg)}|PP={dist.get_rank(parallel_context.pp_pg)}|" - f"TP={dist.get_rank(parallel_context.tp_pg)}{expert_parallel_log}{'|' + node_name if node_name else ''}]: %(message)s", + f"TP={dist.get_rank(parallel_context.tp_pg)}|SP={dist.get_rank(parallel_context.sp_pg)}{expert_parallel_log}{'|' + node_name if node_name else ''}]: %(message)s", datefmt="%m/%d/%Y %H:%M:%S", ) log_level = log_levels[logging_level] diff --git a/src/nanotron/models/llama.py b/src/nanotron/models/llama.py index dfe163c3..7f0f63b3 100644 --- a/src/nanotron/models/llama.py +++ b/src/nanotron/models/llama.py @@ -32,7 +32,6 @@ from nanotron.parallel.parameters import NanotronParameter from nanotron.parallel.pipeline_parallel.block import PipelineBlock, TensorPointer from nanotron.parallel.pipeline_parallel.p2p import P2P -from nanotron.parallel.tensor_parallel.distributed_differentiable_primitives import differentiable_all_reduce_sum from nanotron.parallel.tensor_parallel.functional import sharded_cross_entropy from nanotron.parallel.tensor_parallel.nn import ( TensorParallelColumnLinear, @@ -122,6 +121,73 @@ def forward( return x_out.type(dtype) +def rotate_half(x): + """Rotates half the hidden dims of the input.""" + x1 = x[..., : x.shape[-1] // 2] + x2 = x[..., x.shape[-1] // 2 :] + return torch.cat((-x2, x1), dim=-1) + + +### llama +class LlamaRotaryEmbedding(nn.Module): + def __init__(self, dim: int, end: int, theta: float = 500000.0): + super().__init__() + self.dim = dim + self.end = end + self.theta = theta + self.init_rotary_embeddings() + + def init_rotary_embeddings(self): + inv_freq = 1.0 / (self.theta ** (torch.arange(0, self.dim, 2, dtype=torch.float, device="cuda") / self.dim)) + self.register_buffer("inv_freq", inv_freq, persistent=False) + + @torch.no_grad() + def forward( + self, + x: torch.Tensor, # [batch_size, seq_length, num_heads, d_qk] + position_ids: Optional[torch.LongTensor], # [batch_size, seq_length] + ): + # x: [bs, num_attention_heads, seq_len, head_size] + # print("rotary") + inv_freq_expanded = self.inv_freq[None, :, None].float().expand(position_ids.shape[0], -1, 1) + position_ids_expanded = position_ids[:, None, :].float() + # Force float32 since bfloat16 loses precision on long contexts + # See https://github.com/huggingface/transformers/pull/29285 + device_type = x.device.type + device_type = device_type if isinstance(device_type, str) and device_type != "mps" else "cpu" + with torch.autocast(device_type=device_type, enabled=False): + freqs = (inv_freq_expanded.float() @ position_ids_expanded.float()).transpose(1, 2) + emb = torch.cat((freqs, freqs), dim=-1) + cos = emb.cos() + sin = emb.sin() + return cos.to(dtype=x.dtype), sin.to(dtype=x.dtype) + + +def apply_rotary_pos_emb(q, k, cos, sin, unsqueeze_dim=2): + """Applies Rotary Position Embedding to the query and key tensors. + + Args: + q (`torch.Tensor`): The query tensor. + k (`torch.Tensor`): The key tensor. + cos (`torch.Tensor`): The cosine part of the rotary embedding. + sin (`torch.Tensor`): The sine part of the rotary embedding. + unsqueeze_dim (`int`, *optional*, defaults to 1): + The 'unsqueeze_dim' argument specifies the dimension along which to unsqueeze cos[position_ids] and + sin[position_ids] so that they can be properly broadcasted to the dimensions of q and k. For example, note + that cos[position_ids] and sin[position_ids] have the shape [batch_size, seq_len, head_dim]. Then, if q and + k have the shape [batch_size, heads, seq_len, head_dim], then setting unsqueeze_dim=1 makes + cos[position_ids] and sin[position_ids] broadcastable to the shapes of q and k. Similarly, if q and k have + the shape [batch_size, seq_len, heads, head_dim], then set unsqueeze_dim=2. + Returns: + `tuple(torch.Tensor)` comprising of the query and key tensors rotated using the Rotary Position Embedding. + """ + cos = cos.unsqueeze(unsqueeze_dim) + sin = sin.unsqueeze(unsqueeze_dim) + q_embed = (q * cos) + (rotate_half(q) * sin) + k_embed = (k * cos) + (rotate_half(k) * sin) + return q_embed, k_embed + + class GLUActivation(nn.Module): def __init__(self, act_fn_name: str): super().__init__() @@ -378,13 +444,22 @@ def __init__( contiguous_chunks=qkv_contiguous_chunks, ) # TODO(kunhao): We want to have only one version per device and not one version per layer. - self.rotary_embedding = RotaryEmbedding( - dim=self.d_qk, - end=config.max_position_embeddings, - ) + if config.rope_interleaved: + self.rotary_embedding = RotaryEmbedding( + dim=self.d_qk, + end=config.max_position_embeddings, + ) + else: + self.rotary_embedding = LlamaRotaryEmbedding( + dim=self.d_qk, + end=config.max_position_embeddings, + ) + self.rope_interleaved = config.rope_interleaved # NOTE: Only supported for training (TODO(fmom): position_ids not supported yet) - self.flash_rotary_embedding = FlashRotaryEmbedding(dim=self.d_qk, interleaved=True) + self.flash_rotary_embedding = FlashRotaryEmbedding( + dim=self.d_qk, interleaved=config.rope_interleaved, base=config.rope_theta + ) self.o_proj = TensorParallelRowLinear( config.num_attention_heads * self.d_qk, @@ -471,8 +546,19 @@ def forward( # Compute rotary embeddings # Note: keep track of old rotary embedding end to check if we need to enlarge k_cache and v_cache old_rotary_embed_end = self.rotary_embedding.end - query_states = self.rotary_embedding(query_states, position_ids=position_ids) - key_states = self.rotary_embedding(key_states, position_ids=position_ids) + + # Rotate half rotary_embedding + # cos, sin = self.rotary_embedding(value_states, position_ids) + # query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) + + # interleaved + if self.rope_interleaved: + query_states = self.rotary_embedding(query_states, position_ids=position_ids) + key_states = self.rotary_embedding(key_states, position_ids=position_ids) + # llama rotary position embedding + else: + cos, sin = self.rotary_embedding(value_states, position_ids) + query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) if "key" not in store: # First inference iteration (Prefill) @@ -623,10 +709,19 @@ def forward( ) else: # Training case + # # # # test my implementation. will delete later + # cos, sin = self.rotary_embedding(value_states, position_ids) + # query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) + # apply rotary embedding. Will adapt to flash rotary embedding later if self.sp_pg.size() > 1: - query_states = self.rotary_embedding(query_states, position_ids=position_ids) - key_states = self.rotary_embedding(key_states, position_ids=position_ids) + if self.rope_interleaved: + query_states = self.rotary_embedding(query_states, position_ids=position_ids) + key_states = self.rotary_embedding(key_states, position_ids=position_ids) + # llama rotary position embedding + else: + cos, sin = self.rotary_embedding(value_states, position_ids) + query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) else: # Apply rotary embeddings to query/key states # NOTE: The layout is different from models/llama.py which is [batch_size, num_heads, seq_length, d_qk] @@ -967,11 +1062,6 @@ def forward( # I think indexing causes a sync we don't actually want # loss = loss[label_mask].sum() - # Calculate the average loss over sp - if self.sp_pg.size() > 1: - differentiable_all_reduce_sum(loss, self.sp_pg) - loss /= torch.tensor(self.sp_pg.size(), dtype=loss.dtype, device=loss.device) - return {"loss": loss} diff --git a/src/nanotron/parallel/context.py b/src/nanotron/parallel/context.py index 1a1b8444..b070debb 100644 --- a/src/nanotron/parallel/context.py +++ b/src/nanotron/parallel/context.py @@ -84,12 +84,24 @@ def _init_parallel_groups(self): # Relevant process groups containing the current rank self.tp_pg = self.create_new_group(ranks.transpose((0, 1, 2, 3, 4)).reshape((-1, self.tensor_parallel_size))) + self.sp_pg = self.create_new_group(ranks.transpose((1, 2, 3, 4, 0)).reshape((-1, self.sequence_parallel_size))) + # only need sync the gradient. Don't need to load different data. Be careful! + # Anything related to dp_pg get changed. + # Create a group DP+CP. Sync between this group. + # temporary fix + # self.dp_pg = self.sp_pg + self.dp_sp_pg = self.create_new_group( + ranks.transpose((1, 4, 2, 0, 3)).reshape((-1, self.data_parallel_size * self.sequence_parallel_size)) + ) # the last two dimension should correspond to sp and dp. + # self.dp_pg = self.create_new_group(ranks.transpose((1, 4, 2, 0, 3)).reshape((-1, self.data_parallel_size*self.sequence_parallel_size))) #the last two dimension should correspond to sp and dp. self.dp_pg = self.create_new_group(ranks.transpose((4, 0, 1, 2, 3)).reshape((-1, self.data_parallel_size))) self.pp_pg = self.create_new_group(ranks.transpose((3, 4, 0, 1, 2)).reshape((-1, self.pipeline_parallel_size))) + # print("dp_sp_pg: ",ranks.transpose((1, 4, 2, 0, 3)).reshape((-1, self.data_parallel_size*self.sequence_parallel_size))) + # print("dp_pg: ", ranks.transpose((4, 0, 1, 2, 3)).reshape((-1, self.data_parallel_size))) + # print("sp_pg: ", ranks.transpose((1, 2, 3, 4, 0)).reshape((-1, self.sequence_parallel_size))) self.expert_pg = self.create_new_group( ranks.transpose((2, 3, 4, 0, 1)).reshape((-1, self.expert_parallel_size)) ) - self.sp_pg = self.create_new_group(ranks.transpose((1, 2, 3, 4, 0)).reshape((-1, self.sequence_parallel_size))) self.mp_pg = self.create_new_group( [ranks[:, :, :, dp_rank, :].reshape(-1) for dp_rank in range(self.data_parallel_size)] ) @@ -178,4 +190,5 @@ def get_global_rank( :return: numpy.int64, The global rank. """ + # return self.world_rank_matrix[sp_rank, ep_rank, pp_rank, 0, tp_rank] return self.world_rank_matrix[sp_rank, ep_rank, pp_rank, dp_rank, tp_rank] diff --git a/src/nanotron/ring_flash_attn/ring_flash_attn.py b/src/nanotron/ring_flash_attn/ring_flash_attn.py index 48b394f8..1fae3367 100644 --- a/src/nanotron/ring_flash_attn/ring_flash_attn.py +++ b/src/nanotron/ring_flash_attn/ring_flash_attn.py @@ -54,6 +54,73 @@ def ring_flash_attn_forward( return out, lse +# # My one more buffer version +# def ring_flash_attn_forward( +# process_group, +# q: torch.Tensor, +# k: torch.Tensor, +# v: torch.Tensor, +# softmax_scale, +# dropout_p=0, +# causal=True, +# window_size=(-1, -1), +# alibi_slopes=None, +# deterministic=False, +# ): +# comm = RingComm(process_group) + +# out = None +# lse = None + +# next_k_even, next_v_even = None, None +# next_k_odd, next_v_odd = None, None + +# for step in range(comm.world_size): +# if step + 1 != comm.world_size: +# if step==0: +# # order is important. should wait for the odd +# next_k_odd = comm.send_recv(k) # for 1st +# next_v_odd = comm.send_recv(v) +# next_k_even = comm.send_recv(k,next_next=True) # for 2nd step +# next_v_even = comm.send_recv(v,next_next=True) +# else: +# # for step+2 +# if step % 2 == 0: +# next_k_even = comm.send_recv(next_k_odd) +# next_v_even = comm.send_recv(next_v_odd) +# else: +# next_k_odd = comm.send_recv(next_k_even) +# next_v_odd = comm.send_recv(next_v_even) +# comm.commit() + +# if not causal or step <= comm.rank: +# block_out, _, _, _, _, block_lse, _, _ = _flash_attn_forward( +# q, +# k, +# v, +# dropout_p, +# softmax_scale, +# causal=causal and step == 0, +# window_size=window_size, +# alibi_slopes=alibi_slopes, +# return_softmax=True and dropout_p > 0, +# ) +# out, lse = update_out_and_lse(out, lse, block_out, block_lse) + +# if step + 1 != comm.world_size: +# comm.wait() +# if step % 2 == 0: +# k = next_k_odd +# v = next_v_odd +# else: +# k = next_k_even +# v = next_v_even + +# out = out.to(q.dtype) +# lse = lse.squeeze(dim=-1).transpose(1, 2) +# return out, lse + + def ring_flash_attn_backward( process_group, doubt, diff --git a/src/nanotron/ring_flash_attn/utils.py b/src/nanotron/ring_flash_attn/utils.py index dacda6cf..c3b27873 100644 --- a/src/nanotron/ring_flash_attn/utils.py +++ b/src/nanotron/ring_flash_attn/utils.py @@ -110,6 +110,60 @@ def wait(self): self._ops = [] +###### my implementation +# class RingComm: +# def __init__(self, process_group: dist.ProcessGroup): +# self._process_group = process_group +# self._ops = [] +# self.rank = dist.get_rank(self._process_group) +# self.world_size = dist.get_world_size(self._process_group) +# self._reqs = [] + +# self.send_rank = (self.rank + 1) % self.world_size +# self.recv_rank = (self.rank - 1) % self.world_size +# self.send_next_next_rank = (self.rank + 2) % self.world_size +# self.recv_next_next_rank = (self.rank - 2) % self.world_size + +# if process_group is not None: +# self.send_rank = dist.get_global_rank(self._process_group, self.send_rank) +# self.recv_rank = dist.get_global_rank(self._process_group, self.recv_rank) +# self.send_next_next_rank = dist.get_global_rank(self._process_group, self.send_next_next_rank) +# self.recv_next_next_rank = dist.get_global_rank(self._process_group, self.recv_next_next_rank) + +# def send_recv(self, to_send: torch.Tensor, recv_tensor: Optional[torch.Tensor] = None, next_next=False) -> torch.Tensor: +# if recv_tensor is None: +# res = torch.empty_like(to_send) +# else: +# res = recv_tensor +# if next_next: +# send_op = dist.P2POp(dist.isend, to_send, self.send_next_next_rank, group=self._process_group) +# recv_op = dist.P2POp(dist.irecv, res, self.recv_next_next_rank, group=self._process_group) +# else: +# send_op = dist.P2POp(dist.isend, to_send, self.send_rank, group=self._process_group) +# recv_op = dist.P2POp(dist.irecv, res, self.recv_rank, group=self._process_group) +# self._ops.append(send_op) +# self._ops.append(recv_op) +# return res + +# def commit(self): +# # if self._reqs is not None: +# # raise RuntimeError("commit called twice") +# self._reqs.extend(dist.batch_isend_irecv(self._ops)) + +# def wait(self): +# if self._reqs is None: +# raise RuntimeError("wait called before commit") +# # for req in self._reqs: +# # req.wait() +# # self._reqs = None + +# # use more buffer. This may help +# for req in self._reqs[:2]: # Only wait for the first two requests +# req.wait() +# self._reqs = self._reqs[2:] # Remove the first two requests from the list +# self._ops = [] + + def extract_local(tensor: torch.Tensor, rank: int, world_size: int, dim: int = 1) -> torch.Tensor: value_chunks = tensor.chunk(2 * world_size, dim=dim) local_value = torch.cat([value_chunks[rank], value_chunks[2 * world_size - rank - 1]], dim=dim) diff --git a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py index 2ac1e4e3..6b621e2d 100644 --- a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py +++ b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py @@ -75,6 +75,93 @@ def forward(q, k, v, causal): return out, lse +# ### my implementation +# def zigzag_ring_flash_attn_forward( +# process_group, +# q: torch.Tensor, +# k: torch.Tensor, +# v: torch.Tensor, +# softmax_scale, +# dropout_p=0, +# causal=True, +# window_size=(-1, -1), +# alibi_slopes=None, +# deterministic=False, +# ): +# assert causal is True, "zigzag ring is meaningless for causal=False" +# comm = RingComm(process_group) + +# block_seq_len = q.shape[1] // 2 +# q1 = q[:, block_seq_len:] + +# out = None +# lse = None +# next_k_even, next_v_even = None, None +# next_k_odd, next_v_odd = None, None + +# def forward(q, k, v, causal): +# block_out, _, _, _, _, block_lse, _, _ = _flash_attn_forward( +# q, +# k, +# v, +# dropout_p, +# softmax_scale, +# causal=causal, +# window_size=window_size, +# alibi_slopes=alibi_slopes, +# return_softmax=True and dropout_p > 0, +# ) +# return block_out, block_lse + +# for step in range(comm.world_size): +# if step==0: +# # order is important. should wait for the odd +# next_k_odd = comm.send_recv(k) # for 1st +# next_v_odd = comm.send_recv(v) +# next_k_even = comm.send_recv(k,next_next=True) # for 2nd step +# next_v_even = comm.send_recv(v,next_next=True) +# else: +# # for step+2 +# if step % 2 == 0: +# next_k_even = comm.send_recv(next_k_odd) +# next_v_even = comm.send_recv(next_v_odd) +# else: +# next_k_odd = comm.send_recv(next_k_even) +# next_v_odd = comm.send_recv(next_v_even) +# comm.commit() + +# if step == 0: +# block_out, block_lse = forward(q, k, v, causal=True) +# out, lse = update_out_and_lse(out, lse, block_out, block_lse) +# elif step <= comm.rank: +# k0 = k[:, :block_seq_len] +# v0 = v[:, :block_seq_len] +# block_out, block_lse = forward(q, k0, v0, causal=False) +# out, lse = update_out_and_lse(out, lse, block_out, block_lse) +# else: +# block_out, block_lse = forward(q1, k, v, causal=False) +# out, lse = update_out_and_lse( +# out, +# lse, +# block_out, +# block_lse, +# slice_=(slice(None), slice(block_seq_len, None)), +# ) + +# if step + 1 != comm.world_size: +# comm.wait() +# if step % 2 == 0: +# k = next_k_odd +# v = next_v_odd +# else: +# k = next_k_even +# v = next_v_even + +# out = out.to(q.dtype) +# lse = lse.squeeze(dim=-1).transpose(1, 2) +# return out, lse + + def zigzag_ring_flash_attn_backward( process_group, doubt, diff --git a/src/nanotron/sanity_checks.py b/src/nanotron/sanity_checks.py index b18e5433..dd9b913e 100644 --- a/src/nanotron/sanity_checks.py +++ b/src/nanotron/sanity_checks.py @@ -64,7 +64,8 @@ def before_tbi_sanity_checks( for name, param in sorted(unwrapped_model.named_parameters(), key=lambda x: x[0]): assert_tensor_synced_across_pg( tensor=param, - pg=parallel_context.dp_pg, + # pg=parallel_context.dp_pg, + pg=parallel_context.dp_sp_pg, msg=lambda err: f"{name} are not synchronized across DP {err}", ) @@ -185,7 +186,8 @@ def before_optim_step_sanity_checks( assert grad is not None, f"Grad is None for {name}" assert_tensor_synced_across_pg( tensor=grad, - pg=parallel_context.dp_pg, + # pg=parallel_context.dp_pg, + pg=parallel_context.dp_sp_pg, msg=lambda err: f"[Before optimizer step] weights grads for {name} are not synchronized across DP. {err}", ) @@ -193,7 +195,8 @@ def before_optim_step_sanity_checks( for name, param in sorted(unwrapped_model.named_parameters(), key=lambda x: x[0]): assert_tensor_synced_across_pg( tensor=param, - pg=parallel_context.dp_pg, + # pg=parallel_context.dp_pg, + pg=parallel_context.dp_sp_pg, msg=lambda err: f"{name} are not synchronized across DP {err}", ) diff --git a/src/nanotron/serialize/utils.py b/src/nanotron/serialize/utils.py index ebdec2b6..921b072c 100644 --- a/src/nanotron/serialize/utils.py +++ b/src/nanotron/serialize/utils.py @@ -21,9 +21,9 @@ def get_exp_tp_pp_rank_and_size_from( ) -> Tuple[Tuple[int, int], Tuple[int, int]]: result = parallel_context.get_local_ranks(world_rank=world_rank) return ( - (result[0], parallel_context.expert_pg.size()), - (result[3], parallel_context.tp_pg.size()), - (result[1], parallel_context.pp_pg.size()), + (result[1], parallel_context.expert_pg.size()), + (result[4], parallel_context.tp_pg.size()), + (result[2], parallel_context.pp_pg.size()), ) diff --git a/src/nanotron/serialize/weights.py b/src/nanotron/serialize/weights.py index 96d2be4c..621c6f4c 100644 --- a/src/nanotron/serialize/weights.py +++ b/src/nanotron/serialize/weights.py @@ -32,7 +32,7 @@ def save_weights(model: nn.Module, parallel_context: ParallelContext, root_folde # We save only `dist.get_rank(parallel_context.dp_pg) == 0` # TODO @thomasw21: Figure how this works with Zero-3 - if dist.get_rank(parallel_context.dp_pg) != 0: + if dist.get_rank(parallel_context.dp_pg) != 0 or dist.get_rank(parallel_context.sp_pg) != 0: return module_id_to_prefix = {id(module): f"{module_name}." for module_name, module in model.named_modules()} diff --git a/src/nanotron/trainer.py b/src/nanotron/trainer.py index 19b979cc..df518e9c 100644 --- a/src/nanotron/trainer.py +++ b/src/nanotron/trainer.py @@ -441,6 +441,79 @@ def train( # Checkpoint if self.iteration_step % self.config.checkpoints.checkpoint_interval == 0: self.save_checkpoint() + # ################# My test for saving and loading params ################# + # ####### load from checkpoint and compare with the model. + # checkpoint_model = build_model( + # model_builder=lambda: CONFIG_TO_MODEL_CLASS[self.model_config.__class__.__name__]( + # config=self.model_config, + # parallel_context=self.parallel_context, + # parallel_config=self.config.parallelism, + # random_states=self.random_states, + # ), + # dtype=self.config.model.dtype, + # parallel_context=self.parallel_context, + # ) + + # # Mark some parameters as tied + # # TODO @nouamane: this is only needed for training, can we just mark params as NanotronParameter instead? + # mark_tied_parameters(model=checkpoint_model, parallel_context=self.parallel_context, parallel_config=self.config.parallelism,) + + # # Sanity check model + # sanity_check(root_module=checkpoint_model) + + # # Load checkpoint + # checkpoints_path = self.config.checkpoints.checkpoints_path + # checkpoint_path = checkpoints_path / f"{self.iteration_step}" + # log_rank( + # f"Loading checkpoint from {checkpoint_path}:", + # logger=logger, + # level=logging.INFO, + # rank=0, + # ) + # load_weights(model=checkpoint_model, parallel_context=self.parallel_context, root_folder=checkpoint_path) + + # ## compare keys firstly + # model_state_dict = self.model.module.state_dict() if isinstance(self.model, DistributedDataParallel) else self.model.state_dict() + # checkpoint_state_dict = checkpoint_model.state_dict() + + # model_keys = set(model_state_dict.keys()) + # checkpoint_keys = set(checkpoint_state_dict.keys()) + + # # Find keys that are in model but not in checkpoint + # missing_in_checkpoint = model_keys - checkpoint_keys + # # Find keys that are in checkpoint but not in model + # missing_in_model = checkpoint_keys - model_keys + + # # # Print out the differences + # # print("Keys in current model but not in checkpoint:", missing_in_checkpoint) + # # print("Keys in checkpoint but not in current model:", missing_in_model) + # # # print all the params + # # print("self.model.state_dict().keys(): ",model_state_dict.keys(), "length: ", len(model_state_dict.keys())) + # # print("checkpoint_model.state_dict().keys(): ",checkpoint_state_dict.keys(), "length: ", len(checkpoint_state_dict.keys())) + + # assert model_state_dict.keys() == checkpoint_state_dict.keys(), "Models have different structures." + + # # Compare parameters + # all_params_same = True + # for param_tensor in model_state_dict: + # model_param = model_state_dict[param_tensor] + # checkpoint_param = checkpoint_state_dict[param_tensor] + # if not torch.equal(model_param, checkpoint_param): + # all_params_same = False + # break + # num_different_elements = torch.sum(model_param != checkpoint_param).item() + # total_elements = model_param.numel() + # print(f"Mismatch found in parameter {param_tensor}: {num_different_elements}/{total_elements} elements are different.") + # # else: + # # print(f"{param_tensor} is OK!") + # if all_params_same: + # print("All parameters are the same between the two models.") + # else: + # print("Parameters differ between the two models.") + + # # stop_here = 1 + + # ################# dist.barrier() # let's wait for everyone before leaving self.post_training() @@ -478,7 +551,8 @@ def training_step( # Manually sync across DP if it's not handled by DDP sync_gradients_across_dp( module=self.model, - dp_pg=self.parallel_context.dp_pg, + dp_pg=self.parallel_context.dp_sp_pg, + # dp_pg=self.parallel_context.dp_pg, reduce_op=dist.ReduceOp.AVG, # TODO @thomasw21: This is too memory hungry, instead we run all_reduce reduce_scatter=False, # optimizer.inherit_from(ZeroDistributedOptimizer), @@ -517,8 +591,11 @@ def training_step( loss_avg = torch.stack( [output["loss"] for output in outputs] ).sum() # already divided by n_micro_batches_per_batch - # sync loss across DP - handle = dist.all_reduce(loss_avg, group=self.parallel_context.dp_pg, async_op=True, op=dist.ReduceOp.AVG) + # sync loss across DP/SP + # handle = dist.all_reduce(loss_avg, group=self.parallel_context.dp_pg, async_op=True, op=dist.ReduceOp.AVG) + handle = dist.all_reduce( + loss_avg, group=self.parallel_context.dp_sp_pg, async_op=True, op=dist.ReduceOp.AVG + ) else: loss_avg = None handle = None @@ -798,9 +875,39 @@ def _init_model( # Check that the model has at least one grad. Necessary for DDP check_model_has_grad(model=model, parallel_context=parallel_context) # TODO @thomasw21: DDP doesn't support broadcasting complex buffers (and we don't really need that broadcasting anyway) + + # ### debug + # tensor_names = [name for name in model.state_dict()] + # log_rank( + # f"Params: {tensor_names}, length {len(tensor_names)}", + # logger=logger, + # level=logging.INFO, + # rank=0, + # ) + # log_rank( + # f"Params: {tensor_names}, length {len(tensor_names)}", + # logger=logger, + # level=logging.INFO, + # rank=1, + # ) + # log_rank( + # f"Params: {tensor_names}, length {len(tensor_names)}", + # logger=logger, + # level=logging.INFO, + # rank=2, + # ) + # log_rank( + # f"Params: {tensor_names}, length {len(tensor_names)}", + # logger=logger, + # level=logging.INFO, + # rank=3, + # ) + # ### + model = DistributedDataParallel( model, - process_group=parallel_context.dp_pg, + # process_group=parallel_context.dp_pg, + process_group=parallel_context.dp_sp_pg, broadcast_buffers=False, bucket_cap_mb=config.model.ddp_bucket_cap_mb, ) From 3ef191d402d99e31963aebe1db59bdcd538d4580 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Sun, 30 Jun 2024 15:48:24 +0000 Subject: [PATCH 03/19] refactor some code --- run_generate.py | 45 +---------- src/nanotron/models/llama.py | 33 +++----- .../ring_flash_attn/ring_flash_attn.py | 75 +------------------ 3 files changed, 18 insertions(+), 135 deletions(-) diff --git a/run_generate.py b/run_generate.py index 22c61ab5..8c753a53 100644 --- a/run_generate.py +++ b/run_generate.py @@ -60,7 +60,7 @@ def get_args(): parser.add_argument("--pp", type=int, default=0) parser.add_argument("--tp", type=int, default=0) parser.add_argument("--sp", type=int, default=0) - parser.add_argument("--max-new-tokens", type=int, default=50, help="Maximum number of new tokens to generate") + parser.add_argument("--max-new-tokens", type=int, default=128, help="Maximum number of new tokens to generate") return parser.parse_args() @@ -166,30 +166,7 @@ def main(): tokenizer.add_special_tokens({"pad_token": "[PAD]"}) tokenizer.padding_side = "left" tokenizer.truncation_side = "left" # TODO @nouamane: do we want this? - - # PREFIX = "This is a very long story book: <book>" - # NEEDLE_FORMAT = "\nThe special magic Singapore number is: 353233.\n" - # book=f"" - # QUESTION_STR = "</book>.\n Based on the content of the book, Question: What is the special magic Singapore number? Answer: The special magic Singapore number is:" - - # some different length input file - # file_path = '/fsx/haojun/PaulGrahamEssays/13k.txt' - file_path = "/fsx/haojun/PaulGrahamEssays/11k.txt" - file_path_89 = "/fsx/haojun/PaulGrahamEssays/8900.txt" - file_path_81 = "/fsx/haojun/PaulGrahamEssays/8140.txt" - - # Open and read the file - with open(file_path_89, "r") as file: - file.read() - with open(file_path, "r") as file: - file.read() - with open(file_path_81, "r") as file: - file.read() - dummy_inputs = [ - # long_text_110, - # long_text_89, - # long_text_81, "The future of AI is", "Passage: Daniel went back to the garden. Mary travelled to the kitchen. Sandra journeyed to the kitchen. Sandra went to the hallway. John went to the bedroom. Mary went back to the garden. Where is Mary?\nAnswer:", "def fib(n)", @@ -205,7 +182,7 @@ def main(): model=model.model, parallel_context=parallel_context, max_new_tokens=args.max_new_tokens, - max_micro_batch_size=2, + max_micro_batch_size=1, generation_config=GenerationArgs(sampler="greedy", use_cache=True), tokenizer_config=TokenizerConfig(max_input_length=None), is_bench=os.environ.get("USE_BENCH", "0") == "1", @@ -219,33 +196,19 @@ def main(): assert isinstance(generated_ids, torch.Tensor) log_rank( - f"input: {tokenizer.decode(input_ids[:50], clean_up_tokenization_spaces=False)}", - logger=logger, - level=logging.INFO, - rank=0, - ) - - log_rank( - f"Number of input tokens: {len(input_ids)}", + f"input: {tokenizer.decode(input_ids, clean_up_tokenization_spaces=False)[:1000]}", logger=logger, level=logging.INFO, rank=0, ) log_rank( - f"generation: {tokenizer.decode(generated_ids[len(input_ids) :], clean_up_tokenization_spaces=True)}", + f"generation: {tokenizer.decode(generated_ids[len(input_ids) :], clean_up_tokenization_spaces=False)}", logger=logger, level=logging.INFO, rank=0, ) - # log_rank( - # f"generation token ids: {generated_ids[len(input_ids) :]}", - # logger=logger, - # level=logging.INFO, - # rank=0, - # ) - log_rank( "--------------------------------------------------", logger=logger, diff --git a/src/nanotron/models/llama.py b/src/nanotron/models/llama.py index 7f0f63b3..b825bfb1 100644 --- a/src/nanotron/models/llama.py +++ b/src/nanotron/models/llama.py @@ -121,6 +121,7 @@ def forward( return x_out.type(dtype) +## Copy from transformers. Non interleaved version of RoPE. Will be refactored later def rotate_half(x): """Rotates half the hidden dims of the input.""" x1 = x[..., : x.shape[-1] // 2] @@ -128,13 +129,13 @@ def rotate_half(x): return torch.cat((-x2, x1), dim=-1) -### llama class LlamaRotaryEmbedding(nn.Module): def __init__(self, dim: int, end: int, theta: float = 500000.0): super().__init__() self.dim = dim self.end = end self.theta = theta + log_rank(f"Initialize LlamaRotaryEmbedding: RoPE Theta = {theta}", logger=logger, level=logging.DEBUG, rank=0) self.init_rotary_embeddings() def init_rotary_embeddings(self): @@ -264,8 +265,6 @@ def forward( local_v: torch.Tensor, # [batch_size, kv_length, n_local_kv_heads, inner_dim] ): # NOTE: this scale is for µTransfer, - # in SP, we use sqrt(1/d_h) - # softmax_scale = 1 / local_q.shape[-1] if self.is_using_mup else None causal = True if zigzag: @@ -294,7 +293,6 @@ def forward( return_attn_probs=True, group=self.pg, ) - assert ring_out.requires_grad return ring_out @@ -448,11 +446,13 @@ def __init__( self.rotary_embedding = RotaryEmbedding( dim=self.d_qk, end=config.max_position_embeddings, + theta=config.rope_theta, ) else: self.rotary_embedding = LlamaRotaryEmbedding( dim=self.d_qk, end=config.max_position_embeddings, + theta=config.rope_theta, ) self.rope_interleaved = config.rope_interleaved @@ -469,7 +469,7 @@ def __init__( bias=False, async_communication=tp_linear_async_communication, ) - + # Normal attention when Sequence parallelism group size = 1 if not sp_pg.size() > 1: self.attention = CoreAttention( config, @@ -547,15 +547,11 @@ def forward( # Note: keep track of old rotary embedding end to check if we need to enlarge k_cache and v_cache old_rotary_embed_end = self.rotary_embedding.end - # Rotate half rotary_embedding - # cos, sin = self.rotary_embedding(value_states, position_ids) - # query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) - - # interleaved + # interleaved version. if self.rope_interleaved: query_states = self.rotary_embedding(query_states, position_ids=position_ids) key_states = self.rotary_embedding(key_states, position_ids=position_ids) - # llama rotary position embedding + # non interleaved version. else: cos, sin = self.rotary_embedding(value_states, position_ids) query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) @@ -709,16 +705,13 @@ def forward( ) else: # Training case - # # # # test my implementation. will delete later - # cos, sin = self.rotary_embedding(value_states, position_ids) - # query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) - # apply rotary embedding. Will adapt to flash rotary embedding later + # interleaved version. if self.sp_pg.size() > 1: if self.rope_interleaved: query_states = self.rotary_embedding(query_states, position_ids=position_ids) key_states = self.rotary_embedding(key_states, position_ids=position_ids) - # llama rotary position embedding + # non interleaved version. else: cos, sin = self.rotary_embedding(value_states, position_ids) query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) @@ -735,7 +728,6 @@ def forward( key_states, value_states = torch.split(key_value_states, 1, dim=2) kv_length = key_states.shape[1] - ## ring attention if self.sp_pg.size() > 1: key_states = key_states.view(batch_size, kv_length, self.n_local_kv_heads, self.d_qk) @@ -746,7 +738,7 @@ def forward( key_states, value_states, ) - assert attention_output.requires_grad + # flash attention else: query_states = query_states.view(batch_size * q_length, self.n_local_q_heads, self.d_qk) key_states = key_states.view(batch_size * kv_length, self.n_local_kv_heads, self.d_qk) @@ -855,9 +847,6 @@ def __init__( ): super().__init__() - if parallel_context.sp_pg.size() > 1: - log_rank("Using ring attention", logger=logger, level=logging.INFO, rank=0) - # Declare all the nodes self.p2p = P2P(parallel_context.pp_pg, device=torch.device("cuda")) self.config = config @@ -1053,7 +1042,6 @@ def forward( # normal split else: label_ids, label_mask = normal_split(rank, world_size, label_ids, label_mask) - loss = sharded_cross_entropy( sharded_logits, label_ids.transpose(0, 1).contiguous(), group=self.tp_pg, dtype=torch.float ).transpose(0, 1) @@ -1061,7 +1049,6 @@ def forward( loss = masked_mean(loss, label_mask, dtype=torch.float) # I think indexing causes a sync we don't actually want # loss = loss[label_mask].sum() - return {"loss": loss} diff --git a/src/nanotron/ring_flash_attn/ring_flash_attn.py b/src/nanotron/ring_flash_attn/ring_flash_attn.py index 1fae3367..ba20b2e1 100644 --- a/src/nanotron/ring_flash_attn/ring_flash_attn.py +++ b/src/nanotron/ring_flash_attn/ring_flash_attn.py @@ -54,76 +54,9 @@ def ring_flash_attn_forward( return out, lse -# # My one more buffer version -# def ring_flash_attn_forward( -# process_group, -# q: torch.Tensor, -# k: torch.Tensor, -# v: torch.Tensor, -# softmax_scale, -# dropout_p=0, -# causal=True, -# window_size=(-1, -1), -# alibi_slopes=None, -# deterministic=False, -# ): -# comm = RingComm(process_group) - -# out = None -# lse = None - -# next_k_even, next_v_even = None, None -# next_k_odd, next_v_odd = None, None - -# for step in range(comm.world_size): -# if step + 1 != comm.world_size: -# if step==0: -# # order is important. should wait for the odd -# next_k_odd = comm.send_recv(k) # for 1st -# next_v_odd = comm.send_recv(v) -# next_k_even = comm.send_recv(k,next_next=True) # for 2nd step -# next_v_even = comm.send_recv(v,next_next=True) -# else: -# # for step+2 -# if step % 2 == 0: -# next_k_even = comm.send_recv(next_k_odd) -# next_v_even = comm.send_recv(next_v_odd) -# else: -# next_k_odd = comm.send_recv(next_k_even) -# next_v_odd = comm.send_recv(next_v_even) -# comm.commit() - -# if not causal or step <= comm.rank: -# block_out, _, _, _, _, block_lse, _, _ = _flash_attn_forward( -# q, -# k, -# v, -# dropout_p, -# softmax_scale, -# causal=causal and step == 0, -# window_size=window_size, -# alibi_slopes=alibi_slopes, -# return_softmax=True and dropout_p > 0, -# ) -# out, lse = update_out_and_lse(out, lse, block_out, block_lse) - -# if step + 1 != comm.world_size: -# comm.wait() -# if step % 2 == 0: -# k = next_k_odd -# v = next_v_odd -# else: -# k = next_k_even -# v = next_v_even - -# out = out.to(q.dtype) -# lse = lse.squeeze(dim=-1).transpose(1, 2) -# return out, lse - - def ring_flash_attn_backward( process_group, - doubt, + dim_out, q, k, v, @@ -156,7 +89,7 @@ def ring_flash_attn_backward( if step <= kv_comm.rank or not causal: bwd_causal = causal and step == 0 _flash_attn_backward( - doubt, + dim_out, q, k, v, @@ -248,11 +181,11 @@ def forward( return out if not return_softmax else (out, softmax_lse, None) @staticmethod - def backward(ctx, doubt, *args): + def backward(ctx, dim_out, *args): q, k, v, out, softmax_lse = ctx.saved_tensors dq, dk, dv = ring_flash_attn_backward( ctx.group, - doubt, + dim_out, q, k, v, From 019d263e8db77c464df2d9758bf1abab13804234 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Sun, 30 Jun 2024 16:40:42 +0000 Subject: [PATCH 04/19] add SP to the tests --- src/nanotron/trainer.py | 73 ----------------------------------- tests/helpers/utils.py | 12 +++--- tests/test_base_model.py | 6 +-- tests/test_optimizer.py | 6 +-- tests/test_parametrization.py | 6 +-- tests/test_random_state.py | 6 +-- tests/test_tensor_parallel.py | 24 +++++++----- tests/test_zero.py | 12 +++--- 8 files changed, 39 insertions(+), 106 deletions(-) diff --git a/src/nanotron/trainer.py b/src/nanotron/trainer.py index df518e9c..fde511f8 100644 --- a/src/nanotron/trainer.py +++ b/src/nanotron/trainer.py @@ -441,79 +441,6 @@ def train( # Checkpoint if self.iteration_step % self.config.checkpoints.checkpoint_interval == 0: self.save_checkpoint() - # ################# My test for saving and loading params ################# - # ####### load from checkpoint and compare with the model. - # checkpoint_model = build_model( - # model_builder=lambda: CONFIG_TO_MODEL_CLASS[self.model_config.__class__.__name__]( - # config=self.model_config, - # parallel_context=self.parallel_context, - # parallel_config=self.config.parallelism, - # random_states=self.random_states, - # ), - # dtype=self.config.model.dtype, - # parallel_context=self.parallel_context, - # ) - - # # Mark some parameters as tied - # # TODO @nouamane: this is only needed for training, can we just mark params as NanotronParameter instead? - # mark_tied_parameters(model=checkpoint_model, parallel_context=self.parallel_context, parallel_config=self.config.parallelism,) - - # # Sanity check model - # sanity_check(root_module=checkpoint_model) - - # # Load checkpoint - # checkpoints_path = self.config.checkpoints.checkpoints_path - # checkpoint_path = checkpoints_path / f"{self.iteration_step}" - # log_rank( - # f"Loading checkpoint from {checkpoint_path}:", - # logger=logger, - # level=logging.INFO, - # rank=0, - # ) - # load_weights(model=checkpoint_model, parallel_context=self.parallel_context, root_folder=checkpoint_path) - - # ## compare keys firstly - # model_state_dict = self.model.module.state_dict() if isinstance(self.model, DistributedDataParallel) else self.model.state_dict() - # checkpoint_state_dict = checkpoint_model.state_dict() - - # model_keys = set(model_state_dict.keys()) - # checkpoint_keys = set(checkpoint_state_dict.keys()) - - # # Find keys that are in model but not in checkpoint - # missing_in_checkpoint = model_keys - checkpoint_keys - # # Find keys that are in checkpoint but not in model - # missing_in_model = checkpoint_keys - model_keys - - # # # Print out the differences - # # print("Keys in current model but not in checkpoint:", missing_in_checkpoint) - # # print("Keys in checkpoint but not in current model:", missing_in_model) - # # # print all the params - # # print("self.model.state_dict().keys(): ",model_state_dict.keys(), "length: ", len(model_state_dict.keys())) - # # print("checkpoint_model.state_dict().keys(): ",checkpoint_state_dict.keys(), "length: ", len(checkpoint_state_dict.keys())) - - # assert model_state_dict.keys() == checkpoint_state_dict.keys(), "Models have different structures." - - # # Compare parameters - # all_params_same = True - # for param_tensor in model_state_dict: - # model_param = model_state_dict[param_tensor] - # checkpoint_param = checkpoint_state_dict[param_tensor] - # if not torch.equal(model_param, checkpoint_param): - # all_params_same = False - # break - # num_different_elements = torch.sum(model_param != checkpoint_param).item() - # total_elements = model_param.numel() - # print(f"Mismatch found in parameter {param_tensor}: {num_different_elements}/{total_elements} elements are different.") - # # else: - # # print(f"{param_tensor} is OK!") - # if all_params_same: - # print("All parameters are the same between the two models.") - # else: - # print("Parameters differ between the two models.") - - # # stop_here = 1 - - # ################# dist.barrier() # let's wait for everyone before leaving self.post_training() diff --git a/tests/helpers/utils.py b/tests/helpers/utils.py index d0fb01b5..44813cac 100644 --- a/tests/helpers/utils.py +++ b/tests/helpers/utils.py @@ -243,7 +243,7 @@ def _run_until_success(*args, **kwargs): return _wrapper -def global_wrapper(rank, func, tp, pp, dp, port, kwargs): +def global_wrapper(rank, func, tp, pp, dp, sp, port, kwargs): def setup_dist_env(rank, world_size, port): os.environ["WORLD_SIZE"] = str(world_size) os.environ["RANK"] = str(rank) @@ -255,20 +255,22 @@ def setup_dist_env(rank, world_size, port): world_size = tp * pp * dp setup_dist_env(rank, world_size, port) - parallel_context = ParallelContext(data_parallel_size=dp, pipeline_parallel_size=pp, tensor_parallel_size=tp) + parallel_context = ParallelContext( + data_parallel_size=dp, pipeline_parallel_size=pp, tensor_parallel_size=tp, sequence_parallel_size=sp + ) func(parallel_context, **kwargs) -def init_distributed(tp: int, dp: int, pp: int): +def init_distributed(tp: int, dp: int, pp: int, sp: int): def _init_distributed(func): def wrapper(**kwargs): from nanotron.utils import find_free_port - world_size = tp * pp * dp + world_size = tp * pp * dp * sp port = find_free_port() # Note that kwargs needs to be passed as part of args in a way that can be unpacked - args = (func, tp, pp, dp, port, kwargs) + args = (func, tp, pp, dp, sp, port, kwargs) mp.spawn(global_wrapper, args=args, nprocs=world_size) return wrapper diff --git a/tests/test_base_model.py b/tests/test_base_model.py index b4759905..4b49615d 100644 --- a/tests/test_base_model.py +++ b/tests/test_base_model.py @@ -9,14 +9,14 @@ from torch import nn -@pytest.mark.parametrize("tp,dp,pp", [(1, 1, 1), (2, 2, 2)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [(1, 1, 1, 1), (2, 2, 2, 1)]) @pytest.mark.skip @rerun_if_address_is_in_use() -def test_get_named_modules_in_pp_rank(tp: int, dp: int, pp: int): +def test_get_named_modules_in_pp_rank(tp: int, dp: int, pp: int, sp: int): model_args = ModelArgs(init_method=RandomInit(std=1.0), model_config=TINY_LLAMA_CONFIG) config = get_llama_training_config(model_args) - init_distributed(tp=tp, dp=dp, pp=pp)(_test_get_named_modules_in_pp_rank)(config=config) + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_get_named_modules_in_pp_rank)(config=config) def _test_get_named_modules_in_pp_rank( diff --git a/tests/test_optimizer.py b/tests/test_optimizer.py index 1a28f967..036b0a8f 100644 --- a/tests/test_optimizer.py +++ b/tests/test_optimizer.py @@ -10,13 +10,13 @@ from nanotron.scaling.parametrization import ParametrizationMethod -@pytest.mark.parametrize("tp,dp,pp", [(1, 1, 1), (2, 1, 1), (1, 1, 2), (2, 1, 2)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [(1, 1, 1, 1), (2, 1, 1, 1), (1, 1, 2, 1), (2, 1, 2, 1)]) @pytest.mark.parametrize( "parametrization_method", [ParametrizationMethod.STANDARD, ParametrizationMethod.SPECTRAL_MUP] ) @pytest.mark.skip @rerun_if_address_is_in_use() -def test_get_custom_lr(tp: int, dp: int, pp: int, parametrization_method: ParametrizationMethod): +def test_get_custom_lr(tp: int, dp: int, pp: int, sp: int, parametrization_method: ParametrizationMethod): LR = 1e-3 if parametrization_method == ParametrizationMethod.STANDARD: @@ -24,7 +24,7 @@ def test_get_custom_lr(tp: int, dp: int, pp: int, parametrization_method: Parame elif parametrization_method == ParametrizationMethod.SPECTRAL_MUP: init_method = SpectralMupInit(use_mup=True) - init_distributed(tp=tp, dp=dp, pp=pp)(_test_get_custom_lr)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_get_custom_lr)( lr=LR, init_method=init_method, parametrization_method=parametrization_method, diff --git a/tests/test_parametrization.py b/tests/test_parametrization.py index fe76826a..88aabc2c 100644 --- a/tests/test_parametrization.py +++ b/tests/test_parametrization.py @@ -10,17 +10,17 @@ from nanotron.scaling.parametrization import ParametrizationMethod -@pytest.mark.parametrize("tp,dp,pp", [(2, 1, 1)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [(2, 1, 1, 1)]) @pytest.mark.parametrize("parametrization_method", [ParametrizationMethod.SPECTRAL_MUP]) @pytest.mark.skip @rerun_if_address_is_in_use() -def test_parametrization(tp: int, dp: int, pp: int, parametrization_method: ParametrizationMethod): +def test_parametrization(tp: int, dp: int, pp: int, sp: int, parametrization_method: ParametrizationMethod): if parametrization_method == ParametrizationMethod.STANDARD: init_method = RandomInit(std=1.0) elif parametrization_method == ParametrizationMethod.SPECTRAL_MUP: init_method = SpectralMupInit(use_mup=True) - init_distributed(tp=tp, dp=dp, pp=pp)(_test_parametrization)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_parametrization)( init_method=init_method, parametrization_method=parametrization_method, ) diff --git a/tests/test_random_state.py b/tests/test_random_state.py index 7abd0b13..19561410 100644 --- a/tests/test_random_state.py +++ b/tests/test_random_state.py @@ -12,11 +12,11 @@ @pytest.mark.skipif(available_gpus() < 2, reason="Testing test_random_state_sync requires at least 2 gpus") -@pytest.mark.parametrize("tp,dp,pp", [(2, 1, 1), (1, 2, 1), (1, 1, 2)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [(2, 1, 1, 1), (1, 2, 1, 1), (1, 1, 2, 1)]) @rerun_if_address_is_in_use() -def test_random_state_sync(tp: int, dp: int, pp: int): +def test_random_state_sync(tp: int, dp: int, pp: int, sp: int): # TODO @nouamane: Make a test with 4 gpus (2 in one pg, 2 in other pg) - init_distributed(tp=tp, dp=dp, pp=pp)(_test_random_state_sync)() + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_random_state_sync)() def _test_random_state_sync(parallel_context: ParallelContext): diff --git a/tests/test_tensor_parallel.py b/tests/test_tensor_parallel.py index 127ba2fa..261e6a4f 100644 --- a/tests/test_tensor_parallel.py +++ b/tests/test_tensor_parallel.py @@ -15,14 +15,16 @@ from torch import nn as torch_nn -@pytest.mark.parametrize("tp,dp,pp", [pytest.param(i, 1, 1) for i in range(1, min(4, available_gpus()) + 1)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [pytest.param(i, 1, 1, 1) for i in range(3, min(4, available_gpus()) + 1)]) @pytest.mark.parametrize("tp_mode", list(TensorParallelLinearMode)) @pytest.mark.parametrize("async_communication", [False, True]) @rerun_if_address_is_in_use() -def test_column_linear(tp: int, dp: int, pp: int, tp_mode: TensorParallelLinearMode, async_communication: bool): +def test_column_linear( + tp: int, dp: int, pp: int, sp: int, tp_mode: TensorParallelLinearMode, async_communication: bool +): if tp_mode is TensorParallelLinearMode.ALL_REDUCE and async_communication: pytest.skip("ALL_REDUCE mode does not support async communication") - init_distributed(tp=tp, dp=dp, pp=pp)(_test_column_linear)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_column_linear)( tp_mode=tp_mode, async_communication=async_communication ) @@ -86,7 +88,7 @@ def _test_column_linear( random_input = sharded_random_input else: ValueError(f"Unsupported mode: {tp_mode}") - # It's important that `random_input` and `sharded_random_input` are two seperate tensors with seperate storage + # It's important that `random_input` and `sharded_random_input` are two separate tensors with separate storage sharded_random_input = sharded_random_input.clone() random_input.requires_grad = True sharded_random_input.requires_grad = True @@ -147,15 +149,17 @@ def _test_column_linear( parallel_context.destroy() -@pytest.mark.parametrize("tp,dp,pp", [pytest.param(i, 1, 1) for i in range(1, min(4, available_gpus()) + 1)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [pytest.param(i, 1, 1, 1) for i in range(1, min(4, available_gpus()) + 1)]) @pytest.mark.parametrize("tp_mode", list(TensorParallelLinearMode)) @pytest.mark.parametrize("async_communication", [False, True]) @rerun_if_address_is_in_use() -def test_row_linear(tp: int, dp: int, pp: int, tp_mode: TensorParallelLinearMode, async_communication: bool): +def test_row_linear(tp: int, dp: int, pp: int, sp: int, tp_mode: TensorParallelLinearMode, async_communication: bool): if tp_mode is TensorParallelLinearMode.ALL_REDUCE and async_communication: pytest.skip("ALL_REDUCE mode does not support async communication") - init_distributed(tp=tp, dp=dp, pp=pp)(_test_row_linear)(tp_mode=tp_mode, async_communication=async_communication) + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_row_linear)( + tp_mode=tp_mode, async_communication=async_communication + ) def _test_row_linear(parallel_context: ParallelContext, tp_mode: TensorParallelLinearMode, async_communication: bool): @@ -264,11 +268,11 @@ def _test_row_linear(parallel_context: ParallelContext, tp_mode: TensorParallelL parallel_context.destroy() -@pytest.mark.parametrize("tp,dp,pp", [pytest.param(i, 1, 1) for i in range(1, min(4, available_gpus()) + 1)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [pytest.param(i, 1, 1, 1) for i in range(1, min(4, available_gpus()) + 1)]) @pytest.mark.parametrize("tp_mode", list(TensorParallelLinearMode)) @rerun_if_address_is_in_use() -def test_tensor_parallel_embedding(tp: int, dp: int, pp: int, tp_mode: TensorParallelLinearMode): - init_distributed(tp=tp, dp=dp, pp=pp)(_test_tensor_parallel_embedding)(tp_mode=tp_mode) +def test_tensor_parallel_embedding(tp: int, dp: int, pp: int, sp: int, tp_mode: TensorParallelLinearMode): + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_tensor_parallel_embedding)(tp_mode=tp_mode) def _test_tensor_parallel_embedding(parallel_context: ParallelContext, tp_mode: TensorParallelLinearMode): diff --git a/tests/test_zero.py b/tests/test_zero.py index f1127f94..b7503553 100644 --- a/tests/test_zero.py +++ b/tests/test_zero.py @@ -22,10 +22,10 @@ from torch.nn.parallel import DistributedDataParallel -@pytest.mark.parametrize("tp,dp,pp", [pytest.param(1, i, 1) for i in range(1, min(4, available_gpus()) + 1)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [pytest.param(1, i, 1, 1) for i in range(1, min(4, available_gpus()) + 1)]) @rerun_if_address_is_in_use() -def test_zero_optimizer(tp: int, dp: int, pp: int): - init_distributed(pp=pp, dp=dp, tp=tp)(_test_zero_optimizer)() +def test_zero_optimizer(tp: int, dp: int, pp: int, sp: int): + init_distributed(pp=pp, dp=dp, tp=tp, sp=sp)(_test_zero_optimizer)() def _test_zero_optimizer(parallel_context: ParallelContext): @@ -198,16 +198,16 @@ def _test_zero_optimizer(parallel_context: ParallelContext): parallel_context.destroy() -@pytest.mark.parametrize("tp,dp,pp", [pytest.param(2, i, 1) for i in range(1, available_gpus() // 2 + 1)]) +@pytest.mark.parametrize("tp,dp,pp,sp", [pytest.param(2, i, 1, 1) for i in range(1, available_gpus() // 2 + 1)]) @pytest.mark.parametrize("tp_mode", list(TensorParallelLinearMode)) @pytest.mark.parametrize("async_communication", [False, True]) @rerun_if_address_is_in_use() def test_zero_optimizer_with_tp( - tp: int, dp: int, pp: int, tp_mode: TensorParallelLinearMode, async_communication: bool + tp: int, dp: int, pp: int, sp: int, tp_mode: TensorParallelLinearMode, async_communication: bool ): if tp_mode is TensorParallelLinearMode.ALL_REDUCE and async_communication: pytest.skip("ALL_REDUCE mode does not support async communication") - init_distributed(pp=pp, dp=dp, tp=tp)(_test_zero_optimizer_with_tp)( + init_distributed(pp=pp, dp=dp, tp=tp, sp=sp)(_test_zero_optimizer_with_tp)( tp_mode=tp_mode, async_communication=async_communication ) From 07ebf2c75ed20c5c9e08b4fe88f8f26821152595 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Tue, 2 Jul 2024 12:35:17 +0000 Subject: [PATCH 05/19] ddp process group for backwawrd --- src/nanotron/helpers.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/nanotron/helpers.py b/src/nanotron/helpers.py index 1c8bc54e..c5f5af52 100644 --- a/src/nanotron/helpers.py +++ b/src/nanotron/helpers.py @@ -381,8 +381,7 @@ def grad_optimizer_builder(named_param_groups): named_params_or_groups=named_param_groups, # TODO @thomasw21: We need a better API for gradient accumulation/zero etc ... optimizer_builder=optimizer_builder, - # dp_pg=parallel_context.dp_pg, - dp_pg=parallel_context.dp_sp_pg, + dp_pg=parallel_context.dp_sp_pg, # sequence parallel and data parallel process group ) # SANITY CHECK: assert that optimizer's named_params point to model's params (check only the first one) @@ -407,8 +406,9 @@ def grad_optimizer_builder(named_param_groups): assert isinstance(grad_accumulator, FP32GradientAccumulator) grad_accumulator.assign_param_offsets( - # dp_rank=dist.get_rank(parallel_context.dp_pg), - dp_rank=dist.get_rank(parallel_context.dp_sp_pg), + dp_rank=dist.get_rank( + parallel_context.dp_sp_pg + ), # sequence parallel and data parallel process group will synchronize the gradient together param_name_to_offsets=param_name_to_dp_rank_offsets, ) @@ -417,8 +417,7 @@ def grad_optimizer_builder(named_param_groups): assert isinstance(grad_accumulator, FP32GradientAccumulator) model.register_comm_hook( state=FP32GradBucketManager( - # dp_pg=parallel_context.dp_pg, - dp_pg=parallel_context.dp_sp_pg, + dp_pg=parallel_context.dp_sp_pg, # sequence parallel and data parallel process group will synchronize the gradient together accumulator=grad_accumulator, param_id_to_name={ id(param): param.get_tied_info().get_full_name_from_module_id_to_prefix( @@ -705,7 +704,6 @@ def get_consumed_train_samples_of_a_data_stage_from_ckp( stage: DatasetStageArgs, metadata: TrainingMetadata ) -> Optional[int]: start_training_step = stage.start_training_step - # TODO: if a new dataset is added, we know that it has consumed 0 tokens? Cannot add new dataset for now. return next( (s.consumed_train_samples for s in metadata.data_stages if s.start_training_step == start_training_step), None, From 3f504b3d96eaf05ac9b14a10b5c8d7e2b6d81cc0 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Tue, 2 Jul 2024 13:32:08 +0000 Subject: [PATCH 06/19] clean code --- src/nanotron/parallel/context.py | 30 +----------------------------- 1 file changed, 1 insertion(+), 29 deletions(-) diff --git a/src/nanotron/parallel/context.py b/src/nanotron/parallel/context.py index b070debb..a7027b77 100644 --- a/src/nanotron/parallel/context.py +++ b/src/nanotron/parallel/context.py @@ -85,20 +85,12 @@ def _init_parallel_groups(self): self.tp_pg = self.create_new_group(ranks.transpose((0, 1, 2, 3, 4)).reshape((-1, self.tensor_parallel_size))) self.sp_pg = self.create_new_group(ranks.transpose((1, 2, 3, 4, 0)).reshape((-1, self.sequence_parallel_size))) - # only need sync the gradient. Don't need to load different data. Be careful! - # Anything related to dp_pg get changed. - # Create a group DP+CP. Sync between this group. - # temporary fix - # self.dp_pg = self.sp_pg + # Create a group DP+SP. Sync gradient/avg loss/shard optimizer between this group. things related to dp_pg get changed. But don't need to load different data. self.dp_sp_pg = self.create_new_group( ranks.transpose((1, 4, 2, 0, 3)).reshape((-1, self.data_parallel_size * self.sequence_parallel_size)) ) # the last two dimension should correspond to sp and dp. - # self.dp_pg = self.create_new_group(ranks.transpose((1, 4, 2, 0, 3)).reshape((-1, self.data_parallel_size*self.sequence_parallel_size))) #the last two dimension should correspond to sp and dp. self.dp_pg = self.create_new_group(ranks.transpose((4, 0, 1, 2, 3)).reshape((-1, self.data_parallel_size))) self.pp_pg = self.create_new_group(ranks.transpose((3, 4, 0, 1, 2)).reshape((-1, self.pipeline_parallel_size))) - # print("dp_sp_pg: ",ranks.transpose((1, 4, 2, 0, 3)).reshape((-1, self.data_parallel_size*self.sequence_parallel_size))) - # print("dp_pg: ", ranks.transpose((4, 0, 1, 2, 3)).reshape((-1, self.data_parallel_size))) - # print("sp_pg: ", ranks.transpose((1, 2, 3, 4, 0)).reshape((-1, self.sequence_parallel_size))) self.expert_pg = self.create_new_group( ranks.transpose((2, 3, 4, 0, 1)).reshape((-1, self.expert_parallel_size)) ) @@ -113,25 +105,6 @@ def _init_parallel_groups(self): for sp_rank in range(self.sequence_parallel_size) ] ) - - # self.tp_pg = self.create_new_group(ranks.transpose((0, 1, 2, 3)).reshape((-1, self.tensor_parallel_size))) - # self.dp_pg = self.create_new_group(ranks.transpose((3, 0, 1, 2)).reshape((-1, self.data_parallel_size))) - # self.pp_pg = self.create_new_group(ranks.transpose((2, 3, 0, 1)).reshape((-1, self.pipeline_parallel_size))) - # self.expert_pg = self.create_new_group(ranks.transpose((1, 2, 3, 0)).reshape((-1, self.expert_parallel_size))) - - # model parallel group = combination of tp and pp and exp for a given dp rank - # self.mp_pg = self.create_new_group( - # [ranks[:, :, dp_rank, :].reshape(-1) for dp_rank in range(self.data_parallel_size)] - # ) - - # self.tp_and_expert_pg = self.create_new_group( - # [ - # ranks[:, pp_rank, dp_rank, :].reshape(-1) - # for pp_rank in range(self.pipeline_parallel_size) - # for dp_rank in range(self.data_parallel_size) - # ] - # ) - self.world_rank_matrix: np.ndarray = ranks def create_new_group(self, all_groups_ranks: np.ndarray) -> dist.ProcessGroup: @@ -190,5 +163,4 @@ def get_global_rank( :return: numpy.int64, The global rank. """ - # return self.world_rank_matrix[sp_rank, ep_rank, pp_rank, 0, tp_rank] return self.world_rank_matrix[sp_rank, ep_rank, pp_rank, dp_rank, tp_rank] From 3f841bad5d4a030d3242e16ef60177e0fbdb1372 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Tue, 2 Jul 2024 14:20:31 +0000 Subject: [PATCH 07/19] update tests to add SP process group --- examples/llama/tests/test_conversion.py | 22 +++--- tests/helpers/utils.py | 10 +-- .../nanoset/test_build_nanoset_dataloader.py | 30 ++++---- tests/test_clip_grads.py | 8 +-- tests/test_data_parallel.py | 2 +- tests/test_distributed.py | 12 ++-- tests/test_optimizer_params_groups.py | 2 +- tests/test_p2p.py | 2 +- ..._parameters_accumulate_gradient_in_fp32.py | 6 +- tests/test_pipeline_parallel.py | 10 +-- tests/test_serialize.py | 68 ++++++++++--------- tests/test_tie_weights.py | 8 +-- tests/test_zero.py | 2 +- 13 files changed, 97 insertions(+), 85 deletions(-) diff --git a/examples/llama/tests/test_conversion.py b/examples/llama/tests/test_conversion.py index b5ce3529..7e86de6e 100644 --- a/examples/llama/tests/test_conversion.py +++ b/examples/llama/tests/test_conversion.py @@ -105,7 +105,7 @@ def _test_nt_to_hf(parallel_context: ParallelContext, input_ids: torch.Tensor): def test_nt_to_hf(input_ids: torch.Tensor): - init_distributed(tp=1, dp=1, pp=1)(_test_nt_to_hf)(input_ids=input_ids) + init_distributed(tp=1, dp=1, pp=1, sp=1)(_test_nt_to_hf)(input_ids=input_ids) def _test_nt_to_hf_with_files(parallel_context: ParallelContext, input_ids: torch.Tensor, test_context: TestContext): @@ -130,7 +130,9 @@ def _test_nt_to_hf_with_files(parallel_context: ParallelContext, input_ids: torc def test_nt_to_hf_with_files(input_ids: torch.Tensor): - init_distributed(tp=1, dp=1, pp=1)(_test_nt_to_hf_with_files)(input_ids=input_ids, test_context=TestContext()) + init_distributed(tp=1, dp=1, pp=1, sp=1)(_test_nt_to_hf_with_files)( + input_ids=input_ids, test_context=TestContext() + ) def _test_hf_to_nt(parallel_context: ParallelContext, input_ids: torch.Tensor): @@ -141,11 +143,11 @@ def _test_hf_to_nt(parallel_context: ParallelContext, input_ids: torch.Tensor): logits_nt = model_nt.model(input_ids, input_mask).permute(1, 0, 2) logits_hf = model_hf(input_ids).logits assert logits_nt.size() == logits_hf.size() - torch.testing.assert_allclose(logits_hf, logits_nt, atol=ATOL) + torch.testing.assert_allclose(logits_hf, logits_nt, atol=ATOL) def test_hf_to_nt(input_ids: torch.Tensor): - init_distributed(tp=1, dp=1, pp=1)(_test_hf_to_nt)(input_ids=input_ids) + init_distributed(tp=1, dp=1, pp=1, sp=1)(_test_hf_to_nt)(input_ids=input_ids) def _test_hf_to_nt_with_files(parallel_context: ParallelContext, input_ids: torch.Tensor, test_context: TestContext): @@ -168,7 +170,9 @@ def _test_hf_to_nt_with_files(parallel_context: ParallelContext, input_ids: torc def test_hf_to_nt_with_files(input_ids: torch.Tensor): - init_distributed(tp=1, dp=1, pp=1)(_test_hf_to_nt_with_files)(input_ids=input_ids, test_context=TestContext()) + init_distributed(tp=1, dp=1, pp=1, sp=1)(_test_hf_to_nt_with_files)( + input_ids=input_ids, test_context=TestContext() + ) def _test_composed_conversion(parallel_context: ParallelContext): @@ -196,7 +200,7 @@ def _test_composed_conversion(parallel_context: ParallelContext): def test_composed_conversion(): - init_distributed(tp=1, dp=1, pp=1)(_test_composed_conversion)() + init_distributed(tp=1, dp=1, pp=1, sp=1)(_test_composed_conversion)() def _save_parallel_nanotron(parallel_context: ParallelContext, input_ids: torch.Tensor, nt_path: Path): @@ -239,9 +243,11 @@ def test_tensor_parallel_conversion(input_ids: torch.Tensor): hf_path = root / "nanotron" # Launch both parts. - init_distributed(tp=2, dp=1, pp=1)(_save_parallel_nanotron)(input_ids=input_ids, nt_path=nt_path) + init_distributed(tp=2, dp=1, pp=1, sp=1)(_save_parallel_nanotron)(input_ids=input_ids, nt_path=nt_path) assert (nt_path / "logits.pt").exists() - init_distributed(tp=1, dp=1, pp=1)(_convert_from_parallel)(input_ids=input_ids, nt_path=nt_path, hf_path=hf_path) + init_distributed(tp=1, dp=1, pp=1, sp=1)(_convert_from_parallel)( + input_ids=input_ids, nt_path=nt_path, hf_path=hf_path + ) assert (hf_path / "logits.pt").exists() # Load logits and verify they match. diff --git a/tests/helpers/utils.py b/tests/helpers/utils.py index 44813cac..b8f6488a 100644 --- a/tests/helpers/utils.py +++ b/tests/helpers/utils.py @@ -107,8 +107,8 @@ def is_dict_equal(first: Dict, second: Dict, sub_paths: Optional[List[str]] = No return True, None -def get_all_3d_configurations(gpus: int) -> List[Tuple[int, int, int]]: - """Given a number of gpus, we want all 3d configurations possible such that pp * dp * tp = gpus""" +def get_all_4d_configurations(gpus: int) -> List[Tuple[int, int, int, int]]: + """Given a number of gpus, we want all 4d configurations possible such that pp * dp * tp * sp = gpus""" result = [] for tp in range(1, gpus + 1): if gpus % tp != 0: @@ -121,8 +121,10 @@ def get_all_3d_configurations(gpus: int) -> List[Tuple[int, int, int]]: for pp in range(1, gpus_left_after_dp + 1): if gpus_left_after_dp % pp != 0: continue - if tp * dp * pp == gpus: - result.append((pp, dp, tp)) + gpus_left_after_pp = gpus_left_after_dp // pp + for sp in range(1, gpus_left_after_pp + 1): + if tp * dp * pp * sp == gpus: + result.append((tp, dp, pp, sp)) return result diff --git a/tests/nanoset/test_build_nanoset_dataloader.py b/tests/nanoset/test_build_nanoset_dataloader.py index 2c3ff542..331e4f64 100644 --- a/tests/nanoset/test_build_nanoset_dataloader.py +++ b/tests/nanoset/test_build_nanoset_dataloader.py @@ -2,9 +2,6 @@ from math import isclose from pathlib import Path -package_path = Path(__file__).parent.parent -sys.path.append(str(package_path)) - import numpy as np import pytest from helpers.context import TestContext @@ -16,7 +13,7 @@ create_dummy_json_dataset, preprocess_dummy_dataset, ) -from helpers.utils import available_gpus, get_all_3d_configurations, init_distributed, rerun_if_address_is_in_use +from helpers.utils import available_gpus, get_all_4d_configurations, init_distributed, rerun_if_address_is_in_use from nanotron.data.dataloader_builder import build_nanoset_dataloader from nanotron.data.nanoset import Nanoset from nanotron.data.utils import count_dataset_indexes, normalize @@ -24,13 +21,16 @@ from nanotron.utils import main_rank_first from transformers import AutoTokenizer +package_path = Path(__file__).parent.parent +sys.path.append(str(package_path)) + @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @pytest.mark.parametrize("train_steps", [5, 100]) @@ -38,7 +38,7 @@ @pytest.mark.parametrize("tokenizer_name_or_path", ["openai-community/gpt2", "unsloth/llama-3-8b-bnb-4bit"]) @rerun_if_address_is_in_use() def test_build_nanoset_dataloader( - tp: int, dp: int, pp: int, train_steps: int, sequence_length: int, tokenizer_name_or_path: str + tp: int, dp: int, pp: int, sp: int, train_steps: int, sequence_length: int, tokenizer_name_or_path: str ): test_context = TestContext() @@ -49,7 +49,7 @@ def test_build_nanoset_dataloader( for idx, json_path in enumerate(json_paths): create_dummy_json_dataset(path_to_json=json_path, dummy_text=f"Nanoset {idx}!", n_samples=(idx + 1) * 50000) - init_distributed(tp=tp, dp=dp, pp=pp)(_test_build_nanoset_dataloader)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_build_nanoset_dataloader)( json_paths=json_paths, path_to_mmap_files=mmap_dataset_paths, train_steps=train_steps, @@ -155,17 +155,19 @@ def _test_build_nanoset_dataloader( @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @pytest.mark.parametrize("skipped_batches", [20, 50]) @pytest.mark.parametrize("tokenizer_name_or_path", ["openai-community/gpt2", "unsloth/llama-3-8b-bnb-4bit"]) @rerun_if_address_is_in_use() -def test_recover_nanoset_dataloader(tp: int, dp: int, pp: int, skipped_batches: int, tokenizer_name_or_path: str): +def test_recover_nanoset_dataloader( + tp: int, dp: int, pp: int, sp: int, skipped_batches: int, tokenizer_name_or_path: str +): test_context = TestContext() # Create dataset files @@ -175,7 +177,7 @@ def test_recover_nanoset_dataloader(tp: int, dp: int, pp: int, skipped_batches: for idx, json_path in enumerate(json_paths): create_dummy_json_dataset(path_to_json=json_path, dummy_text=f"Nanoset {idx}!", n_samples=(idx + 1) * 50000) - init_distributed(tp=tp, dp=dp, pp=pp)(_test_recover_nanoset_dataloader)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_recover_nanoset_dataloader)( json_paths=json_paths, path_to_mmap_files=mmap_dataset_paths, skipped_batches=skipped_batches, diff --git a/tests/test_clip_grads.py b/tests/test_clip_grads.py index b4682875..66940294 100644 --- a/tests/test_clip_grads.py +++ b/tests/test_clip_grads.py @@ -34,7 +34,7 @@ @pytest.mark.parametrize("norm_type", [math.inf, 1.0, 2.0]) @rerun_if_address_is_in_use() def test_clip_grads_with_pp(norm_type: float): - init_distributed(tp=1, dp=1, pp=2)(_test_clip_grads_with_pp)(norm_type=norm_type) + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_clip_grads_with_pp)(norm_type=norm_type) def _test_clip_grads_with_pp(parallel_context: ParallelContext, norm_type: float): @@ -203,7 +203,7 @@ def _test_clip_grads_with_pp(parallel_context: ParallelContext, norm_type: float @pytest.mark.parametrize("norm_type", [math.inf, 1.0, 2.0]) @rerun_if_address_is_in_use() def test_clip_grads_with_tp(tp_mode: TensorParallelLinearMode, async_communication: bool, norm_type: float): - init_distributed(tp=2, dp=1, pp=1)(_test_clip_grads_with_tp)( + init_distributed(tp=2, dp=1, pp=1, sp=1)(_test_clip_grads_with_tp)( tp_mode=tp_mode, async_communication=async_communication, norm_type=norm_type ) @@ -345,7 +345,7 @@ def _test_clip_grads_with_tp( @pytest.mark.parametrize("norm_type", [math.inf, 1.0, 2.0]) @rerun_if_address_is_in_use() def test_clip_grads_tied_weights(norm_type: float): - init_distributed(tp=1, dp=1, pp=2)(_test_clip_grads_tied_weights)(norm_type=norm_type) + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_clip_grads_tied_weights)(norm_type=norm_type) def _test_clip_grads_tied_weights(parallel_context: ParallelContext, norm_type: float): @@ -438,7 +438,7 @@ def _test_clip_grads_tied_weights(parallel_context: ParallelContext, norm_type: @pytest.mark.parametrize("norm_type", [math.inf, 1.0, 2.0]) @rerun_if_address_is_in_use() def test_clip_grads_fp32_accumulator(norm_type: float, half_precision: torch.dtype): - init_distributed(tp=1, dp=1, pp=2)(_test_clip_grads_fp32_accumulator)( + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_clip_grads_fp32_accumulator)( norm_type=norm_type, half_precision=half_precision ) diff --git a/tests/test_data_parallel.py b/tests/test_data_parallel.py index 21ae191a..bc367470 100644 --- a/tests/test_data_parallel.py +++ b/tests/test_data_parallel.py @@ -17,7 +17,7 @@ @pytest.mark.parametrize("accumulation_steps", [1, 3]) @rerun_if_address_is_in_use() def test_ddp_with_afab(accumulation_steps): - init_distributed(tp=1, dp=2, pp=1)(_test_ddp_with_afab)(accumulation_steps=accumulation_steps) + init_distributed(tp=1, dp=2, pp=1, sp=1)(_test_ddp_with_afab)(accumulation_steps=accumulation_steps) def _test_ddp_with_afab(parallel_context: ParallelContext, accumulation_steps: int): diff --git a/tests/test_distributed.py b/tests/test_distributed.py index 7c0d2462..241dd56e 100644 --- a/tests/test_distributed.py +++ b/tests/test_distributed.py @@ -3,7 +3,7 @@ import torch.distributed as dist from helpers.utils import ( available_gpus, - get_all_3d_configurations, + get_all_4d_configurations, init_distributed, rerun_if_address_is_in_use, ) @@ -36,13 +36,13 @@ def _test_init_parallel_context(parallel_context: ParallelContext): @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_init_parallel_context(tp: int, dp: int, pp: int): - init_distributed(tp=tp, dp=dp, pp=pp)(_test_init_parallel_context)() \ No newline at end of file +def test_init_parallel_context(tp: int, dp: int, pp: int, sp: int): + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_init_parallel_context)() diff --git a/tests/test_optimizer_params_groups.py b/tests/test_optimizer_params_groups.py index fa835e1c..60d541c3 100644 --- a/tests/test_optimizer_params_groups.py +++ b/tests/test_optimizer_params_groups.py @@ -496,7 +496,7 @@ def optimizer_builder(inp_param_groups): def test_ddp_optimizer_grad_accumulation_lr_weight_decay_multiple_group( half_precision: torch.dtype, accumulation_steps: int ): - init_distributed(tp=1, dp=2, pp=1)(_test_ddp_optimizer_grad_accumulation_lr_weight_decay_multiple_group)( + init_distributed(tp=1, dp=2, pp=1, sp=1)(_test_ddp_optimizer_grad_accumulation_lr_weight_decay_multiple_group)( half_precision=half_precision, accumulation_steps=accumulation_steps, ) diff --git a/tests/test_p2p.py b/tests/test_p2p.py index ed8245a8..9b260c12 100644 --- a/tests/test_p2p.py +++ b/tests/test_p2p.py @@ -14,7 +14,7 @@ @pytest.mark.parametrize("full", [True, False]) @rerun_if_address_is_in_use() def test_check_send_recv_tensor(send_contiguous: bool, full: bool): - init_distributed(tp=1, dp=1, pp=2)(_test_check_send_recv_tensor)(send_contiguous=send_contiguous, full=full) + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_check_send_recv_tensor)(send_contiguous=send_contiguous, full=full) def _test_check_send_recv_tensor(parallel_context: ParallelContext, send_contiguous: bool, full: bool): diff --git a/tests/test_parameters_accumulate_gradient_in_fp32.py b/tests/test_parameters_accumulate_gradient_in_fp32.py index ba0debd6..0c7eb152 100644 --- a/tests/test_parameters_accumulate_gradient_in_fp32.py +++ b/tests/test_parameters_accumulate_gradient_in_fp32.py @@ -143,7 +143,7 @@ def test_optimizer_can_step_gradient_in_fp32(half_precision: torch.dtype): @pytest.mark.parametrize("train_iterations", [1, 3]) @rerun_if_address_is_in_use() def test_ddp_with_grad_accum_in_fp32(half_precision: torch.dtype, accumulation_steps: int, train_iterations: int): - init_distributed(tp=1, dp=2, pp=1)(_test_ddp_with_grad_accum_in_fp32)( + init_distributed(tp=1, dp=2, pp=1, sp=1)(_test_ddp_with_grad_accum_in_fp32)( half_precision=half_precision, accumulation_steps=accumulation_steps, train_iterations=train_iterations, @@ -257,7 +257,7 @@ def _test_ddp_with_grad_accum_in_fp32( accumulator.backward(loss_fp32_accum) for name, param in model_ddp_fp32_accum.named_parameters(): - # Check that half grads has been set to None in sync step, to avoid it being uncorrectly used + # Check that half grads has been set to None in sync step, to avoid it being incorrectly used half_grad = param.grad assert half_grad is None, f"{half_grad} != None" @@ -310,7 +310,7 @@ def _test_ddp_with_grad_accum_in_fp32( @pytest.mark.parametrize("reduce_scatter", [True, False]) @rerun_if_address_is_in_use() def test_tied_weights_sync_with_grad_accum_in_fp32(pipeline_engine: PipelineEngine, reduce_scatter: bool): - init_distributed(tp=1, dp=2, pp=2)(_test_tied_weights_sync_with_grad_accum_in_fp32)( + init_distributed(tp=1, dp=2, pp=2, sp=1)(_test_tied_weights_sync_with_grad_accum_in_fp32)( pipeline_engine=pipeline_engine, reduce_scatter=reduce_scatter ) diff --git a/tests/test_pipeline_parallel.py b/tests/test_pipeline_parallel.py index a7f8008f..ac8a18a6 100644 --- a/tests/test_pipeline_parallel.py +++ b/tests/test_pipeline_parallel.py @@ -22,7 +22,7 @@ @pytest.mark.skipif(available_gpus() < 2, reason="Testing build_and_set_rank requires at least 2 gpus") @rerun_if_address_is_in_use() def test_build_and_set_rank(): - init_distributed(tp=1, dp=1, pp=2)(_test_build_and_set_rank)() + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_build_and_set_rank)() def _test_build_and_set_rank(parallel_context: ParallelContext): @@ -72,7 +72,7 @@ def test_init_on_device_and_dtype(): @pytest.mark.parametrize("pp", list(range(2, min(4, available_gpus()) + 1))) @rerun_if_address_is_in_use() def test_pipeline_engine(pipeline_engine: PipelineEngine, pp: int): - init_distributed(tp=1, dp=1, pp=pp)(_test_pipeline_engine)(pipeline_engine=pipeline_engine) + init_distributed(tp=1, dp=1, pp=pp, sp=1)(_test_pipeline_engine)(pipeline_engine=pipeline_engine) def _test_pipeline_engine(parallel_context: ParallelContext, pipeline_engine: PipelineEngine): @@ -217,7 +217,7 @@ def _test_pipeline_engine(parallel_context: ParallelContext, pipeline_engine: Pi @pytest.mark.parametrize("pp", list(range(2, min(4, available_gpus()) + 1))) @rerun_if_address_is_in_use() def test_pipeline_engine_with_tensor_that_does_not_require_grad(pipeline_engine: PipelineEngine, pp: int): - init_distributed(pp=pp, dp=1, tp=1)(_test_pipeline_engine_with_tensor_that_does_not_require_grad)( + init_distributed(pp=pp, dp=1, tp=1, sp=1)(_test_pipeline_engine_with_tensor_that_does_not_require_grad)( pipeline_engine=pipeline_engine ) @@ -448,7 +448,7 @@ def dummy_infinite_data_loader_with_non_differentiable_tensor( @pytest.mark.parametrize("pp", list(range(2, min(4, available_gpus()) + 1))) @rerun_if_address_is_in_use() def test_pipeline_forward_without_engine(pp: int): - init_distributed(pp=pp, dp=1, tp=1)(_test_pipeline_forward_without_engine)() + init_distributed(pp=pp, dp=1, tp=1, sp=1)(_test_pipeline_forward_without_engine)() def _test_pipeline_forward_without_engine(parallel_context: ParallelContext): @@ -623,7 +623,7 @@ def dummy_infinite_data_loader_with_non_differentiable_tensor( ) @rerun_if_address_is_in_use() def test_pipeline_engine_diamond(pipeline_engine: PipelineEngine): - init_distributed(pp=4, dp=1, tp=1)(_test_pipeline_engine_diamond)(pipeline_engine=pipeline_engine) + init_distributed(pp=4, dp=1, tp=1, sp=1)(_test_pipeline_engine_diamond)(pipeline_engine=pipeline_engine) pass diff --git a/tests/test_serialize.py b/tests/test_serialize.py index 329ff279..6b28c4c0 100644 --- a/tests/test_serialize.py +++ b/tests/test_serialize.py @@ -4,7 +4,7 @@ from helpers.dummy import dummy_infinite_data_loader, init_dummy_model from helpers.utils import ( available_gpus, - get_all_3d_configurations, + get_all_4d_configurations, init_distributed, is_dict_equal, rerun_if_address_is_in_use, @@ -42,18 +42,18 @@ def test_save_and_load_with_changed_topolgy(): @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_save_and_load_model(tp: int, dp: int, pp: int): +def test_save_and_load_model(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp)(_test_save_and_load_model)(test_context=test_context) + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_and_load_model)(test_context=test_context) def _test_save_and_load_model(parallel_context: ParallelContext, test_context: TestContext): @@ -84,18 +84,18 @@ def _test_save_and_load_model(parallel_context: ParallelContext, test_context: T @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_save_and_load_optimizer(tp: int, dp: int, pp: int): +def test_save_and_load_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp)(_test_save_and_load_optimizer)(test_context=test_context) + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_and_load_optimizer)(test_context=test_context) def _test_save_and_load_optimizer(parallel_context: ParallelContext, test_context: TestContext): @@ -149,18 +149,20 @@ def _test_save_and_load_optimizer(parallel_context: ParallelContext, test_contex @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_save_zero_optimizer_and_load_optimizer(tp: int, dp: int, pp: int): +def test_save_zero_optimizer_and_load_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp)(_test_save_zero_optimizer_and_load_optimizer)(test_context=test_context) + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_zero_optimizer_and_load_optimizer)( + test_context=test_context + ) def _test_save_zero_optimizer_and_load_optimizer(parallel_context: ParallelContext, test_context: TestContext): @@ -223,18 +225,18 @@ def _test_save_zero_optimizer_and_load_optimizer(parallel_context: ParallelConte @pytest.mark.skip(reason="Assumption that zero and non zero optimizer have the same serialization format doesn't hold") @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_save_zero_optimizer_and_load_data_parallel_optimizer(tp: int, dp: int, pp: int): +def test_save_zero_optimizer_and_load_data_parallel_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp)(_test_save_zero_optimizer_and_load_data_parallel_optimizer)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_zero_optimizer_and_load_data_parallel_optimizer)( test_context=test_context ) @@ -294,18 +296,18 @@ def _test_save_zero_optimizer_and_load_data_parallel_optimizer( @pytest.mark.skip(reason="Assumption that zero and non zero optimizer have the same serialization format doesn't hold") @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_save_data_parallel_optimizer_and_load_zero_optimizer(tp: int, dp: int, pp: int): +def test_save_data_parallel_optimizer_and_load_zero_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp)(_test_save_data_parallel_optimizer_and_load_zero_optimizer)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_data_parallel_optimizer_and_load_zero_optimizer)( test_context=test_context ) @@ -361,18 +363,18 @@ def _test_save_data_parallel_optimizer_and_load_zero_optimizer( @pytest.mark.parametrize( - "tp,dp,pp", + "tp,dp,pp,sp", [ - pytest.param(*all_3d_configs) + pytest.param(*all_4d_configs) for gpus in range(1, min(available_gpus(), 4) + 1) - for all_3d_configs in get_all_3d_configurations(gpus) + for all_4d_configs in get_all_4d_configurations(gpus) ], ) @rerun_if_address_is_in_use() -def test_save_optimizer_with_additional_state_dict_keys(tp: int, dp: int, pp: int): +def test_save_optimizer_with_additional_state_dict_keys(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp)(_test_save_optimizer_with_additional_state_dict_keys)( + init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_optimizer_with_additional_state_dict_keys)( test_context=test_context ) @@ -480,7 +482,7 @@ def _test_save_optimizer_with_additional_state_dict_keys(parallel_context: Paral def test_save_and_load_random_states(): test_context = TestContext() # We use DP=2 as we're interested in testing - init_distributed(tp=2, dp=1, pp=1)(_test_save_and_load_random_states)(test_context=test_context) + init_distributed(tp=2, dp=1, pp=1, sp=1)(_test_save_and_load_random_states)(test_context=test_context) def _test_save_and_load_random_states(parallel_context: ParallelContext, test_context: TestContext): @@ -519,7 +521,7 @@ def _test_save_and_load_random_states(parallel_context: ParallelContext, test_co @rerun_if_address_is_in_use() def test_serialize_deserialize_tensormetadata(): test_context = TestContext() - init_distributed(tp=2, dp=1, pp=1)(_test_serialize_deserialize_tensormetadata)(test_context=test_context) + init_distributed(tp=2, dp=1, pp=1, sp=1)(_test_serialize_deserialize_tensormetadata)(test_context=test_context) def _test_serialize_deserialize_tensormetadata(parallel_context: ParallelContext, test_context: TestContext): diff --git a/tests/test_tie_weights.py b/tests/test_tie_weights.py index eecfc097..d81aeab0 100644 --- a/tests/test_tie_weights.py +++ b/tests/test_tie_weights.py @@ -15,7 +15,7 @@ @rerun_if_address_is_in_use() def test_tie_weight_in_same_device(): - init_distributed(tp=1, dp=1, pp=1)(_test_tie_weight_in_same_device)() + init_distributed(tp=1, dp=1, pp=1, sp=1)(_test_tie_weight_in_same_device)() def _test_tie_weight_in_same_device(parallel_context: ParallelContext): @@ -49,7 +49,7 @@ def _test_tie_weight_in_same_device(parallel_context: ParallelContext): @rerun_if_address_is_in_use() def test_tie_weight_in_different_device(): - init_distributed(tp=1, dp=1, pp=2)(_test_tie_weight_in_different_device)() + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_tie_weight_in_different_device)() def _test_tie_weight_in_different_device(parallel_context: ParallelContext): @@ -120,7 +120,7 @@ def _test_tie_weight_in_different_device(parallel_context: ParallelContext): @rerun_if_address_is_in_use() def test_tie_weight_across_dp_is_impossible(): - init_distributed(tp=1, dp=2, pp=1)(_test_tie_weight_across_dp_is_impossible)() + init_distributed(tp=1, dp=2, pp=1, sp=1)(_test_tie_weight_across_dp_is_impossible)() def _test_tie_weight_across_dp_is_impossible(parallel_context: ParallelContext): @@ -158,7 +158,7 @@ def _test_tie_weight_across_dp_is_impossible(parallel_context: ParallelContext): @rerun_if_address_is_in_use() def test_tie_weight_in_different_device_have_gradients_synchronized(): - init_distributed(tp=1, dp=1, pp=2)(_test_tie_weight_in_different_device_have_gradients_synchronized)() + init_distributed(tp=1, dp=1, pp=2, sp=1)(_test_tie_weight_in_different_device_have_gradients_synchronized)() def _test_tie_weight_in_different_device_have_gradients_synchronized(parallel_context: ParallelContext): diff --git a/tests/test_zero.py b/tests/test_zero.py index b7503553..c749bc0d 100644 --- a/tests/test_zero.py +++ b/tests/test_zero.py @@ -504,7 +504,7 @@ def _test_zero_optimizer_with_tp( @rerun_if_address_is_in_use() def test_sliced_flat_tensor(): - init_distributed(1, 1, 1)(_test_sliced_flat_tensor)() + init_distributed(1, 1, 1, 1)(_test_sliced_flat_tensor)() def _test_sliced_flat_tensor(parallel_context: ParallelContext): From 9208928b473b68e06f1b1f0a3aa9986d381f8ef7 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Tue, 2 Jul 2024 14:31:56 +0000 Subject: [PATCH 08/19] clean code --- src/nanotron/ring_flash_attn/utils.py | 54 ------------ .../ring_flash_attn/zigzag_ring_flash_attn.py | 87 ------------------- 2 files changed, 141 deletions(-) diff --git a/src/nanotron/ring_flash_attn/utils.py b/src/nanotron/ring_flash_attn/utils.py index c3b27873..dacda6cf 100644 --- a/src/nanotron/ring_flash_attn/utils.py +++ b/src/nanotron/ring_flash_attn/utils.py @@ -110,60 +110,6 @@ def wait(self): self._ops = [] -###### my implementation -# class RingComm: -# def __init__(self, process_group: dist.ProcessGroup): -# self._process_group = process_group -# self._ops = [] -# self.rank = dist.get_rank(self._process_group) -# self.world_size = dist.get_world_size(self._process_group) -# self._reqs = [] - -# self.send_rank = (self.rank + 1) % self.world_size -# self.recv_rank = (self.rank - 1) % self.world_size -# self.send_next_next_rank = (self.rank + 2) % self.world_size -# self.recv_next_next_rank = (self.rank - 2) % self.world_size - -# if process_group is not None: -# self.send_rank = dist.get_global_rank(self._process_group, self.send_rank) -# self.recv_rank = dist.get_global_rank(self._process_group, self.recv_rank) -# self.send_next_next_rank = dist.get_global_rank(self._process_group, self.send_next_next_rank) -# self.recv_next_next_rank = dist.get_global_rank(self._process_group, self.recv_next_next_rank) - -# def send_recv(self, to_send: torch.Tensor, recv_tensor: Optional[torch.Tensor] = None, next_next=False) -> torch.Tensor: -# if recv_tensor is None: -# res = torch.empty_like(to_send) -# else: -# res = recv_tensor -# if next_next: -# send_op = dist.P2POp(dist.isend, to_send, self.send_next_next_rank, group=self._process_group) -# recv_op = dist.P2POp(dist.irecv, res, self.recv_next_next_rank, group=self._process_group) -# else: -# send_op = dist.P2POp(dist.isend, to_send, self.send_rank, group=self._process_group) -# recv_op = dist.P2POp(dist.irecv, res, self.recv_rank, group=self._process_group) -# self._ops.append(send_op) -# self._ops.append(recv_op) -# return res - -# def commit(self): -# # if self._reqs is not None: -# # raise RuntimeError("commit called twice") -# self._reqs.extend(dist.batch_isend_irecv(self._ops)) - -# def wait(self): -# if self._reqs is None: -# raise RuntimeError("wait called before commit") -# # for req in self._reqs: -# # req.wait() -# # self._reqs = None - -# # use more buffer. This may help -# for req in self._reqs[:2]: # Only wait for the first two requests -# req.wait() -# self._reqs = self._reqs[2:] # Remove the first two requests from the list -# self._ops = [] - - def extract_local(tensor: torch.Tensor, rank: int, world_size: int, dim: int = 1) -> torch.Tensor: value_chunks = tensor.chunk(2 * world_size, dim=dim) local_value = torch.cat([value_chunks[rank], value_chunks[2 * world_size - rank - 1]], dim=dim) diff --git a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py index 6b621e2d..2ac1e4e3 100644 --- a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py +++ b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py @@ -75,93 +75,6 @@ def forward(q, k, v, causal): return out, lse -# ### my implementation -# def zigzag_ring_flash_attn_forward( -# process_group, -# q: torch.Tensor, -# k: torch.Tensor, -# v: torch.Tensor, -# softmax_scale, -# dropout_p=0, -# causal=True, -# window_size=(-1, -1), -# alibi_slopes=None, -# deterministic=False, -# ): -# assert causal is True, "zigzag ring is meaningless for causal=False" -# comm = RingComm(process_group) - -# block_seq_len = q.shape[1] // 2 -# q1 = q[:, block_seq_len:] - -# out = None -# lse = None -# next_k_even, next_v_even = None, None -# next_k_odd, next_v_odd = None, None - -# def forward(q, k, v, causal): -# block_out, _, _, _, _, block_lse, _, _ = _flash_attn_forward( -# q, -# k, -# v, -# dropout_p, -# softmax_scale, -# causal=causal, -# window_size=window_size, -# alibi_slopes=alibi_slopes, -# return_softmax=True and dropout_p > 0, -# ) -# return block_out, block_lse - -# for step in range(comm.world_size): -# if step==0: -# # order is important. should wait for the odd -# next_k_odd = comm.send_recv(k) # for 1st -# next_v_odd = comm.send_recv(v) -# next_k_even = comm.send_recv(k,next_next=True) # for 2nd step -# next_v_even = comm.send_recv(v,next_next=True) -# else: -# # for step+2 -# if step % 2 == 0: -# next_k_even = comm.send_recv(next_k_odd) -# next_v_even = comm.send_recv(next_v_odd) -# else: -# next_k_odd = comm.send_recv(next_k_even) -# next_v_odd = comm.send_recv(next_v_even) -# comm.commit() - -# if step == 0: -# block_out, block_lse = forward(q, k, v, causal=True) -# out, lse = update_out_and_lse(out, lse, block_out, block_lse) -# elif step <= comm.rank: -# k0 = k[:, :block_seq_len] -# v0 = v[:, :block_seq_len] -# block_out, block_lse = forward(q, k0, v0, causal=False) -# out, lse = update_out_and_lse(out, lse, block_out, block_lse) -# else: -# block_out, block_lse = forward(q1, k, v, causal=False) -# out, lse = update_out_and_lse( -# out, -# lse, -# block_out, -# block_lse, -# slice_=(slice(None), slice(block_seq_len, None)), -# ) - -# if step + 1 != comm.world_size: -# comm.wait() -# if step % 2 == 0: -# k = next_k_odd -# v = next_v_odd -# else: -# k = next_k_even -# v = next_v_even - -# out = out.to(q.dtype) -# lse = lse.squeeze(dim=-1).transpose(1, 2) -# return out, lse - - def zigzag_ring_flash_attn_backward( process_group, doubt, From dbb8eb76ecb53b00c6e27b510241b31eb61bc0a9 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Thu, 18 Jul 2024 15:31:57 +0000 Subject: [PATCH 09/19] refactor code --- run_generate.py | 2 +- src/nanotron/generation/decode.py | 142 +++++++++++++++++++++++++- src/nanotron/models/llama.py | 89 +++++----------- src/nanotron/ring_flash_attn/utils.py | 30 ++++++ 4 files changed, 196 insertions(+), 67 deletions(-) diff --git a/run_generate.py b/run_generate.py index 1b19db83..5268f799 100644 --- a/run_generate.py +++ b/run_generate.py @@ -60,7 +60,7 @@ def get_args(): parser.add_argument("--pp", type=int, default=0) parser.add_argument("--tp", type=int, default=0) parser.add_argument("--sp", type=int, default=0) - parser.add_argument("--max-new-tokens", type=int, default=128, help="Maximum number of new tokens to generate") + parser.add_argument("--max-new-tokens", type=int, default=50, help="Maximum number of new tokens to generate") return parser.parse_args() diff --git a/src/nanotron/generation/decode.py b/src/nanotron/generation/decode.py index 6ab71fad..d11eb8d6 100644 --- a/src/nanotron/generation/decode.py +++ b/src/nanotron/generation/decode.py @@ -110,7 +110,6 @@ def micro_batcher( padding=tokenizer_config.padding, max_length=tokenizer_config.max_input_length, truncation=tokenizer_config.truncation, - # pad_to_multiple_of=8 ) encodings["attention_mask"] = encodings.attention_mask.to(dtype=torch.bool, device="cuda") @@ -239,7 +238,6 @@ def decode_text( start_time, elapsed_time_first_iteration = time.perf_counter(), 0 for generation_iter in range(max_new_tokens): - if is_bench and generation_iter == 0: torch.cuda.synchronize() elapsed_time_first_iteration = start_time - time.perf_counter() @@ -491,6 +489,146 @@ def generator(): ) +def adjust_padding(input_ids, attention_mask, pad_token_id=128001, pad_to_multiple_of=4, padding_left=True): + """ + This function pad or remove paddiings to make the sequence length a multiple of "pad_to_multiple_of" + two modes: padding on the left or right. + Use with decode_text_simple for 1M tokens context length. + """ + # Count the number of padding tokens on the left side + padding_tokens_count = (input_ids == pad_token_id).sum(dim=1).item() + # padding_tokens_count = (input_ids == pad_token_id).sum(dim=1).item() + input_length = input_ids.size(1) + + # Calculate the required padding to make the length a multiple of pad_to_multiple_of + padding_length = (pad_to_multiple_of - input_length % pad_to_multiple_of) % pad_to_multiple_of + + if ( + padding_tokens_count >= pad_to_multiple_of - padding_length + ): # pad k tokens = remove 8-k tokens, if pad_to_multiple_of = 8 + # Remove excessive padding tokens to make the length a multiple of pad_to_multiple_of + excess_padding = pad_to_multiple_of - padding_length + ## padding is on the left or right. + if padding_left: + input_ids = input_ids[:, excess_padding:] + attention_mask = attention_mask[:, excess_padding:] + else: + input_ids = input_ids[:, :-excess_padding] + attention_mask = attention_mask[:, :-excess_padding] + else: + # Add padding tokens to the left side + if padding_length > 0: + padding = torch.full((input_ids.size(0), padding_length), pad_token_id, dtype=torch.long).to( + "cuda" + ) # [batch_size, padding_length] + if padding_left: + input_ids = torch.cat([padding, input_ids], dim=1) + attention_mask = torch.cat([torch.zeros_like(padding), attention_mask], dim=1) + else: + input_ids = torch.cat([input_ids, padding], dim=1) + attention_mask = torch.cat([attention_mask, torch.zeros_like(padding)], dim=1) + return input_ids, attention_mask + + +@torch.inference_mode() +def decode_text_simple( + input_texts: List[str], + tokenizer: "PreTrainedTokenizer", + model: LlamaModel, + parallel_context: ParallelContext, + max_new_tokens: int, + pad_to_multiple_of: Optional[int] = 8, + padding_left: Optional[bool] = False, +): + """ + Use this function only when dealing with long context. + A simpler decode text function without PP aims to support long context(e.g. 1M tokens) inference by adjust padding. + For sequence length = 1M, TP=8(reduce scatter mode) and SP=2 is needed. For sequence length <= 512K, TP=8(reduce scatter mode) and SP=1 is enough. + Specifically, SP need padding on the right for now(faster with flash_attn_func and easier to implement). + TODO: Only tested when batch size = 1. KV cache is not implemented yet. For faster inference, consider using decode_text. + """ + assert parallel_context.sp_pg.size() == 1 or ( + parallel_context.sp_pg.size() > 1 and not padding_left + ), "For SP, should use padding right for inference." + output_texts = [] + pad_token_id = tokenizer.pad_token_id + sampler = GreedySampler( + pg=parallel_context.tp_pg + ) # Notice that the logics for gathering sharded logits(last dim) are implemented in the sampler. + for input_text in input_texts: + inputs = tokenizer(input_text, return_tensors="pt").to("cuda") + input_ids, attention_mask = inputs["input_ids"], inputs["attention_mask"] + num_input_tokens = attention_mask.sum().item() + sp_world_size = dist.get_world_size(parallel_context.sp_pg) + sp_rank = dist.get_rank(parallel_context.sp_pg) + # Generate output + for i in range(max_new_tokens): + input_ids, attention_mask = adjust_padding( + input_ids, + attention_mask, + pad_token_id, + pad_to_multiple_of=pad_to_multiple_of, + padding_left=padding_left, + ) + if parallel_context.sp_pg.size() > 1: + assert ( + input_ids.size(1) % (2 * sp_world_size) == 0 + ), "The sequence length should be a multiple of 2*world_size. Check padding function" + chunk_size = input_ids.size(1) // (2 * sp_world_size) # chunk size + local_outputs = model(input_ids=input_ids, input_mask=attention_mask).transpose( + 0, 1 + ) # batch_size x seq_length/sp x vocab_size/tp + # I don't gather the output along the sequnce level for SP. Because it takes way too much memory. + if parallel_context.sp_pg.size() > 1: + last_token = attention_mask.sum(dim=1).item() - 1 # the last token before padding + last_token_chunk = last_token // chunk_size # the chunk index of the last token + GPU_idx = ( + last_token_chunk if last_token_chunk < sp_world_size else 2 * sp_world_size - 1 - last_token_chunk + ) # the GPU index of the last token among the SP group + last_token_idx = ( + last_token % chunk_size + chunk_size + if last_token_chunk >= sp_world_size + else last_token % chunk_size + ) # the token index in the GPU + if sp_rank == GPU_idx: + next_token_id = sampler(sharded_logits=local_outputs[:, last_token_idx, :]) + else: + next_token_id = torch.zeros((input_ids.size(0), 1), dtype=torch.long).to("cuda") + dist.barrier(group=parallel_context.sp_pg) # all process have to wait for the sampler to finish + dist.broadcast( + next_token_id, + src=dist.get_global_rank(parallel_context.sp_pg, GPU_idx), + group=parallel_context.sp_pg, + ) # broadcast the generated token to all process. Source rank on global process group (regardless of group argument). + # replace the padding with generated token(padding on the right side) + if last_token + 1 < input_ids.size(1): # replace the padding with generated token + input_ids[:, last_token + 1] = next_token_id + attention_mask[:, last_token + 1] = 1 + else: # insert the generated token when there is no padding to replace + input_ids = torch.cat([input_ids, next_token_id], dim=1) + attention_mask = torch.cat([attention_mask, torch.ones_like(next_token_id)], dim=1) + # without SP. We can just use sampler to generate the next token. + else: + if padding_left: + last_token = -1 + next_token_id = sampler(sharded_logits=local_outputs[:, last_token, :]) # batch_size x 1 + input_ids = torch.cat([input_ids, next_token_id], dim=1) + attention_mask = torch.cat([attention_mask, torch.ones_like(next_token_id)], dim=1) + else: + last_token = attention_mask.sum(dim=1).item() - 1 # the last token before padding + next_token_id = sampler(sharded_logits=local_outputs[:, last_token, :]) + if last_token + 1 < input_ids.size(1): # replace the padding with generated token + input_ids[:, last_token + 1] = next_token_id + attention_mask[:, last_token + 1] = 1 + else: # insert the generated token when there is no padding to replace + input_ids = torch.cat([input_ids, next_token_id], dim=1) + attention_mask = torch.cat([attention_mask, torch.ones_like(next_token_id)], dim=1) + + generation = tokenizer.decode(input_ids[0, num_input_tokens:], skip_special_tokens=True) + output_texts.append({"prompt": input_text, "generation": generation}) + return output_texts + + @torch.inference_mode() def decode_tokenized( input_ids: torch.Tensor, diff --git a/src/nanotron/models/llama.py b/src/nanotron/models/llama.py index b825bfb1..50fd9bd4 100644 --- a/src/nanotron/models/llama.py +++ b/src/nanotron/models/llama.py @@ -40,13 +40,11 @@ TensorParallelRowLinear, ) from nanotron.random import RandomStates -from nanotron.ring_flash_attn.ring_flash_attn import ring_flash_attn_func -from nanotron.ring_flash_attn.utils import normal_split, zigzag_split +from nanotron.ring_flash_attn.utils import zigzag_split from nanotron.ring_flash_attn.zigzag_ring_flash_attn import zigzag_ring_flash_attn_func from nanotron.scaling.parametrization import SpectralMupParametrizator, StandardParametrizator from nanotron.utils import checkpoint_method -zigzag = True logger = logging.get_logger(__name__) @@ -99,7 +97,6 @@ def forward( self.end *= 2 self._initialized_buffer = False if self._initialized_buffer is False: - print(f"Initializing rotary embeddings with end={self.end}") self.init_rotary_embeddings() dtype = x.dtype assert inner_dim % 2 == 0 @@ -135,7 +132,6 @@ def __init__(self, dim: int, end: int, theta: float = 500000.0): self.dim = dim self.end = end self.theta = theta - log_rank(f"Initialize LlamaRotaryEmbedding: RoPE Theta = {theta}", logger=logger, level=logging.DEBUG, rank=0) self.init_rotary_embeddings() def init_rotary_embeddings(self): @@ -247,52 +243,30 @@ def forward(self, hidden_states): # [seq_length, batch_size, hidden_dim] class RingFlashAttention(nn.Module): def __init__(self, config: LlamaConfig, pg: dist.ProcessGroup): super().__init__() - # TODO @thomasw21: GPT has a weird `d_kv` config which I'm guessing is essentically a `d_qkv` - assert ( - config.hidden_size % config.num_attention_heads == 0 - ), f"Hidden size {config.hidden_size} must be divisible by number of attention heads {config.num_attention_heads}." - self.d_qk = config.hidden_size // config.num_attention_heads - self.d_v = config.hidden_size // config.num_attention_heads - self.is_using_mup = config.is_using_mup - self.checkpoint_attention = False # Because flash_attn already does checkpointing + assert config.hidden_size % config.num_attention_heads == 0 + assert config.hidden_size % config.num_key_value_heads == 0 + assert dist.get_world_size(pg) > 1, "Ring attention process group size must be greater than 1" self.pg = pg - @checkpoint_method(attr_name="checkpoint_attention") def forward( self, local_q: torch.Tensor, # [batch_size, q_length, n_local_q_heads, inner_dim] local_k: torch.Tensor, # [batch_size, kv_length, n_local_kv_heads, inner_dim] local_v: torch.Tensor, # [batch_size, kv_length, n_local_kv_heads, inner_dim] ): - # NOTE: this scale is for µTransfer, causal = True - - if zigzag: - ring_out, _, _ = zigzag_ring_flash_attn_func( - local_q, - local_k, - local_v, - dropout_p=0.0, - causal=causal, - window_size=(-1, -1), - alibi_slopes=None, - deterministic=False, - return_attn_probs=True, - group=self.pg, - ) - else: - ring_out, _, _ = ring_flash_attn_func( - local_q, - local_k, - local_v, - dropout_p=0.0, - causal=causal, - window_size=(-1, -1), - alibi_slopes=None, - deterministic=False, - return_attn_probs=True, - group=self.pg, - ) + ring_out, _, _ = zigzag_ring_flash_attn_func( + local_q, + local_k, + local_v, + dropout_p=0.0, + causal=causal, + window_size=(-1, -1), + alibi_slopes=None, + deterministic=False, + return_attn_probs=True, + group=self.pg, + ) return ring_out @@ -486,6 +460,7 @@ def __init__( self.prefill_kv_len = ( config.max_position_embeddings ) # TODO @nouamane: compute based on free memory, because in rope we can surpass max_position_embeddings + self.layer_idx = layer_idx def forward( self, @@ -777,6 +752,7 @@ def __init__( sp_pg=sp_pg, layer_idx=layer_idx, ) + self.layer_idx = layer_idx self.post_attention_layernorm = TritonRMSNorm(config.hidden_size, eps=config.rms_norm_eps) self.mlp = MLP(config=config, parallel_config=parallel_config, tp_pg=tp_pg) @@ -868,7 +844,7 @@ def __init__( module_input_keys={"input_ids", "input_mask"}, module_output_keys={"input_embeds"}, ) - + log_rank(f"Initialize RoPE Theta = {config.rope_theta}", logger=logger, level=logging.INFO, rank=0) self.decoder = nn.ModuleList( [ PipelineBlock( @@ -912,7 +888,6 @@ def __init__( module_input_keys={"x"}, module_output_keys={"logits"}, ) - self.cast_to_fp32 = PipelineBlock( p2p=self.p2p, module_builder=lambda: lambda x: x.float(), @@ -935,22 +910,14 @@ def forward_with_hidden_states( ): if isinstance(input_ids, torch.Tensor): batch_size, seq_length = input_ids.shape - position_ids = torch.arange(seq_length, device=input_ids.device).unsqueeze(0).expand(batch_size, -1) + position_ids = torch.cumsum(input_mask, dim=-1, dtype=torch.int32) - 1 # split input if using ring attention if self.parallel_context.sp_pg.size() > 1: world_size = self.parallel_context.sp_pg.size() rank = dist.get_rank(self.parallel_context.sp_pg) - - # zigzag split - if zigzag: - input_ids, input_mask, position_ids = zigzag_split( - rank, world_size, input_ids, input_mask, position_ids - ) - # normal split - else: - input_ids, input_mask, position_ids = normal_split( - rank, world_size, input_ids, input_mask, position_ids - ) + input_ids, input_mask, position_ids = zigzag_split( + rank, world_size, input_ids, input_mask, position_ids + ) else: position_ids = TensorPointer(input_ids.group_rank) # all tensors are optional as most ranks don't need anything from the dataloader. @@ -1031,17 +998,11 @@ def forward( # Megatron by defaults cast everything in fp32. `--f16-lm-cross-entropy` is an option you can use to keep current precision. # https://github.com/NVIDIA/Megatron-LM/blob/f267e6186eae1d6e2055b412b00e2e545a8e896a/megatron/model/gpt_model.py#L38 - # ring attention: split the label + # ring attention: split the label as well if isinstance(label_ids, torch.Tensor) and self.sp_pg.size() > 1: world_size = self.sp_pg.size() rank = dist.get_rank(self.sp_pg) - - # zigzag split - if zigzag: - label_ids, label_mask = zigzag_split(rank, world_size, label_ids, label_mask) - # normal split - else: - label_ids, label_mask = normal_split(rank, world_size, label_ids, label_mask) + label_ids, label_mask = zigzag_split(rank, world_size, label_ids, label_mask) loss = sharded_cross_entropy( sharded_logits, label_ids.transpose(0, 1).contiguous(), group=self.tp_pg, dtype=torch.float ).transpose(0, 1) diff --git a/src/nanotron/ring_flash_attn/utils.py b/src/nanotron/ring_flash_attn/utils.py index dacda6cf..ca6e2cef 100644 --- a/src/nanotron/ring_flash_attn/utils.py +++ b/src/nanotron/ring_flash_attn/utils.py @@ -130,3 +130,33 @@ def normal_split(rank: int, world_size: int, *args: torch.Tensor, dim=1) -> Tupl local_value = value.chunk(world_size, dim=dim)[rank] local_values.append(local_value) return tuple(local_values) + + +## a function to merge the tensor in a zigzag way. inverse of zigzag_split +def zigzag_merge( + rank: int, world_size: int, local_tensor: torch.Tensor, process_group: dist.ProcessGroup, dim: int = 1 +) -> Tuple[torch.Tensor, ...]: + + # Split the local tensor into two chunks + chunk1, chunk2 = local_tensor.chunk(2, dim=dim) + + # Create placeholders for all chunks + all_chunks = [torch.zeros_like(chunk1) for _ in range(2 * world_size)] + + # Gather all chunks from all processes + dist.all_gather(all_chunks[:world_size], chunk1, group=process_group) + dist.all_gather(all_chunks[world_size:], chunk2, group=process_group) + + # Reverse the order of the second half of chunks + all_chunks[world_size:] = all_chunks[world_size:][::-1] + + del chunk1, chunk2 + torch.cuda.empty_cache() + + # Concatenate all chunks to form the full tensor + merged_tensor = torch.cat(all_chunks, dim=dim) + + del all_chunks + torch.cuda.empty_cache() + + return merged_tensor From 16600f09674c5dfd2d544c6ca3fe1cb9c5e274c9 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Thu, 18 Jul 2024 16:45:23 +0000 Subject: [PATCH 10/19] fix tests --- src/nanotron/parallel/context.py | 10 ++++------ tests/helpers/utils.py | 3 ++- tests/test_clip_grads.py | 2 +- tests/test_distributed.py | 1 + 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/nanotron/parallel/context.py b/src/nanotron/parallel/context.py index a7027b77..69fd39c4 100644 --- a/src/nanotron/parallel/context.py +++ b/src/nanotron/parallel/context.py @@ -20,9 +20,7 @@ def __init__( backend: DistributedBackend = "nccl", ): """Initialize parallel context.""" - num_gpus_per_model = ( - tensor_parallel_size * pipeline_parallel_size * expert_parallel_size * sequence_parallel_size - ) + num_gpus_per_model = tensor_parallel_size * pipeline_parallel_size * expert_parallel_size world_size = int(os.environ["WORLD_SIZE"]) assert ( @@ -30,11 +28,11 @@ def __init__( ), "The total number of processes must be divisible by the data parallel size." assert world_size % num_gpus_per_model == 0, ( "The total number of processes must be divisible by" - "the number of GPUs per model (tensor_parallel_size * pipeline_parallel_size)." + f"the number of GPUs per model (tensor_parallel_size * pipeline_parallel_size). Got {world_size} and {num_gpus_per_model}." ) - if num_gpus_per_model * data_parallel_size != world_size: + if num_gpus_per_model * data_parallel_size * sequence_parallel_size != world_size: raise ValueError( - f"The number of process requires to run all replicas ({num_gpus_per_model * data_parallel_size})", + f"The number of process requires to run all replicas ({num_gpus_per_model * data_parallel_size * sequence_parallel_size })", f"must be equal to the world size ({world_size}).", ) diff --git a/tests/helpers/utils.py b/tests/helpers/utils.py index b8f6488a..78fd3e69 100644 --- a/tests/helpers/utils.py +++ b/tests/helpers/utils.py @@ -255,11 +255,12 @@ def setup_dist_env(rank, world_size, port): os.environ["MASTER_ADDR"] = "localhost" os.environ["MASTER_PORT"] = str(port) - world_size = tp * pp * dp + world_size = tp * pp * dp * sp setup_dist_env(rank, world_size, port) parallel_context = ParallelContext( data_parallel_size=dp, pipeline_parallel_size=pp, tensor_parallel_size=tp, sequence_parallel_size=sp ) + print("world_size: ", world_size) func(parallel_context, **kwargs) diff --git a/tests/test_clip_grads.py b/tests/test_clip_grads.py index 66940294..73c23f58 100644 --- a/tests/test_clip_grads.py +++ b/tests/test_clip_grads.py @@ -429,7 +429,7 @@ def _test_clip_grads_tied_weights(parallel_context: ParallelContext, norm_type: # Test that we get the same gradient after clipping assert torch.allclose(weight.grad, ref_weight.grad, rtol=1e-7, atol=1e-6) assert torch.allclose(bias.grad, ref_bias.grad, rtol=1e-7, atol=1e-6) - assert torch.allclose(total_norm, ref_total_norm, rtol=0, atol=0), f"Got {total_norm} and {ref_total_norm}" + assert torch.allclose(total_norm, ref_total_norm, rtol=1e-6, atol=1e-6), f"Got {total_norm} and {ref_total_norm}" parallel_context.destroy() diff --git a/tests/test_distributed.py b/tests/test_distributed.py index 241dd56e..a543b121 100644 --- a/tests/test_distributed.py +++ b/tests/test_distributed.py @@ -17,6 +17,7 @@ def _test_init_parallel_context(parallel_context: ParallelContext): assert isinstance(parallel_context.tp_pg, ProcessGroup) if parallel_context.tensor_parallel_size > 1 else True assert isinstance(parallel_context.pp_pg, ProcessGroup) if parallel_context.pipeline_parallel_size > 1 else True assert isinstance(parallel_context.dp_pg, ProcessGroup) if parallel_context.data_parallel_size > 1 else True + assert isinstance(parallel_context.sp_pg, ProcessGroup) if parallel_context.sequence_parallel_size > 1 else True world_rank = dist.get_rank(parallel_context.world_pg) ranks3d = parallel_context.get_local_ranks(world_rank) From 175a076d9ac594dc43b5312008667162d8f31da2 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Fri, 19 Jul 2024 17:24:52 +0000 Subject: [PATCH 11/19] fix tests --- src/nanotron/helpers.py | 4 ++-- src/nanotron/parallel/utils.py | 4 ++-- src/nanotron/serialize/optimizer.py | 10 ++++++--- src/nanotron/trainer.py | 34 +---------------------------- tests/helpers/dummy.py | 2 +- tests/helpers/utils.py | 1 - tests/test_serialize.py | 21 +++++++++++------- 7 files changed, 26 insertions(+), 50 deletions(-) diff --git a/src/nanotron/helpers.py b/src/nanotron/helpers.py index 5e2cb7b5..ee9d2cc7 100644 --- a/src/nanotron/helpers.py +++ b/src/nanotron/helpers.py @@ -385,7 +385,7 @@ def grad_optimizer_builder(named_param_groups): named_params_or_groups=named_param_groups, # TODO @thomasw21: We need a better API for gradient accumulation/zero etc ... optimizer_builder=optimizer_builder, - dp_pg=parallel_context.dp_sp_pg, # sequence parallel and data parallel process group + dp_pg=parallel_context.dp_pg, # TODO: add sequence parallel support. This will change the topology of the current OS checkpoint. ) # SANITY CHECK: assert that optimizer's named_params point to model's params (check only the first one) @@ -411,7 +411,7 @@ def grad_optimizer_builder(named_param_groups): assert isinstance(grad_accumulator, FP32GradientAccumulator) grad_accumulator.assign_param_offsets( dp_rank=dist.get_rank( - parallel_context.dp_sp_pg + parallel_context.dp_pg ), # sequence parallel and data parallel process group will synchronize the gradient together param_name_to_offsets=param_name_to_dp_rank_offsets, ) diff --git a/src/nanotron/parallel/utils.py b/src/nanotron/parallel/utils.py index b9ac12ae..e0159902 100644 --- a/src/nanotron/parallel/utils.py +++ b/src/nanotron/parallel/utils.py @@ -23,10 +23,10 @@ def wrapper(*args, **kwargs): def initial_sync(model: nn.Module, parallel_context: ParallelContext): - # Synchronize across dp: basic assumption + # Synchronize across dp/sp: basic assumption sorted_name_params = sorted(model.named_parameters(), key=lambda x: x[0]) for name, param in sorted_name_params: - dist.all_reduce(param, op=dist.ReduceOp.AVG, group=parallel_context.dp_pg) + dist.all_reduce(param, op=dist.ReduceOp.AVG, group=parallel_context.dp_sp_pg) # Synchronize across tied weights: basic assumption for (_, group_ranks), param in sorted( diff --git a/src/nanotron/serialize/optimizer.py b/src/nanotron/serialize/optimizer.py index 68a3b1a0..97540472 100644 --- a/src/nanotron/serialize/optimizer.py +++ b/src/nanotron/serialize/optimizer.py @@ -41,11 +41,15 @@ def save_optimizer( root_folder: Path, ): """Saves optimizer states - - If Zero-0 is used, optimizer states are replicated across all DPs. Only DP-0 saves the states + - If Zero-0 is used, optimizer states are replicated across all DPs. Only DP-0 and SP-0 saves the states - If Zero-1 is used, optimizer states are sharded across all DPs. Each DP saves its own states """ - if (not optimizer.inherit_from(optim.ZeroDistributedOptimizer)) and dist.get_rank(parallel_context.dp_pg) > 0: - # this is Zero-0, so only DP-0 saves the optimizer states + if ( + (not optimizer.inherit_from(optim.ZeroDistributedOptimizer)) + and dist.get_rank(parallel_context.dp_pg) > 0 + and dist.get_rank(parallel_context.sp_pg) > 0 + ): + # this is Zero-0, so only DP-0 and SP-0 saves the optimizer states return # TODO: Figure out if I need to save param groups. Right now I'm assuming no as we only store what's trainable diff --git a/src/nanotron/trainer.py b/src/nanotron/trainer.py index fde511f8..aceccc3a 100644 --- a/src/nanotron/trainer.py +++ b/src/nanotron/trainer.py @@ -479,7 +479,6 @@ def training_step( sync_gradients_across_dp( module=self.model, dp_pg=self.parallel_context.dp_sp_pg, - # dp_pg=self.parallel_context.dp_pg, reduce_op=dist.ReduceOp.AVG, # TODO @thomasw21: This is too memory hungry, instead we run all_reduce reduce_scatter=False, # optimizer.inherit_from(ZeroDistributedOptimizer), @@ -519,7 +518,6 @@ def training_step( [output["loss"] for output in outputs] ).sum() # already divided by n_micro_batches_per_batch # sync loss across DP/SP - # handle = dist.all_reduce(loss_avg, group=self.parallel_context.dp_pg, async_op=True, op=dist.ReduceOp.AVG) handle = dist.all_reduce( loss_avg, group=self.parallel_context.dp_sp_pg, async_op=True, op=dist.ReduceOp.AVG ) @@ -715,7 +713,7 @@ def _load_model_checkpoint(self, model: NanotronModel) -> NanotronModel: # Synchronize parameters so that the model is consistent # sync all params across dp for _, param in sorted(model.named_parameters(), key=lambda x: x[0]): - dist.all_reduce(param, op=dist.ReduceOp.AVG, group=self.parallel_context.dp_pg) + dist.all_reduce(param, op=dist.ReduceOp.AVG, group=self.parallel_context.dp_sp_pg) # sync tied params across tied groups for (_, group_ranks), param in sorted( @@ -802,38 +800,8 @@ def _init_model( # Check that the model has at least one grad. Necessary for DDP check_model_has_grad(model=model, parallel_context=parallel_context) # TODO @thomasw21: DDP doesn't support broadcasting complex buffers (and we don't really need that broadcasting anyway) - - # ### debug - # tensor_names = [name for name in model.state_dict()] - # log_rank( - # f"Params: {tensor_names}, length {len(tensor_names)}", - # logger=logger, - # level=logging.INFO, - # rank=0, - # ) - # log_rank( - # f"Params: {tensor_names}, length {len(tensor_names)}", - # logger=logger, - # level=logging.INFO, - # rank=1, - # ) - # log_rank( - # f"Params: {tensor_names}, length {len(tensor_names)}", - # logger=logger, - # level=logging.INFO, - # rank=2, - # ) - # log_rank( - # f"Params: {tensor_names}, length {len(tensor_names)}", - # logger=logger, - # level=logging.INFO, - # rank=3, - # ) - # ### - model = DistributedDataParallel( model, - # process_group=parallel_context.dp_pg, process_group=parallel_context.dp_sp_pg, broadcast_buffers=False, bucket_cap_mb=config.model.ddp_bucket_cap_mb, diff --git a/tests/helpers/dummy.py b/tests/helpers/dummy.py index 20332f7d..edcc8aa9 100644 --- a/tests/helpers/dummy.py +++ b/tests/helpers/dummy.py @@ -94,7 +94,7 @@ def init_dummy_model(parallel_context: ParallelContext, dtype: torch.dtype = tor initial_sync(model=model, parallel_context=parallel_context) if len(list(model.named_parameters())) > 0: - model = DistributedDataParallel(model, process_group=parallel_context.dp_pg) + model = DistributedDataParallel(model, process_group=parallel_context.dp_sp_pg) else: # No parameters, so no need to use DDP to sync parameters gradients model = model diff --git a/tests/helpers/utils.py b/tests/helpers/utils.py index 78fd3e69..954e9fc5 100644 --- a/tests/helpers/utils.py +++ b/tests/helpers/utils.py @@ -260,7 +260,6 @@ def setup_dist_env(rank, world_size, port): parallel_context = ParallelContext( data_parallel_size=dp, pipeline_parallel_size=pp, tensor_parallel_size=tp, sequence_parallel_size=sp ) - print("world_size: ", world_size) func(parallel_context, **kwargs) diff --git a/tests/test_serialize.py b/tests/test_serialize.py index 6b28c4c0..bf32dcce 100644 --- a/tests/test_serialize.py +++ b/tests/test_serialize.py @@ -159,8 +159,10 @@ def _test_save_and_load_optimizer(parallel_context: ParallelContext, test_contex @rerun_if_address_is_in_use() def test_save_zero_optimizer_and_load_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() - # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_zero_optimizer_and_load_optimizer)( + # Currently SP doesn't support zero. + if sp != 1: + return + init_distributed(tp=tp, dp=dp, pp=pp, sp=1)(_test_save_zero_optimizer_and_load_optimizer)( test_context=test_context ) @@ -235,8 +237,9 @@ def _test_save_zero_optimizer_and_load_optimizer(parallel_context: ParallelConte @rerun_if_address_is_in_use() def test_save_zero_optimizer_and_load_data_parallel_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() - # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_zero_optimizer_and_load_data_parallel_optimizer)( + if sp != 1: + return + init_distributed(tp=tp, dp=dp, pp=pp, sp=1)(_test_save_zero_optimizer_and_load_data_parallel_optimizer)( test_context=test_context ) @@ -306,8 +309,9 @@ def _test_save_zero_optimizer_and_load_data_parallel_optimizer( @rerun_if_address_is_in_use() def test_save_data_parallel_optimizer_and_load_zero_optimizer(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() - # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_data_parallel_optimizer_and_load_zero_optimizer)( + if sp != 1: + return + init_distributed(tp=tp, dp=dp, pp=pp, sp=1)(_test_save_data_parallel_optimizer_and_load_zero_optimizer)( test_context=test_context ) @@ -373,8 +377,9 @@ def _test_save_data_parallel_optimizer_and_load_zero_optimizer( @rerun_if_address_is_in_use() def test_save_optimizer_with_additional_state_dict_keys(tp: int, dp: int, pp: int, sp: int): test_context = TestContext() - # We use DP=2 as we're interested in testing that one - init_distributed(tp=tp, dp=dp, pp=pp, sp=sp)(_test_save_optimizer_with_additional_state_dict_keys)( + if sp != 1: + return + init_distributed(tp=tp, dp=dp, pp=pp, sp=1)(_test_save_optimizer_with_additional_state_dict_keys)( test_context=test_context ) From 61486e792b8766c18c3c1a2f5ac07669ad281637 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Fri, 19 Jul 2024 17:44:04 +0000 Subject: [PATCH 12/19] another test --- tests/test_parameters_accumulate_gradient_in_fp32.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_parameters_accumulate_gradient_in_fp32.py b/tests/test_parameters_accumulate_gradient_in_fp32.py index 0c7eb152..b955c276 100644 --- a/tests/test_parameters_accumulate_gradient_in_fp32.py +++ b/tests/test_parameters_accumulate_gradient_in_fp32.py @@ -348,6 +348,7 @@ def _test_tied_weights_sync_with_grad_accum_in_fp32( pp_rank=get_pp_rank_of(target, module=mdl), dp_rank=dist.get_rank(parallel_context.dp_pg), tp_rank=dist.get_rank(parallel_context.tp_pg), + sp_rank=dist.get_rank(parallel_context.sp_pg), ), ), ) From d5e833245f28b758a7f563875e555c87501ab0ee Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Sun, 21 Jul 2024 14:17:38 +0000 Subject: [PATCH 13/19] import flash attention --- src/nanotron/models/llama.py | 23 ++++++++------- src/nanotron/ring_flash_attn/utils.py | 4 +-- .../ring_flash_attn/zigzag_ring_flash_attn.py | 2 +- src/nanotron/utils.py | 29 +++++++++++++++++-- 4 files changed, 40 insertions(+), 18 deletions(-) diff --git a/src/nanotron/models/llama.py b/src/nanotron/models/llama.py index 29d7a0db..3f599f54 100644 --- a/src/nanotron/models/llama.py +++ b/src/nanotron/models/llama.py @@ -42,9 +42,19 @@ ) from nanotron.random import RandomStates from nanotron.ring_flash_attn.utils import zigzag_split -from nanotron.ring_flash_attn.zigzag_ring_flash_attn import zigzag_ring_flash_attn_func from nanotron.scaling.parametrization import SpectralMupParametrizator, StandardParametrizator -from nanotron.utils import checkpoint_method +from nanotron.utils import checkpoint_method, supports_flash_attention + +if supports_flash_attention(): + from flash_attn import bert_padding + from flash_attn.flash_attn_interface import ( + flash_attn_varlen_func, + flash_attn_with_kvcache, + ) + from flash_attn.layers.rotary import RotaryEmbedding as FlashRotaryEmbedding + + from nanotron.ring_flash_attn.zigzag_ring_flash_attn import zigzag_ring_flash_attn_func + logger = logging.get_logger(__name__) @@ -293,8 +303,6 @@ def forward( q_sequence_mask: torch.Tensor, # torch.BoolTensor [batch_size, q_length] (can be broadcasted to that size) kv_sequence_mask: torch.Tensor, # torch.BoolTensor [batch_size, kv_length] (can be broadcasted to that size) ): - from flash_attn.flash_attn_interface import flash_attn_varlen_func - # TODO @thomasw21: Compute once, instead of computing for each layers. cu_seqlens_q = torch.zeros((q_sequence_mask.shape[0] + 1), dtype=torch.int32, device=query_states.device) cu_seqlens_k = torch.zeros((kv_sequence_mask.shape[0] + 1), dtype=torch.int32, device=query_states.device) @@ -362,7 +370,6 @@ def __init__( sp_pg: dist.ProcessGroup, layer_idx: int, ): - from flash_attn.layers.rotary import RotaryEmbedding as FlashRotaryEmbedding super().__init__() # Tensor parallel considerations: We split tensors along head dimension @@ -469,12 +476,6 @@ def forward( sequence_mask, # [batch_size, seq_length] position_ids: Optional[torch.LongTensor] = None, ): - from flash_attn import bert_padding - from flash_attn.flash_attn_interface import ( - flash_attn_varlen_func, - flash_attn_with_kvcache, - ) - qkv_states = self.qkv_proj( hidden_states ) # [seq_length, batch_size, n_local_q_heads * d_qk + 2 * n_local_kv_heads * d_qk] diff --git a/src/nanotron/ring_flash_attn/utils.py b/src/nanotron/ring_flash_attn/utils.py index ca6e2cef..b902c398 100644 --- a/src/nanotron/ring_flash_attn/utils.py +++ b/src/nanotron/ring_flash_attn/utils.py @@ -6,7 +6,7 @@ __all__ = ["update_out_and_lse", "RingComm"] -# copy from https://github.com/zhuzilin/ring-flash-attention +# reference: https://github.com/zhuzilin/ring-flash-attention @torch.jit.script def _update_out_and_lse( out: torch.Tensor, @@ -18,8 +18,6 @@ def _update_out_and_lse( block_out = block_out.to(torch.float32) block_lse = block_lse.transpose(-2, -1).unsqueeze(dim=-1) - # new_lse = lse + torch.log(1 + torch.exp(block_lse - lse)) - # torch.exp(lse - new_lse) * out + torch.exp(block_lse - new_lse) * block_out # For additional context and discussion, please refer to: # https://github.com/zhuzilin/ring-flash-attention/pull/34#issuecomment-2076126795 out = out - F.sigmoid(block_lse - lse) * (out - block_out) diff --git a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py index 2ac1e4e3..2b8ab712 100644 --- a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py +++ b/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py @@ -4,7 +4,7 @@ from .utils import RingComm, update_out_and_lse -# copy from https://github.com/zhuzilin/ring-flash-attention +# reference: https://github.com/zhuzilin/ring-flash-attention def zigzag_ring_flash_attn_forward( process_group, q: torch.Tensor, diff --git a/src/nanotron/utils.py b/src/nanotron/utils.py index 14fe1ca8..4a2edc49 100644 --- a/src/nanotron/utils.py +++ b/src/nanotron/utils.py @@ -1,11 +1,10 @@ import functools import inspect -import math import os import random import socket from contextlib import ExitStack, contextmanager -from typing import Callable, ContextManager, List, Optional +from typing import ContextManager, List, Optional import torch from packaging import version @@ -52,7 +51,7 @@ def main_rank_first(group: dist.ProcessGroup): @contextmanager def local_ranks_zero_first(group: Optional[dist.ProcessGroup] = None): """Context manager that executes the code in the context with all the local rank zero of the group going first. - Usefull to run only once per node first (e.g. to create local files, etc) + Useful to run only once per node first (e.g. to create local files, etc) """ is_main = int(os.environ.get("LOCAL_RANK", 0)) == 0 if is_main: @@ -123,6 +122,7 @@ def get_untyped_storage(tensor: torch.Tensor) -> torch.UntypedStorage: else: return tensor.storage().untyped() + def tensor_from_untyped_storage(untyped_storage: torch.UntypedStorage, dtype: torch.dtype): # TODO @thomasw21: Figure out what's the best Pytorch way of building a tensor from a storage. device = untyped_storage.device @@ -141,3 +141,26 @@ def find_free_port(min_port: int = 2000, max_port: int = 65000) -> int: return port except OSError: continue + + +def supports_flash_attention(): + """ + Check if a GPU supports FlashAttention based on its architecture. + + Parameters: + device_id (int): The ID of the GPU device to check. + + Returns: + bool: True if the GPU supports FlashAttention, False otherwise. + """ + if not torch.cuda.is_available(): + return False + + device_id = torch.cuda.current_device() + major, minor = torch.cuda.get_device_capability(device_id) + + # Check if the GPU architecture is Ampere (SM 8.x) or newer (SM 9.0) + is_sm8x = major == 8 and minor >= 0 + is_sm90 = major == 9 and minor == 0 + + return is_sm8x or is_sm90 From 2a82f5cb3ed53b2044480d9e2e6bedff565b7506 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Sun, 21 Jul 2024 23:36:12 +0000 Subject: [PATCH 14/19] add readme for training --- examples/long-context/README.md | 26 ++++ examples/long-context/create_config.py | 127 ++++++++++++++++++ examples/long-context/images/1M.png | Bin 0 -> 38025 bytes examples/long-context/launch_training.slurm | 53 ++++++++ .../templates/llama3_template.jinja2 | 114 ++++++++++++++++ 5 files changed, 320 insertions(+) create mode 100644 examples/long-context/README.md create mode 100644 examples/long-context/create_config.py create mode 100644 examples/long-context/images/1M.png create mode 100644 examples/long-context/launch_training.slurm create mode 100644 examples/long-context/templates/llama3_template.jinja2 diff --git a/examples/long-context/README.md b/examples/long-context/README.md new file mode 100644 index 00000000..93fee53c --- /dev/null +++ b/examples/long-context/README.md @@ -0,0 +1,26 @@ +# Long Context with Sequence Parallelism + +## Sequence Parallelism +Sequence parallelism is a way to split the activation value and thus reduce the memory footprint. If your input is long enough (e.g., sequence length > 16K), then you may need to perform sequence parallelism. + +Nanotron implements sequence parallelism via ring attention. To use this feature, you only need to set *sp* > 1. However, noting that the TP-Reduce scatter mode not only splits the model's weights/gradients/optimizer states but also the activation value, I suggest trying to increase the TP to 8 first, and then if activation value splitting is still needed, increase the SP. + +## Experiment Setup +Our experimental results show that when training with long sequences (e.g., scaling from 8K to 128K), gradually increasing the sequence length and the size of the RoPE theta speeds up convergence and saves computational resources. + +An example of this is when extending the context length from 8K to 1M, this is how I increased the context and RoPE base: + +| Sequence Length | Rope Theta | Train Steps | Batch Accumulation per Replica | Micro Batch Size | +|-----------------|-----------------|-------------|-------------------------------|------------------| +| 65536 | 22,400,000.0 | 10 | 32 | 1 | +| 131072 | 80,000,000.0 | 10 | 32 | 1 | +| 524288 | 1,000,000,000.0 | 10 | 16 | 1 | +| 1048576 | 3,600,000,000.0 | 10 | 8 | 1 | + +For this reason, I added a template file in this folder. You can customize the hyper-parameters for each training and then generate the config files by running: `python create_config.py` + +Then for training, you only need to execute: `sbatch launch_training.slurm` + +## Experiment results +We successfully extended the model's context length to 1M tokens using less than 0.3B tokens and 50 training steps, achieving 100% accuracy in the needle-in-a-haystack experiment. +![1M Context Length Example](https://github.com/huggingface/nanotron/raw/main/examples/long-context/images/1M.png) diff --git a/examples/long-context/create_config.py b/examples/long-context/create_config.py new file mode 100644 index 00000000..c96ac301 --- /dev/null +++ b/examples/long-context/create_config.py @@ -0,0 +1,127 @@ +import os + +from jinja2 import Environment, FileSystemLoader + +# Choose the template +template_file = "llama3_template.jinja2" + +# Load the template environment +current_directory = os.getcwd() +template_directory = os.path.join(current_directory, "templates") + +env = Environment(loader=FileSystemLoader(template_directory)) +template = env.get_template(template_file) +print("Template file: {}".format(template_file)) +print() + + +###### First create a temple file ###### +# You should define the model/tokenizer/dataset in the template file +# You can use llama3 converter to get the weights and tokenizer +tokenizer_path = "/fsx/haojun/lighteval_evaluation_model/NanotronLlama3-8B-Instruct" # replace with your own +init_weights_path = "/fsx/haojun/lighteval_evaluation_model/NanotronLlama3-8B-Instruct" # replace with your own +dataset_folder = "/fsx/haojun/datasets/tokenized_bytes_4B_tokens" # replace with your own +###### end ###### + + +############ hyper-parameter for experiments ############ +experiment_name = "1M_4stages" +sequence_lengths = [65536, 131072, 524288, 1048576] # Model sequence length +rope_thetas = [22400000.0, 80000000.0, 1000000000.0, 3600000000.0] # base value of RoPE +train_steps = [10, 20, 30, 40] # accumulative steps +batch_accumulation_per_replicas = [32, 32, 16, 8] # gradient accumulation steps +micro_batch_sizes = [1, 1, 1, 1] # batch size +sps = [4, 8, 32, 64] # Sequence parallelism degree +tp = 8 # Tensor parallelism degree +checkpoint_intervals = [1, 1, 1, 1] + +############ end ############ + +############ optimizer ############ +lr_warmup_steps = 1 +lr_decay_steps = 1 +learning_rate = 0.00002 +min_decay_lr = 0.00002 +############ end ############ + + +############ checkpoints/config path ############ +# model weights output directory +checkpoints_path = os.path.join(current_directory, "weights", experiment_name) +checkpoints_paths = [checkpoints_path] * len(sequence_lengths) +resume_checkpoint_paths = ["null"] + [checkpoints_path] * (len(sequence_lengths) - 1) + +# Config files output directory +output_dir = os.path.join(current_directory, "configs", experiment_name) +if not os.path.exists(output_dir): + os.makedirs(output_dir, exist_ok=True) + print(f"Created config directory: {output_dir}") +############ end ############ + +# Ensure that we have exactly same number elements in each list to match the requirement +list_lengths = [ + len(checkpoints_paths), + len(resume_checkpoint_paths), + len(sequence_lengths), + len(rope_thetas), + len(train_steps), + len(batch_accumulation_per_replicas), + len(micro_batch_sizes), + len(sps), + len(checkpoint_intervals), +] +if not all(length == list_lengths[0] for length in list_lengths): + raise ValueError("All input lists must have the same length.") + + +def format_float(value, decimal_places=5): + return f"{value:.{decimal_places}f}" + + +for i in range(len(checkpoints_paths)): + checkpoints_path = checkpoints_paths[i] + resume_checkpoint_path = resume_checkpoint_paths[i] + checkpoint_interval = checkpoint_intervals[i] + batch_accumulation_per_replica = batch_accumulation_per_replicas[i] + sequence_length = sequence_lengths[i] + rope_theta = rope_thetas[i] + train_step = train_steps[i] + micro_batch_size = micro_batch_sizes[i] + sp = sps[i] + + # Create the checkpoint path if it doesn't exist + if not os.path.exists(checkpoints_path): + os.makedirs(checkpoints_path, exist_ok=True) + print(f"Created directory: {checkpoints_path}") + + variables = { + "tokenizer_path": tokenizer_path, + "init_weights_path": init_weights_path, + "dataset_folder": dataset_folder, + "checkpoints_path": checkpoints_path, + "resume_checkpoint_path": resume_checkpoint_path, + "checkpoint_interval": checkpoint_interval, + "sequence_length": sequence_length, + "rope_theta": rope_theta, + "train_steps": train_step, + "batch_accumulation_per_replica": batch_accumulation_per_replica, + "micro_batch_size": micro_batch_size, + "learning_rate": format_float(learning_rate), + "min_decay_lr": format_float(min_decay_lr), + "lr_warmup_steps": lr_warmup_steps, + "lr_decay_steps": lr_decay_steps, + "sp": sp, + "tp": tp, + } + + # Render the template with the provided variables + config = template.render(variables) + + # # Define the output file name + output_file = f"{output_dir}/config_{i}_theta={rope_theta/1e6}M_steps={train_step}_seq_len={sequence_length}.yaml" + + # Save the rendered configuration to a YAML file + with open(output_file, "w") as f: + f.write(config) + + print(f"Configuration file '{output_file}' has been generated.") diff --git a/examples/long-context/images/1M.png b/examples/long-context/images/1M.png new file mode 100644 index 0000000000000000000000000000000000000000..14a8cf454dcc23431f1fcf1e3f355c5b2cdb7f12 GIT binary patch literal 38025 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%0AlYLgsaSP7{S&2r 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 literal 0 HcmV?d00001 diff --git a/examples/long-context/launch_training.slurm b/examples/long-context/launch_training.slurm new file mode 100644 index 00000000..427f94f2 --- /dev/null +++ b/examples/long-context/launch_training.slurm @@ -0,0 +1,53 @@ +#!/bin/bash +#SBATCH --job-name=long-context +#SBATCH --qos=high +#SBATCH --nodes=4 +#SBATCH --ntasks-per-node=1 +#SBATCH --partition=hopper-prod +#SBATCH --gres=gpu:8 +#SBATCH --mem=0 + +# HF stuff +if [ -f .env ]; then + export $(cat .env | xargs) +fi + +# script for a benchmark +set -x -e + +# replace with your own env +echo "START TIME: $(date)" +source /admin/home/haojun_zhao/miniconda3/etc/profile.d/conda.sh +conda activate /admin/home/haojun_zhao/miniconda3/envs/nt_mamba +echo python3 version = $(python3 --version) + +# SLURM stuff +export HOSTNAMES=`scontrol show hostnames "$SLURM_JOB_NODELIST"` +export MASTER_ADDR=$(scontrol show hostnames "$SLURM_JOB_NODELIST" | head -n 1) +export MASTER_PORT=9001 +export COUNT_NODE=`scontrol show hostnames "$SLURM_JOB_NODELIST" | wc -l` +export OMP_NUM_THREADS=8 +export CUDA_DEVICE_MAX_CONNECTIONS=1 +export FI_PROVIDER="efa" +NUM_GPUS=$(nvidia-smi --list-gpus | wc -l) + +echo "NCCL version: $(python -c "import torch;print(torch.cuda.nccl.version())")" +echo "CUDA version: $(python -c "import torch;print(torch.version.cuda)")" + +module load cuda/12.1 + +current_dir=$(pwd) +parent_of_parent_dir=$(dirname $(dirname "$current_dir")) + +TRAIN_SCRIPT= "$parent_of_parent_dir/run_train.py" +CONFIG_FILE= "$current_dir/1M_4stages/config_0_theta=22.4M_steps=10_seq_len=65536.yaml" + +srun torchrun \ + --nnodes=4 \ + --nproc_per_node=8 \ + --rdzv_backend=c10d \ + --rdzv-id ${SLURM_JOB_ID} \ + --rdzv_endpoint=$MASTER_ADDR:$MASTER_PORT \ + --max_restarts=0 \ + --tee=3 \ + $TRAIN_SCRIPT --config-file $CONFIG_FILE diff --git a/examples/long-context/templates/llama3_template.jinja2 b/examples/long-context/templates/llama3_template.jinja2 new file mode 100644 index 00000000..904fe8af --- /dev/null +++ b/examples/long-context/templates/llama3_template.jinja2 @@ -0,0 +1,114 @@ +checkpoints: + checkpoint_interval: {{ checkpoint_interval }} + checkpoints_path: "{{ checkpoints_path }}" + checkpoints_path_is_shared_file_system: false + resume_checkpoint_path: "{{ resume_checkpoint_path }}" + save_initial_state: false + +data_stages: +- data: + dataset: + dataloader_type: cyclic + dataset_max_tokens: null + dataset_weights: null + datasets: + - filename_pattern: '.*\.ds' + folder: {{ dataset_folder}} + seed: null + shuffle: false + skip_tokens: 0 + pad_samples_to_global_batch_size: false + skip_in_stream: true + num_loading_workers: 0 + seed: 42 + name: long context + start_training_step: 1 + + +general: + benchmark_csv_path: null + consumed_train_samples: null + ignore_sanity_checks: true + project: debug + run: tiny_llama_%date_%jobid + seed: 42 + step: null +lighteval: null +logging: + iteration_step_info_interval: 1 + log_level: info + log_level_replica: info + +model: + ddp_bucket_cap_mb: 25 + dtype: bfloat16 + init_method: + path: {{ init_weights_path }} + make_vocab_size_divisible_by: 1 + model_config: + bos_token_id: 128000 + eos_token_id: 128001 + hidden_act: silu + hidden_size: 4096 + initializer_range: 0.02 + intermediate_size: 14336 + is_llama_config: true + max_position_embeddings: {{ sequence_length }} + num_attention_heads: 32 + num_hidden_layers: 32 + num_key_value_heads: 8 + pad_token_id: null + pretraining_tp: 1 + rms_norm_eps: 1.0e-05 + rope_interleaved: false + rope_scaling: null + rope_theta: {{ rope_theta }} + tie_word_embeddings: false + use_cache: true + vocab_size: 128256 + +optimizer: + accumulate_grad_in_fp32: true + clip_grad: 1.0 + learning_rate_scheduler: + learning_rate: {{ learning_rate }} + lr_decay_starting_step: null + lr_decay_steps: {{ lr_decay_steps }} + lr_decay_style: cosine + lr_warmup_steps: {{ lr_warmup_steps }} + lr_warmup_style: linear + min_decay_lr: {{ min_decay_lr }} + optimizer_factory: + adam_beta1: 0.9 + adam_beta2: 0.95 + adam_eps: 1.0e-08 + name: adamW + torch_adam_is_fused: true + weight_decay: 0.01 + zero_stage: 0 + +parallelism: + dp: 1 + expert_parallel_size: 1 + pp: 1 + pp_engine: 1f1b + sp: {{ sp }} + tp: {{ tp }} + tp_linear_async_communication: false + tp_mode: REDUCE_SCATTER + +profiler: null + +tokenizer: + tokenizer_max_length: null + tokenizer_name_or_path: {{ tokenizer_path }} + tokenizer_revision: null + +tokens: + batch_accumulation_per_replica: {{ batch_accumulation_per_replica }} + limit_test_batches: 0 + limit_val_batches: 0 + micro_batch_size: {{ micro_batch_size }} + sequence_length: {{ sequence_length }} + train_steps: {{ train_steps }} + val_check_interval: -1 From 87649dffc502f9385d40206583df2e6b5e218d26 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Sun, 21 Jul 2024 23:40:22 +0000 Subject: [PATCH 15/19] correct link --- examples/long-context/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/long-context/README.md b/examples/long-context/README.md index 93fee53c..a801a84d 100644 --- a/examples/long-context/README.md +++ b/examples/long-context/README.md @@ -23,4 +23,4 @@ Then for training, you only need to execute: `sbatch launch_training.slurm` ## Experiment results We successfully extended the model's context length to 1M tokens using less than 0.3B tokens and 50 training steps, achieving 100% accuracy in the needle-in-a-haystack experiment. -![1M Context Length Example](https://github.com/huggingface/nanotron/raw/main/examples/long-context/images/1M.png) +![1M Context Length Example](./images/1M.png) From c6bbeda110037cbe18822434a6413771d23c4af6 Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Mon, 22 Jul 2024 00:35:36 +0000 Subject: [PATCH 16/19] evaluation script --- .../long-context/needle_in_a_haystack_test.py | 477 ++++++++++++++++++ 1 file changed, 477 insertions(+) create mode 100644 examples/long-context/needle_in_a_haystack_test.py diff --git a/examples/long-context/needle_in_a_haystack_test.py b/examples/long-context/needle_in_a_haystack_test.py new file mode 100644 index 00000000..728de75e --- /dev/null +++ b/examples/long-context/needle_in_a_haystack_test.py @@ -0,0 +1,477 @@ +""" +CUDA_LAUNCH_BLOCKING=1 CUDA_DEVICE_MAX_CONNECTIONS=1 torchrun --nproc_per_node=4 --nnodes=1 --rdzv_backend=c10d --rdzv_endpoint=localhost:29600 --max_restarts=0 --tee=3 needle_in_a_haystack_test.py --ckpt-path /fsx/haojun/long_context_weights/experiment_gradient_reproduce_LR=2e-5/120 +""" + +import argparse +import glob +import os +from dataclasses import fields +from decimal import Decimal +from pathlib import Path +from typing import Optional, Type + +import dacite +import numpy as np +import torch +import yaml +from dacite import from_dict +from nanotron import distributed as dist +from nanotron import logging +from nanotron.config import ( + LoggingArgs, + ParallelismArgs, +) +from nanotron.config.config import Config +from nanotron.config.utils_config import RecomputeGranularity, cast_str_to_pipeline_engine, cast_str_to_torch_dtype +from nanotron.generation.decode import ( + decode_text_simple, +) +from nanotron.generation.sampler import SamplerType +from nanotron.logging import log_rank, set_ranks_logging_level +from nanotron.models import build_model +from nanotron.parallel import ParallelContext +from nanotron.parallel.parameters import sanity_check +from nanotron.parallel.pipeline_parallel.engine import ( + OneForwardOneBackwardPipelineEngine, + PipelineEngine, +) +from nanotron.parallel.tensor_parallel.enum import TensorParallelLinearMode +from nanotron.random import ( + RandomStates, + get_current_random_state, + get_synced_random_state, + set_random_seed, +) +from nanotron.serialize import load_weights +from nanotron.trainer import CONFIG_TO_MODEL_CLASS, mark_tied_parameters +from tqdm import tqdm + +try: + from transformers import AutoTokenizer +except ImportError: + AutoTokenizer = None +import pickle + +logger = logging.get_logger(__name__) +DEVICE = torch.device("cuda") + +# copied this function to avoid strict match +def get_config_from_dict( + config_dict: dict, config_class: Type = Config, skip_unused_config_keys: bool = False, skip_null_keys: bool = False +): + if skip_unused_config_keys: + config_dict = { + field.name: config_dict[field.name] for field in fields(config_class) if field.name in config_dict + } + if skip_null_keys: + config_dict = { + k: {kk: vv for kk, vv in v.items() if vv is not None} if isinstance(v, dict) else v + for k, v in config_dict.items() + if v is not None + } + config_dict["data_stages"] = None + return from_dict( + data_class=config_class, + data=config_dict, + config=dacite.Config( + cast=[Path], + type_hooks={ + torch.dtype: cast_str_to_torch_dtype, + PipelineEngine: cast_str_to_pipeline_engine, + TensorParallelLinearMode: lambda x: TensorParallelLinearMode[x.upper()], + RecomputeGranularity: lambda x: RecomputeGranularity[x.upper()], + SamplerType: lambda x: SamplerType[x.upper()], + }, + strict=False, + ), + ) + + +def get_config_from_file( + config_path: str, + config_class: Type = Config, + model_config_class: Optional[Type] = None, + skip_unused_config_keys: bool = True, + skip_null_keys: bool = True, +) -> Config: + """Get a config object from a file (python or YAML) + + Args: + config_path: path to the config file + config_type: if the file is a python file, type of the config object to get as a + ConfigTypes (Config, LightevalConfig, LightevalSlurm) or str + if None, will default to Config + skip_unused_config_keys: whether to skip unused first-nesting-level keys in the config file (for config with additional sections) + skip_null_keys: whether to skip keys with value None at first and second nesting level + """ + # Open the file and load the file + with open(config_path) as f: + config_dict = yaml.load(f, Loader=yaml.SafeLoader) + + config = get_config_from_dict( + config_dict, + config_class=config_class, + skip_unused_config_keys=skip_unused_config_keys, + skip_null_keys=skip_null_keys, + ) + if model_config_class is not None: + if not isinstance(config.model.model_config, (dict, model_config_class)): + raise ValueError( + f"model_config should be a dictionary or a {model_config_class} and not {config.model.model_config}" + ) + config.model.model_config = model_config_class(**config.model.model_config) + return config + + +## Ref: https://github.com/jzhang38/EasyContext + +## PREFIX + Haystack + NEEDLE_FORMAT + Haystack + QUESTION_STR +PREFIX = "This is a very long story book: <book>" +NEEDLE_FORMAT = "\nThe special magic Singapore number is: {}.\n" +CITIES = ["Singapore", "Chicago", "Sydney", "Amsterdam"] +QUESTION_STR = "</book>.\n Based on the content of the book, Question: What is the special magic Singapore number? Answer: The special magic {}" +PROMPT_TOKENS = 100 # tokens for prefix, needle, question, generation + + +def generate_question_str(num_needles, cities): + assert num_needles <= len(cities) + assert num_needles == 1, "Only support retrieve 1 city for now." + if num_needles == 1: + return QUESTION_STR.format(cities[0]) + " number is: " + else: + return QUESTION_STR.format(", ".join(cities[:num_needles])) + " numbers are: " + + +def generate_random_number(num_digits): + lower_bound = 10 ** (num_digits - 1) + upper_bound = 10**num_digits - 1 + return np.random.randint(lower_bound, upper_bound) + + +def load_haystack(tokenizer, max_context_length, haystack_dir): + context = "" + # do not count <s> + while len(tokenizer.encode(context)) - 1 < max_context_length: + if dist.get_rank() == 0: + print(f"Current Context Length: {len(tokenizer.encode(context))-1}") + print(f'Loading files {glob.glob(f"{haystack_dir}/*.txt")[:5]}') + for file in glob.glob(f"{haystack_dir}/*.txt"): + with open(file, "r") as f: + context += f.read() + if len(tokenizer.encode(context)) - 1 > max_context_length: + break + tokenized_haystack = tokenizer.encode(context) + return tokenized_haystack + + +## replace the above function by loading from a file to save tokenization time +def load_tokenized_haystack(context_directory, max_context_length): + load_path = f"{context_directory}/tokenized_haystack_{max_context_length}.pt" + if os.path.exists(load_path): + tokenized_haystack = torch.load(load_path) + return tokenized_haystack + return None + + +def construct_prompt( + tokenized_haystack, + tokenized_prefix, + tokenized_postfix, + tokenized_needle, + context_length, + tokenized_distractor_list, + depth, +): + # insert the needle into depth of the haystack + period_tokens = [ + 13, + 3343, + ] # this is the period token for llama3 tokenizer. https://huggingface.co/meta-llama/Meta-Llama-3-8B/raw/main/tokenizer.json + prompt = tokenized_haystack[: context_length - PROMPT_TOKENS] # test it. + if depth == 0: + start_index = 0 + else: + start_index = int(len(prompt) * depth) + # find the closest period token + for i in range(start_index, len(prompt)): + if prompt[i] in period_tokens: + start_index = i + 1 + break + prompt = prompt[:start_index] + tokenized_needle + prompt[start_index:] + # insert distractors + for distractor in tokenized_distractor_list: + start_index = np.random.randint(0, len(prompt)) + for i in range(start_index, len(prompt)): + if prompt[i] in period_tokens: + start_index = i + 1 + break + prompt = prompt[:start_index] + distractor + prompt[start_index:] + prompt = tokenized_prefix + prompt + tokenized_postfix + return prompt + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument("--ckpt-path", type=Path, required=True, help="Checkpoint path") + parser.add_argument("--max-new-tokens", type=int, default=7, help="Maximum number of new tokens to generate") + parser.add_argument("--min-context-length", type=int, default=4000) + parser.add_argument("--max-context-length", type=int, default=64000) + parser.add_argument("--context-interval", type=int, default=4000) + parser.add_argument("--depth-interval", type=str, default="0.2") + parser.add_argument("--rnd-number-digits", type=int, default=7) + parser.add_argument("--num-samples", type=int, default=2) + parser.add_argument("--num-distractors", type=int, default=0) + parser.add_argument("--num-cities-retrieval", type=int, default=1) + parser.add_argument("--tp", type=int, default=8) + parser.add_argument("--pp", type=int, default=1) + parser.add_argument("--sp", type=int, default=1) + parser.add_argument("--haystack-dir", type=str, required=True, help="Haystack directory") + return parser.parse_args() + + +depth_interval = Decimal("0.2") + + +def main(): + args = get_args() + + min_context_length = args.min_context_length + max_context_length = args.max_context_length + context_interval = args.context_interval + num_cities_retrieval = args.num_cities_retrieval + depth_interval = Decimal(args.depth_interval) + haystack_dir = args.haystack_dir + + rnd_number_digits = args.rnd_number_digits + num_samples = args.num_samples + num_distractor = args.num_distractors + + config = get_config_from_file((args.ckpt_path / "config.yaml").as_posix()) + model_config = config.model.model_config + tokenizer_path = config.tokenizer.tokenizer_name_or_path + + parallel_config = ParallelismArgs( + dp=1, + pp=args.pp, + tp=args.tp, + sp=args.sp, + pp_engine=OneForwardOneBackwardPipelineEngine(), + tp_mode=TensorParallelLinearMode.REDUCE_SCATTER, + # tp_mode=TensorParallelLinearMode.ALL_REDUCE, + tp_linear_async_communication=False, + ) + + # Initialise all process groups + parallel_context = ParallelContext( + data_parallel_size=parallel_config.dp, + pipeline_parallel_size=parallel_config.pp, + tensor_parallel_size=parallel_config.tp, + sequence_parallel_size=parallel_config.sp, + ) + + # Set log levels + logging_config = LoggingArgs( + log_level="info", + log_level_replica="info", + ) + + # Set log levels + set_ranks_logging_level(parallel_context=parallel_context, logging_config=logging_config) + + log_rank(f"model_config: {model_config}", logger=logger, level=logging.INFO, rank=0) + log_rank(f"tokenizer_path: {tokenizer_path}", logger=logger, level=logging.INFO, rank=0) + + dtype = torch.bfloat16 + + # Set random states + set_random_seed(42) + + model_config_cls = model_config.__class__.__name__ + if model_config_cls not in CONFIG_TO_MODEL_CLASS: + raise ValueError( + f"Unsupported model config {model_config_cls}. Only {CONFIG_TO_MODEL_CLASS.keys()} are supported" + ) + + # Get synchronized random states + if parallel_config.tp_mode is TensorParallelLinearMode.ALL_REDUCE: + random_states = RandomStates( + {"tp_synced": get_synced_random_state(random_state=get_current_random_state(), pg=parallel_context.tp_pg)} + ) + else: + # We don't need to sync across TP when using sequence parallel (REDUCE_SCATTER) + random_states = RandomStates({}) + + # Reset the model max context length + if model_config.max_position_embeddings <= max_context_length: + model_config.max_position_embeddings = max_context_length + + # copy from _init_model + model = build_model( + model_builder=lambda: CONFIG_TO_MODEL_CLASS[model_config_cls]( + config=model_config, + parallel_context=parallel_context, + parallel_config=parallel_config, + random_states=random_states, + ), + dtype=dtype, + parallel_context=parallel_context, + ) + + # Mark some parameters as tied + # TODO @nouamane: this is only needed for training, can we just mark params as NanotronParameter instead? + mark_tied_parameters(model=model, parallel_context=parallel_context, parallel_config=parallel_config) + + # Sanity check model + sanity_check(root_module=model) + + # Load checkpoint + checkpoint_path = args.ckpt_path + log_rank( + f"Loading checkpoint from {checkpoint_path}:", + logger=logger, + level=logging.INFO, + rank=0, + ) + load_weights(model=model, parallel_context=parallel_context, root_folder=checkpoint_path) + + model.eval() + + # code for evaluation + if AutoTokenizer is not None: + tokenizer = AutoTokenizer.from_pretrained(tokenizer_path) + tokenizer.pad_token = tokenizer.eos_token + tokenizer.padding_side = "left" + tokenizer.truncation_side = "left" + + question_str = generate_question_str(num_cities_retrieval, CITIES) + + tokenized_prefix = tokenizer.encode(PREFIX)[1:] + tokenized_postfix = tokenizer.encode(question_str)[1:] + tokenized_haystack = load_haystack(tokenizer, max_context_length - PROMPT_TOKENS, haystack_dir)[1:] + + DISTRACTOR_LIST = [ + "\nThe special magic New York number is: {}.\n", + "\nThe special magic London number is: {}.\n", + "\nThe special magic Paris number is: {}.\n", + "\nThe special magic Tokyo number is: {}.\n", + "\nThe special magic Beijing number is: {}.\n", + "\nThe special magic Berlin number is: {}.\n", + ] + + random_number_list = [generate_random_number(rnd_number_digits) for i in range(num_samples)] + + depth_values = [float(i) for i in np.arange(Decimal("0.0"), Decimal("1.0") + depth_interval, depth_interval)] + distractor_number_list = [int(np.random.randint(10**rnd_number_digits)) for i in range(num_distractor)] + distractor_str_list = [ + DISTRACTOR_LIST[i % len(DISTRACTOR_LIST)].format(distractor_number_list[i]) for i in range(num_distractor) + ] + tokenized_distractor_list = [tokenizer.encode(distractor_str)[1:] for distractor_str in distractor_str_list] + + results_dict = {} + + if dist.get_rank() == 0: + context_lengths = tqdm(range(min_context_length, max_context_length + 1, context_interval)) + else: + context_lengths = range(min_context_length, max_context_length + 1, context_interval) + + for context_length in context_lengths: + correct = 0 + total = 0 + # Store the result in the dictionary + if context_length not in results_dict: + results_dict[context_length] = {} + for depth in depth_values: + depth_correct = 0.0 + depth_total = 0.0 + for random_number in random_number_list: + needle_str = NEEDLE_FORMAT.format(random_number) + ground_truth_str = str(random_number) + tokenized_needle = tokenizer.encode(needle_str)[1:] + tokenizer_answer = tokenizer.encode(ground_truth_str)[1:] + + prompt = construct_prompt( + tokenized_haystack, + tokenized_prefix, + tokenized_postfix, + tokenized_needle, + context_length, + tokenized_distractor_list, + depth, + ) + input_ids = torch.tensor(prompt).to(DEVICE) + prompt_text = tokenizer.decode(input_ids, clean_up_tokenization_spaces=False) + ground_truth_str = tokenizer.decode( + torch.tensor(tokenizer_answer).to(DEVICE), clean_up_tokenization_spaces=False + ) + + dummy_inputs = [ + prompt_text, + ] + pad_to_multiple_of = ( + parallel_context.tensor_parallel_size * parallel_context.sequence_parallel_size * 2 + ) + outputs = decode_text_simple( + input_texts=dummy_inputs, + model=model.model, + tokenizer=tokenizer, + parallel_context=parallel_context, + max_new_tokens=args.max_new_tokens, + padding_left=False, # right padding. + pad_to_multiple_of=pad_to_multiple_of, + ) + + for output in outputs: + genenration = output["generation"] + if ground_truth_str in genenration: + correct += 1 + total += 1 + depth_correct += ground_truth_str in genenration + depth_total += 1 + log_rank( + f"Context length: {context_length}, Depth: {depth}, Genenration: {genenration}, Ground Truth: {ground_truth_str}, Passed test: {ground_truth_str in genenration}", + logger=logger, + level=logging.INFO, + rank=0, + ) + + # register the result for this depth + results_dict[context_length][depth] = depth_correct / depth_total + log_rank( + f"Context length: {context_length}, Depth: {depth}, Passed test: {results_dict[context_length][depth]}", + logger=logger, + level=logging.INFO, + rank=0, + ) + # if output_rank: + log_rank( + f"Context length: {context_length}, Accuracy: {correct/total}", + logger=logger, + level=logging.INFO, + rank=0, + ) + log_rank( + "--------------------------------------------------", + logger=logger, + level=logging.INFO, + rank=0, + ) + + results_dict_path = "results.pkl" + with open(results_dict_path, "wb") as f: + pickle.dump(results_dict, f) + print(f"Evaluation result saved to {results_dict_path}") + + dist.barrier() + + # Get the maximum memory allocated + max_memory_allocated = torch.cuda.max_memory_allocated() + log_rank( + f"Maximum CUDA memory allocated: {max_memory_allocated / 1024 ** 3} GB", + logger=logger, + level=logging.INFO, + rank=0, + ) + + +if __name__ == "__main__": + main() From 72d94886e662cc7a020b89dfa586fcffc34e060c Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Mon, 22 Jul 2024 09:57:47 +0000 Subject: [PATCH 17/19] change foler location --- src/nanotron/models/llama.py | 4 ++-- .../{ => parallel}/ring_flash_attn/ring_flash_attn.py | 0 src/nanotron/{ => parallel}/ring_flash_attn/utils.py | 0 .../{ => parallel}/ring_flash_attn/zigzag_ring_flash_attn.py | 0 4 files changed, 2 insertions(+), 2 deletions(-) rename src/nanotron/{ => parallel}/ring_flash_attn/ring_flash_attn.py (100%) rename src/nanotron/{ => parallel}/ring_flash_attn/utils.py (100%) rename src/nanotron/{ => parallel}/ring_flash_attn/zigzag_ring_flash_attn.py (100%) diff --git a/src/nanotron/models/llama.py b/src/nanotron/models/llama.py index 3f599f54..8c1f7bc3 100644 --- a/src/nanotron/models/llama.py +++ b/src/nanotron/models/llama.py @@ -33,6 +33,7 @@ from nanotron.parallel.parameters import NanotronParameter from nanotron.parallel.pipeline_parallel.block import PipelineBlock, TensorPointer from nanotron.parallel.pipeline_parallel.p2p import P2P +from nanotron.parallel.ring_flash_attn.utils import zigzag_split from nanotron.parallel.tensor_parallel.functional import sharded_cross_entropy from nanotron.parallel.tensor_parallel.nn import ( TensorParallelColumnLinear, @@ -41,7 +42,6 @@ TensorParallelRowLinear, ) from nanotron.random import RandomStates -from nanotron.ring_flash_attn.utils import zigzag_split from nanotron.scaling.parametrization import SpectralMupParametrizator, StandardParametrizator from nanotron.utils import checkpoint_method, supports_flash_attention @@ -53,7 +53,7 @@ ) from flash_attn.layers.rotary import RotaryEmbedding as FlashRotaryEmbedding - from nanotron.ring_flash_attn.zigzag_ring_flash_attn import zigzag_ring_flash_attn_func + from nanotron.parallel.ring_flash_attn.zigzag_ring_flash_attn import zigzag_ring_flash_attn_func logger = logging.get_logger(__name__) diff --git a/src/nanotron/ring_flash_attn/ring_flash_attn.py b/src/nanotron/parallel/ring_flash_attn/ring_flash_attn.py similarity index 100% rename from src/nanotron/ring_flash_attn/ring_flash_attn.py rename to src/nanotron/parallel/ring_flash_attn/ring_flash_attn.py diff --git a/src/nanotron/ring_flash_attn/utils.py b/src/nanotron/parallel/ring_flash_attn/utils.py similarity index 100% rename from src/nanotron/ring_flash_attn/utils.py rename to src/nanotron/parallel/ring_flash_attn/utils.py diff --git a/src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py b/src/nanotron/parallel/ring_flash_attn/zigzag_ring_flash_attn.py similarity index 100% rename from src/nanotron/ring_flash_attn/zigzag_ring_flash_attn.py rename to src/nanotron/parallel/ring_flash_attn/zigzag_ring_flash_attn.py From 59073399f3747fa81c3c44970a8be2226856a71a Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Mon, 22 Jul 2024 10:20:07 +0000 Subject: [PATCH 18/19] update Readme --- examples/long-context/README.md | 4 ++++ examples/long-context/images/theta=22p4M.gif | Bin 0 -> 513480 bytes 2 files changed, 4 insertions(+) create mode 100644 examples/long-context/images/theta=22p4M.gif diff --git a/examples/long-context/README.md b/examples/long-context/README.md index a801a84d..c0700d98 100644 --- a/examples/long-context/README.md +++ b/examples/long-context/README.md @@ -24,3 +24,7 @@ Then for training, you only need to execute: `sbatch launch_training.slurm` ## Experiment results We successfully extended the model's context length to 1M tokens using less than 0.3B tokens and 50 training steps, achieving 100% accuracy in the needle-in-a-haystack experiment. ![1M Context Length Example](./images/1M.png) + +To demonstrate how quickly the model can adapt to long contexts, we created a GIF that shows how the model completes a needle-in-a-haystack test over a 64K context length in 10 steps of training. + +![64K revolution gif](./images/theta=22p4M.gif) diff --git a/examples/long-context/images/theta=22p4M.gif b/examples/long-context/images/theta=22p4M.gif new file mode 100644 index 0000000000000000000000000000000000000000..6b8a70b92718d0d31a49e826f2545ce7c40a721c GIT binary patch literal 513480 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Ὼ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ΜgOkL&lfV?SCtP}Ce=gnM2fqCIgW}iD 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%0A(LHZt^ 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�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	s{tze&m_cX@?H8nf+5$gEQo&f2m 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⪚TYZQ;BG||I)q<*_JVe%WWY&oa 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ℑ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 literal 0 HcmV?d00001 From c81601ae8943a91642e380413992d13ce02559ed Mon Sep 17 00:00:00 2001 From: zzhhjjj <z785566960@gmail.com> Date: Mon, 22 Jul 2024 10:34:48 +0000 Subject: [PATCH 19/19] update README --- examples/long-context/README.md | 4 ++++ .../long-context/images/theta=1M_15steps.jpeg | Bin 0 -> 156273 bytes 2 files changed, 4 insertions(+) create mode 100644 examples/long-context/images/theta=1M_15steps.jpeg diff --git a/examples/long-context/README.md b/examples/long-context/README.md index c0700d98..0e688cab 100644 --- a/examples/long-context/README.md +++ b/examples/long-context/README.md @@ -28,3 +28,7 @@ We successfully extended the model's context length to 1M tokens using less than To demonstrate how quickly the model can adapt to long contexts, we created a GIF that shows how the model completes a needle-in-a-haystack test over a 64K context length in 10 steps of training. ![64K revolution gif](./images/theta=22p4M.gif) + +The setting of the base value is crucial. An example of incorrect setting is setting the base value to 1M and then training for 15 steps. The resulting model can hardly complete the needle-in-a-haystack task. + +![ablation study](./images/theta=1M_15steps.jpeg) diff --git a/examples/long-context/images/theta=1M_15steps.jpeg b/examples/long-context/images/theta=1M_15steps.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..6da75d83daefb4f3137d7fb1bd764fb1616c2a32 GIT binary patch literal 156273 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 N{`s2}j}ZUe{{c)74+sDN literal 0 HcmV?d00001