rubentium commited on
Commit
a95fd20
·
verified ·
1 Parent(s): 91e8eee

Archive current RCP 365M learnable-gain recipe and log snapshot

Browse files
epfl_final/SparseAtt/configs/rcp_20260927/365m_dense_qkgainfp32_s42_60b_1gpu.json ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": {
3
+ "path": "../../qwen3_06b_base",
4
+ "dtype": "bfloat16",
5
+ "init_from_scratch": true,
6
+ "hidden_size": 768,
7
+ "intermediate_size": 3072,
8
+ "num_hidden_layers": 28,
9
+ "num_attention_heads": 6,
10
+ "num_key_value_heads": 2,
11
+ "rope_theta": 1000000.0,
12
+ "qk_norm": "on",
13
+ "qk_gain_fp32": true,
14
+ "positional": "rope"
15
+ },
16
+ "data": {
17
+ "train_path": "/mloscratch/homes/navasard/data/fineweb_large/tokenized",
18
+ "val_path": null,
19
+ "seed": 42,
20
+ "max_seq_length": 8192,
21
+ "num_workers": 4
22
+ },
23
+ "training": {
24
+ "output_dir": "/mloscratch/homes/navasard/sparse/checkpoints/rcp_365m_dense_qkgainfp32_60b_seed42_20260927",
25
+ "resume_from_checkpoint": null,
26
+ "force_new_run": false,
27
+ "num_epochs": 3,
28
+ "max_steps": 366211,
29
+ "per_device_batch_size": 1,
30
+ "gradient_accumulation_steps": 20,
31
+ "learning_rate": 0.0005,
32
+ "weight_decay": 0.01,
33
+ "warmup_steps": 750,
34
+ "lr_scheduler": "cosine",
35
+ "max_grad_norm": 1.0,
36
+ "save_steps": 5000,
37
+ "eval_steps": 1000,
38
+ "eval_batches": 10,
39
+ "logging_steps": 100,
40
+ "seed": 42,
41
+ "verbose": false,
42
+ "checkpoint_activations": false
43
+ },
44
+ "distributed": {
45
+ "strategy": "ddp",
46
+ "mixed_precision": "bf16"
47
+ },
48
+ "wandb": {
49
+ "enabled": false,
50
+ "project": "stochastic_sparsity",
51
+ "name": "RCP 365m dense qkgainfp32 seed42 60B single A100 20260927",
52
+ "tags": [
53
+ "final_20260924",
54
+ "part_a",
55
+ "dense",
56
+ "qkgainfp32",
57
+ "seed42"
58
+ ]
59
+ },
60
+ "attention": {
61
+ "type": "dense",
62
+ "dense_mode": false
63
+ }
64
+ }
epfl_final/train_logs/rcp_365m_dense_qkgainfp32_s42_60b_20260927.log ADDED
@@ -0,0 +1,306 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ New run: Checkpoints will be saved to /mloscratch/homes/navasard/sparse/checkpoints/rcp_365m_dense_qkgainfp32_60b_seed42_20260927/run_20260927_230247
2
+ Running config:
3
+ {
4
+ "model_path": "../../qwen3_06b_base",
5
+ "model_dtype": "bfloat16",
6
+ "init_from_scratch": true,
7
+ "train_path": "/mloscratch/homes/navasard/data/fineweb_large/tokenized",
8
+ "val_path": null,
9
+ "max_seq_length": 8192,
10
+ "num_workers": 4,
11
+ "data_seed": 42,
12
+ "output_dir": "/mloscratch/homes/navasard/sparse/checkpoints/rcp_365m_dense_qkgainfp32_60b_seed42_20260927/run_20260927_230247",
13
+ "resume_from_checkpoint": null,
14
+ "force_new_run": false,
15
+ "num_epochs": 3,
16
+ "max_steps": 366211,
17
+ "per_device_batch_size": 1,
18
+ "gradient_accumulation_steps": 20,
19
+ "learning_rate": 0.0005,
20
+ "weight_decay": 0.01,
21
+ "warmup_steps": 750,
22
+ "lr_scheduler": "cosine",
23
+ "max_grad_norm": 1.0,
24
+ "save_steps": 5000,
25
+ "eval_steps": 1000,
26
+ "eval_batches": 10,
27
+ "logging_steps": 100,
28
+ "seed": 42,
29
+ "verbose": false,
30
+ "checkpoint_activations": false,
31
+ "resume_micro_step_override": null,
32
+ "strategy": "ddp",
33
+ "mixed_precision": "bf16",
34
+ "wandb_enabled": false,
35
+ "wandb_project": "stochastic_sparsity",
36
+ "wandb_name": "RCP 365m dense qkgainfp32 seed42 60B single A100 20260927",
37
+ "wandb_tags": [
38
+ "final_20260924",
39
+ "part_a",
40
+ "dense",
41
+ "qkgainfp32",
42
+ "seed42"
43
+ ],
44
+ "hidden_size": 768,
45
+ "intermediate_size": 3072,
46
+ "num_attention_heads": 6,
47
+ "num_key_value_heads": 2,
48
+ "num_hidden_layers": 28,
49
+ "head_dim": null,
50
+ "attention_dropout": null,
51
+ "rope_theta": 1000000.0,
52
+ "rope_train_position_scale_set": null,
53
+ "positional": "rope",
54
+ "qk_norm": "on",
55
+ "qk_gain_fp32": true,
56
+ "attention_type": "dense",
57
+ "sparse_block_size": 128,
58
+ "sparse_num_random_blocks": 1,
59
+ "sparse_mask_pool_size": 1000,
60
+ "sparse_val_dense_compare": false,
61
+ "sparse_layer_indices": null,
62
+ "sparse_mask_cache_dir": null,
63
+ "sparse_mask_seed": 0,
64
+ "sparse_mixed_nrb_set": null,
65
+ "dense_mode": false,
66
+ "dense_step_intervals": null
67
+ }
68
+ Loading tokenizer from ../../qwen3_06b_base...
69
+ Initializing model from scratch (random weights)...
70
+ Checkpoint activations: False
71
+
72
+
73
+ ================================================================================
74
+ MODEL ARCHITECTURE
75
+ ================================================================================
76
+ Model config:
77
+ vocab_size: 151936
78
+ hidden_size: 768
79
+ num_hidden_layers: 28
80
+ num_attention_heads: 6
81
+ num_key_value_heads: 2
82
+ head_dim: 128
83
+ intermediate_size: 3072
84
+ max_position_embeddings: 32768
85
+ rope_theta: 1000000.0
86
+ rope_train_position_scale_set: None
87
+ attention_type: dense
88
+
89
+ Parameter count:
90
+ Total parameters: 358,958,848
91
+ Trainable parameters: 358,958,848
92
+ Non-trainable parameters: 0
93
+ Model size (BF16): 0.72 GB
94
+ ================================================================================
95
+
96
+ Traceback (most recent call last):
97
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/getpass.py", line 173, in getuser
98
+ return pwd.getpwuid(os.getuid())[0]
99
+ ~~~~~~~~~~~~^^^^^^^^^^^^^
100
+ KeyError: 'getpwuid(): uid not found: 285818'
101
+
102
+ The above exception was the direct cause of the following exception:
103
+
104
+ Traceback (most recent call last):
105
+ File "/mloscratch/homes/navasard/sparse/SparseAtt/train.py", line 1593, in <module>
106
+ main()
107
+ ~~~~^^
108
+ File "/mloscratch/homes/navasard/sparse/SparseAtt/train.py", line 1590, in main
109
+ train(config)
110
+ ~~~~~^^^^^^^^
111
+ File "/mloscratch/homes/navasard/sparse/SparseAtt/train.py", line 1158, in train
112
+ model = torch.compile(model)
113
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/__init__.py", line 2758, in compile
114
+ return torch._dynamo.optimize(
115
+ ~~~~~~~~~~~~~~~~~~~~~~^
116
+ backend=backend,
117
+ ^^^^^^^^^^^^^^^^
118
+ ...<3 lines>...
119
+ guard_filter_fn=guard_filter_fn,
120
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
121
+ )(model) # type: ignore[return-value]
122
+ ^
123
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/eval_frame.py", line 1488, in optimize
124
+ return _optimize(rebuild_ctx, *args, **kwargs)
125
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/eval_frame.py", line 1564, in _optimize
126
+ backend = get_compiler_fn(backend)
127
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/eval_frame.py", line 1325, in get_compiler_fn
128
+ from .repro.after_dynamo import wrap_backend_debug
129
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/repro/after_dynamo.py", line 33, in <module>
130
+ from torch._dynamo.debug_utils import (
131
+ ...<15 lines>...
132
+ )
133
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/debug_utils.py", line 43, in <module>
134
+ from torch._dynamo.testing import rand_strided
135
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/testing.py", line 33, in <module>
136
+ from torch._dynamo.backends.debugging import aot_eager
137
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_dynamo/backends/debugging.py", line 34, in <module>
138
+ from functorch.compile import min_cut_rematerialization_partition
139
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/functorch/compile/__init__.py", line 2, in <module>
140
+ from torch._functorch.aot_autograd import (
141
+ ...<10 lines>...
142
+ )
143
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_functorch/aot_autograd.py", line 38, in <module>
144
+ from ._aot_autograd.autograd_cache import ( # noqa: F401
145
+ ...<4 lines>...
146
+ )
147
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_functorch/_aot_autograd/autograd_cache.py", line 27, in <module>
148
+ from torch._inductor.codecache import (
149
+ ...<11 lines>...
150
+ )
151
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_inductor/codecache.py", line 2753, in <module>
152
+ _HEADER_DIR = os.path.join(default_cache_dir(), "precompiled_headers")
153
+ ~~~~~~~~~~~~~~~~~^^
154
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/site-packages/torch/_inductor/runtime/cache_dir_utils.py", line 23, in default_cache_dir
155
+ sanitized_username = re.sub(r'[\\/:*?"<>|]', "_", getpass.getuser())
156
+ ~~~~~~~~~~~~~~~^^
157
+ File "/mloscratch/homes/navasard/conda/lib/python3.13/getpass.py", line 175, in getuser
158
+ raise OSError('No username set in the environment') from e
159
+ OSError: No username set in the environment
160
+ New run: Checkpoints will be saved to /mloscratch/homes/navasard/sparse/checkpoints/rcp_365m_dense_qkgainfp32_60b_seed42_20260927/run_20260927_230351
161
+ Running config:
162
+ {
163
+ "model_path": "../../qwen3_06b_base",
164
+ "model_dtype": "bfloat16",
165
+ "init_from_scratch": true,
166
+ "train_path": "/mloscratch/homes/navasard/data/fineweb_large/tokenized",
167
+ "val_path": null,
168
+ "max_seq_length": 8192,
169
+ "num_workers": 4,
170
+ "data_seed": 42,
171
+ "output_dir": "/mloscratch/homes/navasard/sparse/checkpoints/rcp_365m_dense_qkgainfp32_60b_seed42_20260927/run_20260927_230351",
172
+ "resume_from_checkpoint": null,
173
+ "force_new_run": false,
174
+ "num_epochs": 3,
175
+ "max_steps": 366211,
176
+ "per_device_batch_size": 1,
177
+ "gradient_accumulation_steps": 20,
178
+ "learning_rate": 0.0005,
179
+ "weight_decay": 0.01,
180
+ "warmup_steps": 750,
181
+ "lr_scheduler": "cosine",
182
+ "max_grad_norm": 1.0,
183
+ "save_steps": 5000,
184
+ "eval_steps": 1000,
185
+ "eval_batches": 10,
186
+ "logging_steps": 100,
187
+ "seed": 42,
188
+ "verbose": false,
189
+ "checkpoint_activations": false,
190
+ "resume_micro_step_override": null,
191
+ "strategy": "ddp",
192
+ "mixed_precision": "bf16",
193
+ "wandb_enabled": false,
194
+ "wandb_project": "stochastic_sparsity",
195
+ "wandb_name": "RCP 365m dense qkgainfp32 seed42 60B single A100 20260927",
196
+ "wandb_tags": [
197
+ "final_20260924",
198
+ "part_a",
199
+ "dense",
200
+ "qkgainfp32",
201
+ "seed42"
202
+ ],
203
+ "hidden_size": 768,
204
+ "intermediate_size": 3072,
205
+ "num_attention_heads": 6,
206
+ "num_key_value_heads": 2,
207
+ "num_hidden_layers": 28,
208
+ "head_dim": null,
209
+ "attention_dropout": null,
210
+ "rope_theta": 1000000.0,
211
+ "rope_train_position_scale_set": null,
212
+ "positional": "rope",
213
+ "qk_norm": "on",
214
+ "qk_gain_fp32": true,
215
+ "attention_type": "dense",
216
+ "sparse_block_size": 128,
217
+ "sparse_num_random_blocks": 1,
218
+ "sparse_mask_pool_size": 1000,
219
+ "sparse_val_dense_compare": false,
220
+ "sparse_layer_indices": null,
221
+ "sparse_mask_cache_dir": null,
222
+ "sparse_mask_seed": 0,
223
+ "sparse_mixed_nrb_set": null,
224
+ "dense_mode": false,
225
+ "dense_step_intervals": null
226
+ }
227
+ Loading tokenizer from ../../qwen3_06b_base...
228
+ Initializing model from scratch (random weights)...
229
+ Checkpoint activations: False
230
+
231
+
232
+ ================================================================================
233
+ MODEL ARCHITECTURE
234
+ ================================================================================
235
+ Model config:
236
+ vocab_size: 151936
237
+ hidden_size: 768
238
+ num_hidden_layers: 28
239
+ num_attention_heads: 6
240
+ num_key_value_heads: 2
241
+ head_dim: 128
242
+ intermediate_size: 3072
243
+ max_position_embeddings: 32768
244
+ rope_theta: 1000000.0
245
+ rope_train_position_scale_set: None
246
+ attention_type: dense
247
+
248
+ Parameter count:
249
+ Total parameters: 358,958,848
250
+ Trainable parameters: 358,958,848
251
+ Non-trainable parameters: 0
252
+ Model size (BF16): 0.72 GB
253
+ ================================================================================
254
+
255
+ Loading dataset from /mloscratch/homes/navasard/data/fineweb_large/tokenized...
256
+ Using pre-tokenized dataset (no runtime tokenization)
257
+ Loading pre-tokenized HF dataset from /mloscratch/homes/navasard/data/fineweb_large/tokenized...
258
+ Loaded 12748481 pre-tokenized examples (stored_len=2048, pack_factor=4, packed_examples=3187120)
259
+ Dataset split: 3027764 train, 159356 validation
260
+ DistributedSampler seed: 42 (run seed)
261
+ Training examples (packed, train split): 3027764
262
+ Validation examples (packed, val split): 159356
263
+ Per-device batch size: 1
264
+ World size (GPUs): 1
265
+ Gradient accumulation steps: 20
266
+ Effective batch size (seqs/step): 20
267
+ Sequence length: 8192
268
+ Tokens per optimizer step: 163,840
269
+ Micro-batches per epoch (per rank): 3027764
270
+ Optimizer steps per epoch: 151388
271
+ Total optimizer steps: 366211 (capped by max_steps; 2.42 epochs)
272
+ Starting training...
273
+ Switching attention mode for step 1: sparse_stochastic (configured sparse attention)
274
+ Step 100/366211 | Loss: 10.6766 | LR: 6.67e-05 | 4640.3ms/step | 4.3 samples/s
275
+ Step 200/366211 | Loss: 7.4739 | LR: 1.33e-04 | 3930.7ms/step | 5.1 samples/s
276
+ Step 300/366211 | Loss: 6.4732 | LR: 2.00e-04 | 3941.6ms/step | 5.1 samples/s
277
+ Step 400/366211 | Loss: 5.9900 | LR: 2.67e-04 | 3939.9ms/step | 5.1 samples/s
278
+ Step 500/366211 | Loss: 5.6358 | LR: 3.33e-04 | 3940.0ms/step | 5.1 samples/s
279
+ Step 600/366211 | Loss: 5.3014 | LR: 4.00e-04 | 4019.3ms/step | 5.0 samples/s
280
+ Step 700/366211 | Loss: 4.9687 | LR: 4.67e-04 | 3986.2ms/step | 5.0 samples/s
281
+ Step 800/366211 | Loss: 4.6597 | LR: 5.00e-04 | 3980.2ms/step | 5.0 samples/s
282
+ Step 900/366211 | Loss: 4.4402 | LR: 5.00e-04 | 3938.8ms/step | 5.1 samples/s
283
+ Step 1000/366211 | Loss: 4.2723 | LR: 5.00e-04 | 3939.1ms/step | 5.1 samples/s
284
+ Validation at step 1000: Loss = 4.2365, Perplexity = 69.17
285
+ Step 1100/366211 | Loss: 4.1459 | LR: 5.00e-04 | 4321.4ms/step | 4.6 samples/s
286
+ Step 1200/366211 | Loss: 4.0458 | LR: 5.00e-04 | 3947.4ms/step | 5.1 samples/s
287
+ Step 1300/366211 | Loss: 3.9735 | LR: 5.00e-04 | 3946.7ms/step | 5.1 samples/s
288
+ Step 1400/366211 | Loss: 3.8998 | LR: 5.00e-04 | 3946.1ms/step | 5.1 samples/s
289
+ Step 1500/366211 | Loss: 3.8672 | LR: 5.00e-04 | 3945.7ms/step | 5.1 samples/s
290
+ Step 1600/366211 | Loss: 3.8066 | LR: 5.00e-04 | 3944.2ms/step | 5.1 samples/s
291
+ Step 1700/366211 | Loss: 3.7503 | LR: 5.00e-04 | 3943.7ms/step | 5.1 samples/s
292
+ Step 1800/366211 | Loss: 3.7114 | LR: 5.00e-04 | 3945.0ms/step | 5.1 samples/s
293
+ Step 1900/366211 | Loss: 3.6941 | LR: 5.00e-04 | 3946.2ms/step | 5.1 samples/s
294
+ Step 2000/366211 | Loss: 3.6601 | LR: 5.00e-04 | 3944.8ms/step | 5.1 samples/s
295
+ Validation at step 2000: Loss = 3.6574, Perplexity = 38.76
296
+ Step 2100/366211 | Loss: 3.6219 | LR: 5.00e-04 | 4075.0ms/step | 4.9 samples/s
297
+ Step 2200/366211 | Loss: 3.6010 | LR: 5.00e-04 | 3947.5ms/step | 5.1 samples/s
298
+ Step 2300/366211 | Loss: 3.5732 | LR: 5.00e-04 | 3948.0ms/step | 5.1 samples/s
299
+ Step 2400/366211 | Loss: 3.5509 | LR: 5.00e-04 | 3947.7ms/step | 5.1 samples/s
300
+ Step 2500/366211 | Loss: 3.5410 | LR: 5.00e-04 | 3949.1ms/step | 5.1 samples/s
301
+ Step 2600/366211 | Loss: 3.5235 | LR: 5.00e-04 | 3951.8ms/step | 5.1 samples/s
302
+ Step 2700/366211 | Loss: 3.5097 | LR: 5.00e-04 | 3952.1ms/step | 5.1 samples/s
303
+ Step 2800/366211 | Loss: 3.4834 | LR: 5.00e-04 | 3945.9ms/step | 5.1 samples/s
304
+ Step 2900/366211 | Loss: 3.4633 | LR: 5.00e-04 | 3946.3ms/step | 5.1 samples/s
305
+ Step 3000/366211 | Loss: 3.4536 | LR: 5.00e-04 | 3944.8ms/step | 5.1 samples/s
306
+ Validation at step 3000: Loss = 3.4646, Perplexity = 31.96