rubentium commited on
Commit
be575d6
·
verified ·
1 Parent(s): c92459f

EPFL ALiBi and training provenance 851-900 of 1184

Browse files
Files changed (50) hide show
  1. epfl_final/train_logs/chain_next_40a.log +50 -0
  2. epfl_final/train_logs/chain_next_40b.log +54 -0
  3. epfl_final/train_logs/chain_next_80g.log +4 -0
  4. epfl_final/train_logs/chain_next_h100.log +7 -0
  5. epfl_final/train_logs/dense8k3b_60b.4gpu.lock +1 -0
  6. epfl_final/train_logs/dense8k3b_60b.4gpu.run.log +0 -0
  7. epfl_final/train_logs/dense8k3b_60b.4gpu.supervisor.log +0 -0
  8. epfl_final/train_logs/dense8k3b_60b.4gpu.watch.log +6 -0
  9. epfl_final/train_logs/dense8k3b_60b.lock +1 -0
  10. epfl_final/train_logs/dense_dropout_p28_8k365m_s42.run.log +264 -0
  11. epfl_final/train_logs/final_dense_ruler_retry.log +0 -0
  12. epfl_final/train_logs/final_eval_stack.supervisor.log +1 -0
  13. epfl_final/train_logs/final_eval_stack_recovery.log +4 -0
  14. epfl_final/train_logs/final_eval_stack_second_pod.log +88 -0
  15. epfl_final/train_logs/fixed_refresh_second_40gb.log +28 -0
  16. epfl_final/train_logs/m2d20_eval_watcher.log +176 -0
  17. epfl_final/train_logs/mixed8k3b_60b.4gpu.exact.lock +1 -0
  18. epfl_final/train_logs/mixed8k3b_60b.4gpu.exact.run.log +0 -0
  19. epfl_final/train_logs/mixed8k3b_60b.4gpu.exact.watch.log +2 -0
  20. epfl_final/train_logs/recover_final_eval_stack.sh +10 -0
  21. epfl_final/train_logs/recover_final_eval_stack.waiter.log +0 -0
  22. epfl_final/train_logs/recover_final_eval_stack_topk.sh +10 -0
  23. epfl_final/train_logs/recover_final_eval_stack_topk.waiter.log +0 -0
  24. epfl_final/train_logs/run_final_eval_stack_second_pod.sh +26 -0
  25. epfl_final/train_logs/scale3b_40g_a.log +25 -0
  26. epfl_final/train_logs/scale3b_40g_b.log +25 -0
  27. epfl_final/train_logs/scale3b_80g_c.log +25 -0
  28. epfl_final/train_logs/scale3b_a100_8k.log +110 -0
  29. epfl_final/train_logs/scale3b_eval_20260802.log +27 -0
  30. epfl_final/train_logs/scale3b_full_a100_20260804.log +4 -0
  31. epfl_final/train_logs/scale3b_gsm8k.log +0 -0
  32. epfl_final/train_logs/scale3b_gsm8k_all.log +7 -0
  33. epfl_final/train_logs/scale3b_h100_long.log +101 -0
  34. epfl_final/train_logs/scale3b_h1gpu.log +10 -0
  35. epfl_final/train_logs/scale3b_h2gpu.log +66 -0
  36. epfl_final/train_logs/scale3b_mixed_evals_20260804.log +29 -0
  37. epfl_final/train_logs/scale3b_recompile.log +0 -0
  38. epfl_final/train_logs/scale3b_topkfix.log +13 -0
  39. epfl_final/train_logs/wait_1p2b_then_365m_native30k.log +2 -0
  40. epfl_final/train_logs/wait_1p2b_then_365m_native30k.sh +67 -0
  41. epfl_final/train_logs/wait_1p2b_then_365m_native30k.supervisor.log +0 -0
  42. epfl_final/train_logs/wait_1p2b_then_dense_ruler_then_365m.log +2 -0
  43. epfl_final/train_logs/wait_1p2b_then_dense_ruler_then_365m.sh +69 -0
  44. epfl_final/train_logs/wait_1p2b_then_dense_ruler_then_365m.supervisor.log +0 -0
  45. epfl_final/train_logs/wait_random_ruler_then_1p2b.log +1 -0
  46. epfl_final/train_logs/wait_random_ruler_then_1p2b.sh +31 -0
  47. epfl_final/train_logs/watchdog_365m_native30k_exact.sh +130 -0
  48. epfl_final/train_logs/watchdog_3b_dense_4gpu_exact.sh +135 -0
  49. epfl_final/train_logs/watchdog_3b_dense_exact.sh +151 -0
  50. epfl_final/train_logs/watchdog_3b_mixed_4gpu_exact.sh +134 -0
epfl_final/train_logs/chain_next_40a.log ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_16k_sink_local_fineweb
2
+ START gpu1 3b_dense__ppl_16k_sliding_fineweb
3
+ START gpu2 3b_dense__ppl_16k_dense_fineweb
4
+ START gpu3 3b_dense__passkey_16k_random
5
+ DONE gpu1 3b_dense__ppl_16k_sliding_fineweb status=retrying
6
+ START gpu1 3b_mixed__ppl_16k_quest_fineweb
7
+ DONE gpu0 3b_dense__ppl_16k_sink_local_fineweb status=retrying
8
+ START gpu0 3b_mixed__ppl_16k_moba_fineweb
9
+ DONE gpu3 3b_dense__passkey_16k_random status=retrying
10
+ START gpu3 3b_mixed__ppl_16k_h2o_fineweb
11
+ DONE gpu2 3b_dense__ppl_16k_dense_fineweb status=complete
12
+ START gpu2 3b_mixed__ruler_random_niah_multikey_16k
13
+ DONE gpu0 3b_mixed__ppl_16k_moba_fineweb status=retrying
14
+ START gpu0 3b_mixed__efficiency_16k
15
+ DONE gpu1 3b_mixed__ppl_16k_quest_fineweb status=retrying
16
+ START gpu1 3b_dense__harness_gsm8k
17
+ DONE gpu1 3b_dense__harness_gsm8k status=retrying
18
+ START gpu1 3b_mixed__harness_arc_challenge
19
+ DONE gpu3 3b_mixed__ppl_16k_h2o_fineweb status=complete
20
+ START gpu3 3b_dense__ppl_8k_random_gutenberg
21
+ DONE gpu1 3b_mixed__harness_arc_challenge status=complete
22
+ START gpu1 3b_dense__ppl_8k_random_fwtail
23
+ DONE gpu3 3b_dense__ppl_8k_random_gutenberg status=complete
24
+ START gpu3 3b_dense__ppl_8k_topk_pg19
25
+ DONE gpu1 3b_dense__ppl_8k_random_fwtail status=complete
26
+ START gpu1 3b_dense__efficiency_8k
27
+ DONE gpu3 3b_dense__ppl_8k_topk_pg19 status=complete
28
+ START gpu3 3b_mixed__ppl_8k_random_pubmed
29
+ DONE gpu1 3b_dense__efficiency_8k status=complete
30
+ START gpu1 3b_mixed__ppl_8k_topk_fineweb
31
+ DONE gpu0 3b_mixed__efficiency_16k status=complete
32
+ START gpu0 3b_mixed__ppl_8k_topk_arxiv
33
+ DONE gpu2 3b_mixed__ruler_random_niah_multikey_16k status=complete
34
+ START gpu2 3b_dense__ppl_16k_sliding_fineweb
35
+ DONE gpu2 3b_dense__ppl_16k_sliding_fineweb status=failed
36
+ START gpu2 3b_dense__ppl_16k_sink_local_fineweb
37
+ DONE gpu2 3b_dense__ppl_16k_sink_local_fineweb status=failed
38
+ START gpu2 3b_dense__passkey_16k_random
39
+ DONE gpu2 3b_dense__passkey_16k_random status=failed
40
+ START gpu2 3b_mixed__ppl_16k_moba_fineweb
41
+ DONE gpu1 3b_mixed__ppl_8k_topk_fineweb status=complete
42
+ START gpu1 3b_mixed__ppl_16k_quest_fineweb
43
+ DONE gpu2 3b_mixed__ppl_16k_moba_fineweb status=failed
44
+ START gpu2 3b_dense__harness_gsm8k
45
+ DONE gpu2 3b_dense__harness_gsm8k status=failed
46
+ DONE gpu1 3b_mixed__ppl_16k_quest_fineweb status=failed
47
+ DONE gpu3 3b_mixed__ppl_8k_random_pubmed status=complete
48
+ DONE gpu0 3b_mixed__ppl_8k_topk_arxiv status=complete
49
+ finished complete=14/20 failed=6
50
+ Failed jobs: 3b_dense__ppl_16k_sink_local_fineweb, 3b_dense__ppl_16k_sliding_fineweb, 3b_dense__passkey_16k_random, 3b_mixed__ppl_16k_quest_fineweb, 3b_mixed__ppl_16k_moba_fineweb, 3b_dense__harness_gsm8k
epfl_final/train_logs/chain_next_40b.log ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_16k_quest_fineweb
2
+ START gpu1 3b_dense__ppl_16k_moba_fineweb
3
+ START gpu2 3b_dense__ppl_16k_h2o_fineweb
4
+ START gpu3 3b_dense__ruler_random_niah_multikey_16k
5
+ DONE gpu1 3b_dense__ppl_16k_moba_fineweb status=retrying
6
+ START gpu1 3b_dense__efficiency_16k
7
+ DONE gpu0 3b_dense__ppl_16k_quest_fineweb status=retrying
8
+ START gpu0 3b_mixed__ppl_16k_sink_local_fineweb
9
+ DONE gpu0 3b_mixed__ppl_16k_sink_local_fineweb status=retrying
10
+ START gpu0 3b_mixed__ppl_16k_sliding_fineweb
11
+ DONE gpu0 3b_mixed__ppl_16k_sliding_fineweb status=retrying
12
+ START gpu0 3b_mixed__ppl_16k_dense_fineweb
13
+ DONE gpu2 3b_dense__ppl_16k_h2o_fineweb status=complete
14
+ START gpu2 3b_mixed__passkey_16k_random
15
+ DONE gpu0 3b_mixed__ppl_16k_dense_fineweb status=complete
16
+ START gpu0 3b_dense__harness_mmlu
17
+ DONE gpu2 3b_mixed__passkey_16k_random status=retrying
18
+ START gpu2 3b_dense__harness_arc_challenge
19
+ DONE gpu2 3b_dense__harness_arc_challenge status=complete
20
+ START gpu2 3b_mixed__harness_mmlu
21
+ DONE gpu0 3b_dense__harness_mmlu status=complete
22
+ START gpu0 3b_mixed__harness_gsm8k
23
+ DONE gpu0 3b_mixed__harness_gsm8k status=retrying
24
+ START gpu0 3b_dense__ppl_8k_random_pubmed
25
+ DONE gpu2 3b_mixed__harness_mmlu status=complete
26
+ START gpu2 3b_dense__ppl_8k_topk_fineweb
27
+ DONE gpu2 3b_dense__ppl_8k_topk_fineweb status=complete
28
+ START gpu2 3b_dense__ppl_8k_topk_arxiv
29
+ DONE gpu0 3b_dense__ppl_8k_random_pubmed status=complete
30
+ START gpu0 3b_mixed__ppl_8k_random_gutenberg
31
+ DONE gpu2 3b_dense__ppl_8k_topk_arxiv status=complete
32
+ START gpu2 3b_mixed__ppl_8k_random_fwtail
33
+ DONE gpu1 3b_dense__efficiency_16k status=complete
34
+ START gpu1 3b_mixed__ppl_8k_topk_pg19
35
+ DONE gpu3 3b_dense__ruler_random_niah_multikey_16k status=complete
36
+ START gpu3 3b_mixed__efficiency_8k
37
+ DONE gpu1 3b_mixed__ppl_8k_topk_pg19 status=complete
38
+ START gpu1 3b_dense__ppl_16k_moba_fineweb
39
+ DONE gpu1 3b_dense__ppl_16k_moba_fineweb status=failed
40
+ START gpu1 3b_dense__ppl_16k_quest_fineweb
41
+ DONE gpu1 3b_dense__ppl_16k_quest_fineweb status=failed
42
+ START gpu1 3b_mixed__ppl_16k_sink_local_fineweb
43
+ DONE gpu1 3b_mixed__ppl_16k_sink_local_fineweb status=failed
44
+ START gpu1 3b_mixed__ppl_16k_sliding_fineweb
45
+ DONE gpu1 3b_mixed__ppl_16k_sliding_fineweb status=failed
46
+ START gpu1 3b_mixed__passkey_16k_random
47
+ DONE gpu1 3b_mixed__passkey_16k_random status=failed
48
+ START gpu1 3b_mixed__harness_gsm8k
49
+ DONE gpu1 3b_mixed__harness_gsm8k status=failed
50
+ DONE gpu0 3b_mixed__ppl_8k_random_gutenberg status=complete
51
+ DONE gpu2 3b_mixed__ppl_8k_random_fwtail status=complete
52
+ DONE gpu3 3b_mixed__efficiency_8k status=complete
53
+ finished complete=15/21 failed=6
54
+ Failed jobs: 3b_dense__ppl_16k_quest_fineweb, 3b_dense__ppl_16k_moba_fineweb, 3b_mixed__ppl_16k_sink_local_fineweb, 3b_mixed__ppl_16k_sliding_fineweb, 3b_mixed__passkey_16k_random, 3b_mixed__harness_gsm8k
epfl_final/train_logs/chain_next_80g.log ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_30k_random_gutenberg
2
+ START gpu1 3b_dense__ruler_random_niah_multikey_30k
3
+ START gpu2 3b_dense__passkey_30k_random
4
+ START gpu3 3b_dense__efficiency_30k
epfl_final/train_logs/chain_next_h100.log ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_30k_random_pubmed
2
+ DONE gpu0 3b_dense__ppl_30k_random_pubmed status=complete
3
+ START gpu0 3b_mixed__ppl_30k_random_gutenberg
4
+ DONE gpu0 3b_mixed__ppl_30k_random_gutenberg status=complete
5
+ START gpu0 3b_mixed__longbench_qasper
6
+ DONE gpu0 3b_mixed__longbench_qasper status=complete
7
+ finished complete=4/4 failed=0
epfl_final/train_logs/dense8k3b_60b.4gpu.lock ADDED
@@ -0,0 +1 @@
 
 
1
+ 137
epfl_final/train_logs/dense8k3b_60b.4gpu.run.log ADDED
The diff for this file is too large to render. See raw diff
 
epfl_final/train_logs/dense8k3b_60b.4gpu.supervisor.log ADDED
File without changes
epfl_final/train_logs/dense8k3b_60b.4gpu.watch.log ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ 2026-07-26T18:19:29Z watchdog start pid=176 latest_step=63500
2
+ 2026-07-26T18:19:29Z launch checkpoint=/mloscratch/homes/navasard/sparse/checkpoints/l8k3b_dense_60b/run_20260720_074219/checkpoint-63500 GPUs=0,1,2,3 nproc=4
3
+ 2026-07-27T06:24:00Z watchdog start pid=138 latest_step=69750
4
+ 2026-07-27T06:24:00Z launch checkpoint=/mloscratch/homes/navasard/sparse/checkpoints/l8k3b_dense_60b/run_20260720_074219/checkpoint-69750 GPUs=0,1,2,3 nproc=4
5
+ 2026-07-27T16:47:09Z watchdog start pid=137 latest_step=72500
6
+ 2026-07-27T16:47:10Z launch checkpoint=/mloscratch/homes/navasard/sparse/checkpoints/l8k3b_dense_60b/run_20260720_074219/checkpoint-72500 GPUs=0,1,2,3 nproc=4
epfl_final/train_logs/dense8k3b_60b.lock ADDED
@@ -0,0 +1 @@
 
 
1
+ 298
epfl_final/train_logs/dense_dropout_p28_8k365m_s42.run.log ADDED
@@ -0,0 +1,264 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ nohup: ignoring input
2
+ New run: Checkpoints will be saved to /mloscratch/homes/navasard/sparse/checkpoints/l8k365m_dense_dropout_p28_seed42/run_20260819_050018
3
+ Running config:
4
+ {
5
+ "model_path": "/mloscratch/homes/navasard/qwen3_06b_base",
6
+ "model_dtype": "bfloat16",
7
+ "init_from_scratch": true,
8
+ "train_path": "/mloscratch/homes/navasard/data/fineweb_large/tokenized",
9
+ "val_path": null,
10
+ "max_seq_length": 8192,
11
+ "num_workers": 8,
12
+ "output_dir": "/mloscratch/homes/navasard/sparse/checkpoints/l8k365m_dense_dropout_p28_seed42/run_20260819_050018",
13
+ "resume_from_checkpoint": null,
14
+ "force_new_run": true,
15
+ "num_epochs": 1,
16
+ "max_steps": 44000,
17
+ "per_device_batch_size": 2,
18
+ "gradient_accumulation_steps": 10,
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": 1000,
25
+ "eval_steps": 1000,
26
+ "eval_batches": 50,
27
+ "logging_steps": 10,
28
+ "seed": 42,
29
+ "verbose": true,
30
+ "checkpoint_activations": false,
31
+ "strategy": "ddp",
32
+ "mixed_precision": "bf16",
33
+ "wandb_enabled": false,
34
+ "wandb_project": "stochastic_sparsity",
35
+ "wandb_name": "l8k365m_dense_dropout_p28_seed42",
36
+ "wandb_tags": [
37
+ "qwen3",
38
+ "365m",
39
+ "8k",
40
+ "scaleladder",
41
+ "dense"
42
+ ],
43
+ "hidden_size": 768,
44
+ "intermediate_size": 3072,
45
+ "num_attention_heads": 6,
46
+ "num_key_value_heads": 2,
47
+ "num_hidden_layers": 28,
48
+ "head_dim": null,
49
+ "attention_dropout": 0.28,
50
+ "attention_type": "sparse_stochastic",
51
+ "sparse_block_size": 128,
52
+ "sparse_num_random_blocks": 31,
53
+ "sparse_mask_pool_size": 1,
54
+ "sparse_val_dense_compare": false,
55
+ "sparse_layer_indices": null,
56
+ "sparse_mask_cache_dir": null,
57
+ "sparse_mask_seed": 0,
58
+ "sparse_mixed_nrb_set": null,
59
+ "dense_mode": true,
60
+ "dense_step_intervals": null
61
+ }
62
+ Loading tokenizer from /mloscratch/homes/navasard/qwen3_06b_base...
63
+ Initializing model from scratch (random weights)...
64
+ Checkpoint activations: False
65
+ dense_mode=True: sparse attention layers will use standard causal SDPA.
66
+
67
+
68
+ ================================================================================
69
+ MODEL ARCHITECTURE
70
+ ================================================================================
71
+ Model config:
72
+ vocab_size: 151936
73
+ hidden_size: 768
74
+ num_hidden_layers: 28
75
+ num_attention_heads: 6
76
+ num_key_value_heads: 2
77
+ head_dim: 128
78
+ intermediate_size: 3072
79
+ max_position_embeddings: 32768
80
+ rope_theta: 1000000
81
+ attention_type: sparse_stochastic
82
+ sparse_block_size: 128
83
+ sparse_num_random_blocks: 31
84
+ sparse_mask_pool_size: 1
85
+ sparse_max_seq_length: 8192
86
+
87
+ Parameter count:
88
+ Total parameters: 358,958,848
89
+ Trainable parameters: 358,958,848
90
+ Non-trainable parameters: 0
91
+ Model size (BF16): 0.72 GB
92
+
93
+ --------------------------------------------------------------------------------
94
+ LAYER-BY-LAYER SUMMARY
95
+ --------------------------------------------------------------------------------
96
+ ================================================================================================================================================================
97
+ Layer (type:depth-idx) Input Shape Output Shape Param # Trainable
98
+ ================================================================================================================================================================
99
+ Qwen3ForCausalLM [2, 8192] -- -- True
100
+ ├─Qwen3Model: 1-1 -- [2, 8192, 768] -- True
101
+ │ └─Embedding: 2-1 [2, 8192] [2, 8192, 768] 116,686,848 True
102
+ │ └─ModuleList: 2-2 -- -- -- True
103
+ │ │ └─Qwen3DecoderLayer: 3-1 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
104
+ │ │ └─Qwen3DecoderLayer: 3-2 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
105
+ │ │ └─Qwen3DecoderLayer: 3-3 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
106
+ │ │ └─Qwen3DecoderLayer: 3-4 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
107
+ │ │ └─Qwen3DecoderLayer: 3-5 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
108
+ │ │ └─Qwen3DecoderLayer: 3-6 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
109
+ │ │ └─Qwen3DecoderLayer: 3-7 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
110
+ │ │ └─Qwen3DecoderLayer: 3-8 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
111
+ │ │ └─Qwen3DecoderLayer: 3-9 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
112
+ │ │ └─Qwen3DecoderLayer: 3-10 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
113
+ │ │ └─Qwen3DecoderLayer: 3-11 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
114
+ │ │ └─Qwen3DecoderLayer: 3-12 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
115
+ │ │ └─Qwen3DecoderLayer: 3-13 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
116
+ │ │ └─Qwen3DecoderLayer: 3-14 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
117
+ │ │ └─Qwen3DecoderLayer: 3-15 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
118
+ │ │ └─Qwen3DecoderLayer: 3-16 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
119
+ │ │ └─Qwen3DecoderLayer: 3-17 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
120
+ │ │ └─Qwen3DecoderLayer: 3-18 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
121
+ │ │ └─Qwen3DecoderLayer: 3-19 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
122
+ │ │ └─Qwen3DecoderLayer: 3-20 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
123
+ │ │ └─Qwen3DecoderLayer: 3-21 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
124
+ │ │ └─Qwen3DecoderLayer: 3-22 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
125
+ │ │ └─Qwen3DecoderLayer: 3-23 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
126
+ │ │ └─Qwen3DecoderLayer: 3-24 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
127
+ │ │ └─Qwen3DecoderLayer: 3-25 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
128
+ │ │ └─Qwen3DecoderLayer: 3-26 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
129
+ │ │ └─Qwen3DecoderLayer: 3-27 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
130
+ │ │ └─Qwen3DecoderLayer: 3-28 [2, 8192, 768] [2, 8192, 768] 8,652,544 True
131
+ │ └─Qwen3RMSNorm: 2-3 [2, 8192, 768] [2, 8192, 768] 768 True
132
+ ├─Linear: 1-2 [2, 8192, 768] [2, 8192, 151936] 116,686,848 True
133
+ ================================================================================================================================================================
134
+ Total params: 475,645,696
135
+ Trainable params: 475,645,696
136
+ Non-trainable params: 0
137
+ Total mult-adds (Units.MEGABYTES): 951.29
138
+ ================================================================================================================================================================
139
+ Input size (MB): 0.13
140
+ Forward/backward pass size (MB): 31197.23
141
+ Params size (MB): 951.29
142
+ Estimated Total Size (MB): 32148.66
143
+ ================================================================================================================================================================
144
+ NOTE: torchinfo double-counts tied embed_tokens/lm_head weight (116,686,848 params). True unique parameter count: 358,958,848 (359.0M)
145
+ ================================================================================
146
+
147
+ Loading dataset from /mloscratch/homes/navasard/data/fineweb_large/tokenized...
148
+ Using pre-tokenized dataset (no runtime tokenization)
149
+ Loading pre-tokenized HF dataset from /mloscratch/homes/navasard/data/fineweb_large/tokenized...
150
+ Loaded 12748481 pre-tokenized examples (stored_len=2048, pack_factor=4, packed_examples=3187120)
151
+ Dataset split: 3027764 train, 159356 validation
152
+ Training examples (packed, train split): 3027764
153
+ Validation examples (packed, val split): 159356
154
+ Per-device batch size: 2
155
+ World size (GPUs): 1
156
+ Gradient accumulation steps: 10
157
+ Effective batch size (seqs/step): 20
158
+ Sequence length: 8192
159
+ Tokens per optimizer step: 163,840
160
+ Micro-batches per epoch (per rank): 1513882
161
+ Optimizer steps per epoch: 151388
162
+ Total optimizer steps: 44000 (capped by max_steps; 0.29 epochs)
163
+ Starting training...
164
+ Switching attention mode for step 1: dense (dense step interval)
165
+ Step 10/44000 | Loss: 12.0380 | LR: 6.67e-06 | 7516.2ms/step | 2.7 samples/s
166
+ Step 20/44000 | Loss: 11.9235 | LR: 1.33e-05 | 1552.6ms/step | 12.9 samples/s
167
+ Step 30/44000 | Loss: 11.5564 | LR: 2.00e-05 | 1550.7ms/step | 12.9 samples/s
168
+ Step 40/44000 | Loss: 11.0157 | LR: 2.67e-05 | 1546.6ms/step | 12.9 samples/s
169
+ Step 50/44000 | Loss: 10.7348 | LR: 3.33e-05 | 1546.9ms/step | 12.9 samples/s
170
+ Step 60/44000 | Loss: 10.4908 | LR: 4.00e-05 | 1542.1ms/step | 13.0 samples/s
171
+ Step 70/44000 | Loss: 10.2555 | LR: 4.67e-05 | 1538.2ms/step | 13.0 samples/s
172
+ Step 80/44000 | Loss: 9.9557 | LR: 5.33e-05 | 1539.3ms/step | 13.0 samples/s
173
+ Step 90/44000 | Loss: 9.5986 | LR: 6.00e-05 | 1541.3ms/step | 13.0 samples/s
174
+ Step 100/44000 | Loss: 9.1628 | LR: 6.67e-05 | 1539.7ms/step | 13.0 samples/s
175
+ Step 110/44000 | Loss: 8.6348 | LR: 7.33e-05 | 1542.2ms/step | 13.0 samples/s
176
+ Step 120/44000 | Loss: 8.1722 | LR: 8.00e-05 | 1544.1ms/step | 13.0 samples/s
177
+ Step 130/44000 | Loss: 7.7848 | LR: 8.67e-05 | 1541.4ms/step | 13.0 samples/s
178
+ Step 140/44000 | Loss: 7.5482 | LR: 9.33e-05 | 1542.7ms/step | 13.0 samples/s
179
+ Step 150/44000 | Loss: 7.3626 | LR: 1.00e-04 | 1549.9ms/step | 12.9 samples/s
180
+ Step 160/44000 | Loss: 7.2670 | LR: 1.07e-04 | 1547.2ms/step | 12.9 samples/s
181
+ Step 170/44000 | Loss: 7.1529 | LR: 1.13e-04 | 1548.5ms/step | 12.9 samples/s
182
+ Step 180/44000 | Loss: 7.0493 | LR: 1.20e-04 | 1549.7ms/step | 12.9 samples/s
183
+ Step 190/44000 | Loss: 6.9451 | LR: 1.27e-04 | 1550.4ms/step | 12.9 samples/s
184
+ Step 200/44000 | Loss: 6.8730 | LR: 1.33e-04 | 1549.7ms/step | 12.9 samples/s
185
+ Step 210/44000 | Loss: 6.8011 | LR: 1.40e-04 | 1550.1ms/step | 12.9 samples/s
186
+ Step 220/44000 | Loss: 6.7063 | LR: 1.47e-04 | 1554.3ms/step | 12.9 samples/s
187
+ Step 230/44000 | Loss: 6.6145 | LR: 1.53e-04 | 1552.0ms/step | 12.9 samples/s
188
+ Step 240/44000 | Loss: 6.5540 | LR: 1.60e-04 | 1548.5ms/step | 12.9 samples/s
189
+ Step 250/44000 | Loss: 6.4658 | LR: 1.67e-04 | 1551.6ms/step | 12.9 samples/s
190
+ Step 260/44000 | Loss: 6.4383 | LR: 1.73e-04 | 1552.6ms/step | 12.9 samples/s
191
+ Step 270/44000 | Loss: 6.3779 | LR: 1.80e-04 | 1552.4ms/step | 12.9 samples/s
192
+ Step 280/44000 | Loss: 6.3448 | LR: 1.87e-04 | 1551.1ms/step | 12.9 samples/s
193
+ Step 290/44000 | Loss: 6.3188 | LR: 1.93e-04 | 1554.6ms/step | 12.9 samples/s
194
+ Step 300/44000 | Loss: 6.2472 | LR: 2.00e-04 | 1553.2ms/step | 12.9 samples/s
195
+ Step 310/44000 | Loss: 6.2184 | LR: 2.07e-04 | 1551.2ms/step | 12.9 samples/s
196
+ Step 320/44000 | Loss: 6.1729 | LR: 2.13e-04 | 1556.8ms/step | 12.8 samples/s
197
+ Step 330/44000 | Loss: 6.1101 | LR: 2.20e-04 | 1550.7ms/step | 12.9 samples/s
198
+ Step 340/44000 | Loss: 6.1011 | LR: 2.27e-04 | 1550.6ms/step | 12.9 samples/s
199
+ Step 350/44000 | Loss: 6.0300 | LR: 2.33e-04 | 1554.0ms/step | 12.9 samples/s
200
+ Step 360/44000 | Loss: 5.9983 | LR: 2.40e-04 | 1557.3ms/step | 12.8 samples/s
201
+ Step 370/44000 | Loss: 5.9654 | LR: 2.47e-04 | 1555.2ms/step | 12.9 samples/s
202
+ Step 380/44000 | Loss: 5.9521 | LR: 2.53e-04 | 1554.6ms/step | 12.9 samples/s
203
+ Step 390/44000 | Loss: 5.8724 | LR: 2.60e-04 | 1556.4ms/step | 12.9 samples/s
204
+ Step 400/44000 | Loss: 5.8782 | LR: 2.67e-04 | 1554.9ms/step | 12.9 samples/s
205
+ Step 410/44000 | Loss: 5.8329 | LR: 2.73e-04 | 1554.3ms/step | 12.9 samples/s
206
+ Step 420/44000 | Loss: 5.8467 | LR: 2.80e-04 | 1556.1ms/step | 12.9 samples/s
207
+ Step 430/44000 | Loss: 5.7758 | LR: 2.87e-04 | 1551.8ms/step | 12.9 samples/s
208
+ Step 440/44000 | Loss: 5.7480 | LR: 2.93e-04 | 1553.4ms/step | 12.9 samples/s
209
+ Step 450/44000 | Loss: 5.7085 | LR: 3.00e-04 | 1555.4ms/step | 12.9 samples/s
210
+ Step 460/44000 | Loss: 5.6438 | LR: 3.07e-04 | 1556.1ms/step | 12.9 samples/s
211
+ Step 470/44000 | Loss: 5.6532 | LR: 3.13e-04 | 1552.9ms/step | 12.9 samples/s
212
+ Step 480/44000 | Loss: 5.6041 | LR: 3.20e-04 | 1552.4ms/step | 12.9 samples/s
213
+ Step 490/44000 | Loss: 5.5504 | LR: 3.27e-04 | 1556.9ms/step | 12.8 samples/s
214
+ Step 500/44000 | Loss: 5.5396 | LR: 3.33e-04 | 1556.0ms/step | 12.9 samples/s
215
+ Step 510/44000 | Loss: 5.5076 | LR: 3.40e-04 | 1551.9ms/step | 12.9 samples/s
216
+ Step 520/44000 | Loss: 5.4557 | LR: 3.47e-04 | 1555.6ms/step | 12.9 samples/s
217
+ Step 530/44000 | Loss: 5.4839 | LR: 3.53e-04 | 1554.3ms/step | 12.9 samples/s
218
+ Step 540/44000 | Loss: 5.4061 | LR: 3.60e-04 | 1553.5ms/step | 12.9 samples/s
219
+ Step 550/44000 | Loss: 5.3732 | LR: 3.67e-04 | 1551.9ms/step | 12.9 samples/s
220
+ Step 560/44000 | Loss: 5.3514 | LR: 3.73e-04 | 1558.7ms/step | 12.8 samples/s
221
+ Step 570/44000 | Loss: 5.3378 | LR: 3.80e-04 | 1554.1ms/step | 12.9 samples/s
222
+ Step 580/44000 | Loss: 5.3023 | LR: 3.87e-04 | 1552.0ms/step | 12.9 samples/s
223
+ Step 590/44000 | Loss: 5.2596 | LR: 3.93e-04 | 1557.8ms/step | 12.8 samples/s
224
+ Step 600/44000 | Loss: 5.2411 | LR: 4.00e-04 | 1555.5ms/step | 12.9 samples/s
225
+ Step 610/44000 | Loss: 5.2107 | LR: 4.07e-04 | 1552.6ms/step | 12.9 samples/s
226
+ Step 620/44000 | Loss: 5.2134 | LR: 4.13e-04 | 1556.1ms/step | 12.9 samples/s
227
+ Step 630/44000 | Loss: 5.1294 | LR: 4.20e-04 | 1559.1ms/step | 12.8 samples/s
228
+ Step 640/44000 | Loss: 5.1038 | LR: 4.27e-04 | 1554.2ms/step | 12.9 samples/s
229
+ Step 650/44000 | Loss: 5.0924 | LR: 4.33e-04 | 1551.9ms/step | 12.9 samples/s
230
+ Step 660/44000 | Loss: 5.0770 | LR: 4.40e-04 | 1556.0ms/step | 12.9 samples/s
231
+ Step 670/44000 | Loss: 5.0443 | LR: 4.47e-04 | 1552.8ms/step | 12.9 samples/s
232
+ Step 680/44000 | Loss: 5.0162 | LR: 4.53e-04 | 1552.9ms/step | 12.9 samples/s
233
+ Step 690/44000 | Loss: 4.9881 | LR: 4.60e-04 | 1554.0ms/step | 12.9 samples/s
234
+ Step 700/44000 | Loss: 4.9696 | LR: 4.67e-04 | 1555.3ms/step | 12.9 samples/s
235
+ Step 710/44000 | Loss: 4.9239 | LR: 4.73e-04 | 1553.6ms/step | 12.9 samples/s
236
+ Step 720/44000 | Loss: 4.8652 | LR: 4.80e-04 | 1554.2ms/step | 12.9 samples/s
237
+ Step 730/44000 | Loss: 4.8597 | LR: 4.87e-04 | 1557.4ms/step | 12.8 samples/s
238
+ Step 740/44000 | Loss: 4.8128 | LR: 4.93e-04 | 1552.1ms/step | 12.9 samples/s
239
+ Step 750/44000 | Loss: 4.8360 | LR: 5.00e-04 | 1549.2ms/step | 12.9 samples/s
240
+ Step 760/44000 | Loss: 4.8008 | LR: 5.00e-04 | 1554.8ms/step | 12.9 samples/s
241
+ Step 770/44000 | Loss: 4.7423 | LR: 5.00e-04 | 1556.1ms/step | 12.9 samples/s
242
+ Step 780/44000 | Loss: 4.7364 | LR: 5.00e-04 | 1553.4ms/step | 12.9 samples/s
243
+ Step 790/44000 | Loss: 4.7127 | LR: 5.00e-04 | 1554.6ms/step | 12.9 samples/s
244
+ Step 800/44000 | Loss: 4.6760 | LR: 5.00e-04 | 1554.0ms/step | 12.9 samples/s
245
+ Step 810/44000 | Loss: 4.6500 | LR: 5.00e-04 | 1555.8ms/step | 12.9 samples/s
246
+ Step 820/44000 | Loss: 4.6275 | LR: 5.00e-04 | 1554.6ms/step | 12.9 samples/s
247
+ Step 830/44000 | Loss: 4.6135 | LR: 5.00e-04 | 1555.4ms/step | 12.9 samples/s
248
+ Step 840/44000 | Loss: 4.5838 | LR: 5.00e-04 | 1548.0ms/step | 12.9 samples/s
249
+ Step 850/44000 | Loss: 4.5658 | LR: 5.00e-04 | 1548.6ms/step | 12.9 samples/s
250
+ Step 860/44000 | Loss: 4.6017 | LR: 5.00e-04 | 1557.8ms/step | 12.8 samples/s
251
+ Step 870/44000 | Loss: 4.5139 | LR: 5.00e-04 | 1556.7ms/step | 12.8 samples/s
252
+ Step 880/44000 | Loss: 4.5197 | LR: 5.00e-04 | 1553.9ms/step | 12.9 samples/s
253
+ Step 890/44000 | Loss: 4.4878 | LR: 5.00e-04 | 1553.5ms/step | 12.9 samples/s
254
+ Step 900/44000 | Loss: 4.4665 | LR: 5.00e-04 | 1552.9ms/step | 12.9 samples/s
255
+ Step 910/44000 | Loss: 4.4442 | LR: 5.00e-04 | 1555.5ms/step | 12.9 samples/s
256
+ Step 920/44000 | Loss: 4.4388 | LR: 5.00e-04 | 1552.5ms/step | 12.9 samples/s
257
+ Step 930/44000 | Loss: 4.4107 | LR: 5.00e-04 | 1555.1ms/step | 12.9 samples/s
258
+ Step 940/44000 | Loss: 4.4009 | LR: 5.00e-04 | 1556.2ms/step | 12.9 samples/s
259
+ Step 950/44000 | Loss: 4.3908 | LR: 5.00e-04 | 1554.4ms/step | 12.9 samples/s
260
+ Step 960/44000 | Loss: 4.3468 | LR: 5.00e-04 | 1552.0ms/step | 12.9 samples/s
261
+ Step 970/44000 | Loss: 4.3764 | LR: 5.00e-04 | 1548.9ms/step | 12.9 samples/s
262
+ Step 980/44000 | Loss: 4.3561 | LR: 5.00e-04 | 1550.7ms/step | 12.9 samples/s
263
+ Step 990/44000 | Loss: 4.3357 | LR: 5.00e-04 | 1555.0ms/step | 12.9 samples/s
264
+ Step 1000/44000 | Loss: 4.3373 | LR: 5.00e-04 | 1550.3ms/step | 12.9 samples/s
epfl_final/train_logs/final_dense_ruler_retry.log ADDED
File without changes
epfl_final/train_logs/final_eval_stack.supervisor.log ADDED
@@ -0,0 +1 @@
 
 
1
+ 2026-07-26T18:09:31Z starting remaining Dense/Resampled endpoint refresh
epfl_final/train_logs/final_eval_stack_recovery.log ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ 2026-07-26T18:55:28Z starting remaining Dense/Resampled endpoint refresh
2
+ 2026-07-26T23:49:39Z starting 15 missing 365M content-top-k jobs
3
+ 2026-07-27T00:03:02Z starting Fixed checkpoint-50,462 comprehensive refresh
4
+ Terminated
epfl_final/train_logs/final_eval_stack_second_pod.log ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ 2026-07-26T21:28:16Z starting shared endpoint queue on second pod
2
+ staged jobs=77 counts={'MAINTRACK_20260722': 24, 'L1_2B_REMAINING': 30, 'L1_2B_DOWNSTREAM': 14, 'POSITION_HELDOUT_1P2B_20260725': 9} missing_paths=0
3
+ [21:28:16] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb attempt=1
4
+ [21:28:16] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 attempt=1
5
+ [21:28:17] START gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv attempt=1
6
+ [21:28:17] START gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb attempt=1
7
+ [21:28:27] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb rc=1 output=False
8
+ [21:28:27] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 rc=1 output=False
9
+ [21:28:27] DONE gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv rc=1 output=False
10
+ [21:28:27] DONE gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb rc=1 output=False
11
+ [21:28:27] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb attempt=2
12
+ [21:28:27] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 attempt=2
13
+ [21:28:27] START gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv attempt=2
14
+ [21:28:27] START gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb attempt=2
15
+ [21:28:32] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb rc=1 output=False
16
+ [21:28:32] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 rc=1 output=False
17
+ [21:28:32] DONE gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv rc=1 output=False
18
+ [21:28:32] DONE gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb rc=1 output=False
19
+ [21:28:32] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb attempt=3
20
+ [21:28:32] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 attempt=3
21
+ [21:28:32] START gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv attempt=3
22
+ [21:28:33] START gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb attempt=3
23
+ [21:28:38] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb rc=1 output=False
24
+ [21:28:38] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 rc=1 output=False
25
+ [21:28:38] DONE gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv rc=1 output=False
26
+ [21:28:38] DONE gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb rc=1 output=False
27
+ [21:28:38] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 attempt=1
28
+ [21:28:38] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv attempt=1
29
+ [21:28:43] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 rc=1 output=False
30
+ [21:28:43] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv rc=1 output=False
31
+ [21:28:43] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 attempt=2
32
+ [21:28:43] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv attempt=2
33
+ [21:28:48] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 rc=1 output=False
34
+ [21:28:48] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv rc=1 output=False
35
+ [21:28:48] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 attempt=3
36
+ [21:28:49] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv attempt=3
37
+ [21:28:54] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 rc=1 output=False
38
+ [21:28:54] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv rc=1 output=False
39
+ 2026-07-26T21:30:20Z starting shared endpoint queue on second pod
40
+ staged jobs=77 counts={'MAINTRACK_20260722': 24, 'L1_2B_REMAINING': 30, 'L1_2B_DOWNSTREAM': 14, 'POSITION_HELDOUT_1P2B_20260725': 9} missing_paths=0
41
+ [21:30:20] START gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb attempt=1
42
+ [21:30:20] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 attempt=1
43
+ [21:30:20] START gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv attempt=1
44
+ [21:30:20] START gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb attempt=1
45
+ [21:39:56] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_pg19 rc=0 output=True
46
+ [21:39:56] DONE gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_arxiv rc=0 output=True
47
+ [21:39:56] DONE gpu3 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_fineweb rc=0 output=True
48
+ [21:39:56] START gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 attempt=1
49
+ [21:39:56] START gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv attempt=1
50
+ [21:40:01] DONE gpu0 L1_2B_REMAINING__ppl_30k_topk_8ktrained_dense_fineweb rc=0 output=True
51
+ [21:43:43] DONE gpu1 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_pg19 rc=0 output=True
52
+ [21:43:43] DONE gpu2 L1_2B_REMAINING__ppl_30k_topk_8ktrained_resampled_arxiv rc=0 output=True
53
+ 2026-07-27T00:37:28Z starting shared endpoint queue on second pod
54
+ staged jobs=77 counts={'MAINTRACK_20260722': 24, 'L1_2B_REMAINING': 30, 'L1_2B_DOWNSTREAM': 14, 'POSITION_HELDOUT_1P2B_20260725': 9} missing_paths=0
55
+ finished complete=77/77 failed=0
56
+ 2026-07-27T00:37:29Z starting shared 365M top-k queue on second pod
57
+ [00:37:29] staged jobs=15 gpus=[0, 1, 2, 3]
58
+ [00:37:29] COMPLETE done=15/15 failed=[]
59
+ 2026-07-27T00:37:29Z starting shared Fixed refresh queue on second pod
60
+ staged jobs=99 missing_paths=0
61
+ [00:37:29] START gpu0 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_fineweb attempt=1
62
+ [00:37:29] START gpu3 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_pg19 attempt=1
63
+ [00:50:53] START gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 attempt=1
64
+ [00:51:03] START gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed2 attempt=1
65
+ [00:51:38] DONE gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 rc=1 output=False
66
+ [00:51:43] DONE gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed2 rc=1 output=False
67
+ [01:02:27] START gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 attempt=2
68
+ [01:03:12] DONE gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 rc=1 output=False
69
+ [01:14:54] START gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 attempt=3
70
+ [01:15:09] START gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 attempt=1
71
+ [01:15:49] DONE gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 rc=1 output=False
72
+ [01:15:54] DONE gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 rc=1 output=False
73
+ [01:15:54] START gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 attempt=2
74
+ [01:16:35] DONE gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 rc=1 output=False
75
+ [01:17:11] START gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 attempt=3
76
+ [01:17:16] START gpu1 CONTROLS_1P2B_HELDOUT_20260725__passkey_1p2b_fixed_sink_local_30k attempt=1
77
+ [01:18:01] DONE gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 rc=1 output=False
78
+ [01:18:01] START gpu2 BROAD_OOD_HELDOUT_20260726__ppl_1p2b_8k_fixed_h2o_8k_fineweb attempt=1
79
+ [01:21:17] DONE gpu2 BROAD_OOD_HELDOUT_20260726__ppl_1p2b_8k_fixed_h2o_8k_fineweb rc=0 output=True
80
+ [01:21:17] START gpu2 BROAD_OOD_HELDOUT_20260726__ppl_1p2b_8k_fixed_sink_local_8k_fineweb attempt=1
81
+ [01:27:58] DONE gpu2 BROAD_OOD_HELDOUT_20260726__ppl_1p2b_8k_fixed_sink_local_8k_fineweb rc=0 output=True
82
+ [01:29:35] START gpu2 BROAD_OOD_HELDOUT_20260726__ppl_1p2b_8k_fixed_sink_local_30k_arxiv attempt=1
83
+ [01:32:01] DONE gpu1 CONTROLS_1P2B_HELDOUT_20260725__passkey_1p2b_fixed_sink_local_30k rc=0 output=True
84
+ [01:32:36] DONE gpu2 BROAD_OOD_HELDOUT_20260726__ppl_1p2b_8k_fixed_sink_local_30k_arxiv rc=0 output=True
85
+ [03:09:17] DONE gpu0 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_fineweb rc=0 output=True
86
+ [04:54:28] DONE gpu3 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_pg19 rc=1 output=False
87
+ finished complete=99/99 failed=0
88
+ 2026-07-27T07:09:49Z second-pod evaluation stack complete
epfl_final/train_logs/fixed_refresh_second_40gb.log ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ staged jobs=99 missing_paths=0
2
+ [00:28:21] START gpu0 L1_2B_REMAINING__passkey_native_fixed_8192_seed1 attempt=1
3
+ [00:28:21] START gpu1 L1_2B_REMAINING__passkey_native_fixed_8192_seed2 attempt=1
4
+ [00:28:21] START gpu2 L1_2B_REMAINING__passkey_native_fixed_8192_seed3 attempt=1
5
+ [00:28:21] START gpu3 L1_2B_REMAINING__ppl_16k_topk_fixed_pg19 attempt=1
6
+ [00:31:36] DONE gpu0 L1_2B_REMAINING__passkey_native_fixed_8192_seed1 rc=0 output=True
7
+ [00:31:36] DONE gpu1 L1_2B_REMAINING__passkey_native_fixed_8192_seed2 rc=0 output=True
8
+ [00:31:36] DONE gpu2 L1_2B_REMAINING__passkey_native_fixed_8192_seed3 rc=0 output=True
9
+ [00:31:36] START gpu0 L1_2B_REMAINING__ppl_16k_topk_fixed_arxiv attempt=1
10
+ [00:31:36] START gpu1 L1_2B_REMAINING__ppl_16k_random_fixed_fineweb attempt=1
11
+ [00:31:36] START gpu2 L1_2B_REMAINING__ppl_16k_random_fixed_pg19 attempt=1
12
+ [00:37:47] DONE gpu3 L1_2B_REMAINING__ppl_16k_topk_fixed_pg19 rc=0 output=True
13
+ [00:37:47] START gpu3 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_arxiv attempt=1
14
+ [00:38:17] DONE gpu0 L1_2B_REMAINING__ppl_16k_topk_fixed_arxiv rc=0 output=True
15
+ [01:14:58] DONE gpu1 L1_2B_REMAINING__ppl_16k_random_fixed_fineweb rc=0 output=True
16
+ [01:14:58] START gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed2 attempt=1
17
+ [01:15:13] DONE gpu2 L1_2B_REMAINING__ppl_16k_random_fixed_pg19 rc=0 output=True
18
+ [01:15:13] START gpu2 CONTROLS_1P2B_HELDOUT_20260725__ppl_1p2b_fixed_h2o_30k_pg19 attempt=1
19
+ [01:18:06] DONE gpu2 CONTROLS_1P2B_HELDOUT_20260725__ppl_1p2b_fixed_h2o_30k_pg19 rc=1 output=False
20
+ [01:18:06] START gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 attempt=1
21
+ [01:41:46] DONE gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed2 rc=0 output=True
22
+ [01:41:46] START gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 attempt=1
23
+ [01:44:19] DONE gpu2 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed1 rc=0 output=True
24
+ [02:06:43] DONE gpu1 L1_2B_REMAINING__passkey_repeat_8k_fixed_resampled_seed3 rc=0 output=True
25
+ [04:54:28] START gpu2 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_pg19 attempt=1
26
+ [05:09:17] DONE gpu3 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_arxiv rc=0 output=True
27
+ [07:32:49] DONE gpu2 L1_2B_REMAINING__ppl_30k_random_8ktrained_fixed_pg19 rc=0 output=True
28
+ finished complete=99/99 failed=0
epfl_final/train_logs/m2d20_eval_watcher.log ADDED
@@ -0,0 +1,176 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ === watcher start Wed Aug 5 04:41:36 AM UTC 2026 ===
2
+ Wed Aug 5 10:01:40 AM UTC 2026 found /mloscratch/homes/navasard/sparse/checkpoints/l8k3b_mixed_to_dense_20pct/run_20260805_041834/checkpoint-100000
3
+ Wed Aug 5 10:03:40 AM UTC 2026 trainer exited
4
+ Wed Aug 5 10:03:40 AM UTC 2026 rank files: rng=6 loader=6 (need 6 each)
5
+ wrote /mloscratch/homes/navasard/sparse/SparseAtt/eval/results/SCALE3B_20260802/jobs_m2d20_all.json
6
+ tier: all | models: ['3b_dense', '3b_mixed', '3b_m2d20']
7
+ jobs: 243 (81 per model)
8
+ pending: 83 | already complete: 160
9
+ staged m2d20 jobs: 81
10
+ Wed Aug 5 10:03:40 AM UTC 2026 launching eval runner
11
+ START gpu0 3b_m2d20__efficiency_8k
12
+ START gpu1 3b_m2d20__harness_arc_challenge
13
+ START gpu2 3b_m2d20__harness_gsm8k
14
+ START gpu3 3b_m2d20__harness_mmlu
15
+ START gpu4 3b_m2d20__passkey_8k_random
16
+ START gpu5 3b_m2d20__position_8k_arxiv
17
+ DONE gpu2 3b_m2d20__harness_gsm8k status=retrying
18
+ START gpu2 3b_m2d20__position_8k_fineweb
19
+ DONE gpu5 3b_m2d20__position_8k_arxiv status=complete
20
+ START gpu5 3b_m2d20__position_8k_pg19
21
+ DONE gpu2 3b_m2d20__position_8k_fineweb status=complete
22
+ START gpu2 3b_m2d20__ppl_8k_dense_arxiv
23
+ DONE gpu5 3b_m2d20__position_8k_pg19 status=complete
24
+ START gpu5 3b_m2d20__ppl_8k_dense_fineweb
25
+ DONE gpu2 3b_m2d20__ppl_8k_dense_arxiv status=complete
26
+ START gpu2 3b_m2d20__ppl_8k_dense_pg19
27
+ DONE gpu5 3b_m2d20__ppl_8k_dense_fineweb status=complete
28
+ START gpu5 3b_m2d20__ppl_8k_h2o_arxiv
29
+ DONE gpu2 3b_m2d20__ppl_8k_dense_pg19 status=complete
30
+ START gpu2 3b_m2d20__ppl_8k_h2o_fineweb
31
+ DONE gpu1 3b_m2d20__harness_arc_challenge status=complete
32
+ START gpu1 3b_m2d20__ppl_8k_h2o_pg19
33
+ DONE gpu2 3b_m2d20__ppl_8k_h2o_fineweb status=complete
34
+ START gpu2 3b_m2d20__ppl_8k_moba_arxiv
35
+ DONE gpu5 3b_m2d20__ppl_8k_h2o_arxiv status=complete
36
+ START gpu5 3b_m2d20__ppl_8k_moba_fineweb
37
+ DONE gpu1 3b_m2d20__ppl_8k_h2o_pg19 status=complete
38
+ START gpu1 3b_m2d20__ppl_8k_moba_pg19
39
+ DONE gpu5 3b_m2d20__ppl_8k_moba_fineweb status=complete
40
+ START gpu5 3b_m2d20__ppl_8k_quest_arxiv
41
+ DONE gpu1 3b_m2d20__ppl_8k_moba_pg19 status=complete
42
+ START gpu1 3b_m2d20__ppl_8k_quest_fineweb
43
+ DONE gpu2 3b_m2d20__ppl_8k_moba_arxiv status=complete
44
+ START gpu2 3b_m2d20__ppl_8k_quest_pg19
45
+ DONE gpu3 3b_m2d20__harness_mmlu status=complete
46
+ START gpu3 3b_m2d20__ppl_8k_random_arxiv
47
+ DONE gpu0 3b_m2d20__efficiency_8k status=complete
48
+ START gpu0 3b_m2d20__ppl_8k_random_fineweb
49
+ DONE gpu1 3b_m2d20__ppl_8k_quest_fineweb status=complete
50
+ START gpu1 3b_m2d20__ppl_8k_random_fwtail
51
+ DONE gpu5 3b_m2d20__ppl_8k_quest_arxiv status=complete
52
+ START gpu5 3b_m2d20__ppl_8k_random_gutenberg
53
+ DONE gpu2 3b_m2d20__ppl_8k_quest_pg19 status=complete
54
+ START gpu2 3b_m2d20__ppl_8k_random_pg19
55
+ DONE gpu4 3b_m2d20__passkey_8k_random status=complete
56
+ START gpu4 3b_m2d20__ppl_8k_random_pubmed
57
+ DONE gpu3 3b_m2d20__ppl_8k_random_arxiv status=complete
58
+ START gpu3 3b_m2d20__ppl_8k_sink_local_arxiv
59
+ DONE gpu0 3b_m2d20__ppl_8k_random_fineweb status=complete
60
+ START gpu0 3b_m2d20__ppl_8k_sink_local_fineweb
61
+ DONE gpu1 3b_m2d20__ppl_8k_random_fwtail status=complete
62
+ START gpu1 3b_m2d20__ppl_8k_sink_local_pg19
63
+ DONE gpu2 3b_m2d20__ppl_8k_random_pg19 status=complete
64
+ START gpu2 3b_m2d20__ppl_8k_sliding_arxiv
65
+ DONE gpu5 3b_m2d20__ppl_8k_random_gutenberg status=complete
66
+ START gpu5 3b_m2d20__ppl_8k_sliding_fineweb
67
+ DONE gpu0 3b_m2d20__ppl_8k_sink_local_fineweb status=complete
68
+ START gpu0 3b_m2d20__ppl_8k_sliding_pg19
69
+ DONE gpu3 3b_m2d20__ppl_8k_sink_local_arxiv status=complete
70
+ START gpu3 3b_m2d20__ppl_8k_topk_arxiv
71
+ DONE gpu1 3b_m2d20__ppl_8k_sink_local_pg19 status=complete
72
+ START gpu1 3b_m2d20__ppl_8k_topk_fineweb
73
+ DONE gpu5 3b_m2d20__ppl_8k_sliding_fineweb status=complete
74
+ START gpu5 3b_m2d20__ppl_8k_topk_pg19
75
+ DONE gpu2 3b_m2d20__ppl_8k_sliding_arxiv status=complete
76
+ START gpu2 3b_m2d20__ruler_random_niah_multikey_8k
77
+ DONE gpu0 3b_m2d20__ppl_8k_sliding_pg19 status=complete
78
+ START gpu0 3b_m2d20__ruler_random_niah_multivalue_8k
79
+ DONE gpu4 3b_m2d20__ppl_8k_random_pubmed status=complete
80
+ START gpu4 3b_m2d20__ruler_random_vt_8k
81
+ DONE gpu3 3b_m2d20__ppl_8k_topk_arxiv status=complete
82
+ START gpu3 3b_m2d20__efficiency_16k
83
+ DONE gpu1 3b_m2d20__ppl_8k_topk_fineweb status=complete
84
+ START gpu1 3b_m2d20__passkey_16k_random
85
+ DONE gpu5 3b_m2d20__ppl_8k_topk_pg19 status=complete
86
+ START gpu5 3b_m2d20__ppl_16k_dense_fineweb
87
+ DONE gpu5 3b_m2d20__ppl_16k_dense_fineweb status=complete
88
+ START gpu5 3b_m2d20__ppl_16k_h2o_fineweb
89
+ DONE gpu5 3b_m2d20__ppl_16k_h2o_fineweb status=complete
90
+ START gpu5 3b_m2d20__ppl_16k_moba_fineweb
91
+ DONE gpu2 3b_m2d20__ruler_random_niah_multikey_8k status=complete
92
+ START gpu2 3b_m2d20__ppl_16k_quest_fineweb
93
+ DONE gpu0 3b_m2d20__ruler_random_niah_multivalue_8k status=complete
94
+ START gpu0 3b_m2d20__ppl_16k_random_arxiv
95
+ DONE gpu4 3b_m2d20__ruler_random_vt_8k status=complete
96
+ START gpu4 3b_m2d20__ppl_16k_random_fineweb
97
+ DONE gpu5 3b_m2d20__ppl_16k_moba_fineweb status=complete
98
+ START gpu5 3b_m2d20__ppl_16k_random_pg19
99
+ DONE gpu2 3b_m2d20__ppl_16k_quest_fineweb status=complete
100
+ START gpu2 3b_m2d20__ppl_16k_sink_local_fineweb
101
+ DONE gpu2 3b_m2d20__ppl_16k_sink_local_fineweb status=complete
102
+ START gpu2 3b_m2d20__ppl_16k_sliding_fineweb
103
+ DONE gpu2 3b_m2d20__ppl_16k_sliding_fineweb status=complete
104
+ START gpu2 3b_m2d20__ruler_random_niah_multikey_16k
105
+ DONE gpu3 3b_m2d20__efficiency_16k status=complete
106
+ START gpu3 3b_m2d20__efficiency_30k
107
+ DONE gpu0 3b_m2d20__ppl_16k_random_arxiv status=complete
108
+ START gpu0 3b_m2d20__longbench_2wikimqa
109
+ DONE gpu4 3b_m2d20__ppl_16k_random_fineweb status=complete
110
+ START gpu4 3b_m2d20__longbench_multifieldqa_en
111
+ DONE gpu5 3b_m2d20__ppl_16k_random_pg19 status=complete
112
+ START gpu5 3b_m2d20__longbench_narrativeqa
113
+ DONE gpu1 3b_m2d20__passkey_16k_random status=complete
114
+ START gpu1 3b_m2d20__longbench_qasper
115
+ DONE gpu0 3b_m2d20__longbench_2wikimqa status=complete
116
+ START gpu0 3b_m2d20__passkey_30k_random
117
+ DONE gpu4 3b_m2d20__longbench_multifieldqa_en status=complete
118
+ START gpu4 3b_m2d20__position_30k_fineweb
119
+ DONE gpu4 3b_m2d20__position_30k_fineweb status=complete
120
+ START gpu4 3b_m2d20__ppl_30k_dense_arxiv
121
+ DONE gpu4 3b_m2d20__ppl_30k_dense_arxiv status=complete
122
+ START gpu4 3b_m2d20__ppl_30k_dense_fineweb
123
+ DONE gpu4 3b_m2d20__ppl_30k_dense_fineweb status=complete
124
+ START gpu4 3b_m2d20__ppl_30k_dense_pg19
125
+ DONE gpu2 3b_m2d20__ruler_random_niah_multikey_16k status=complete
126
+ START gpu2 3b_m2d20__ppl_30k_h2o_arxiv
127
+ DONE gpu4 3b_m2d20__ppl_30k_dense_pg19 status=complete
128
+ START gpu4 3b_m2d20__ppl_30k_h2o_fineweb
129
+ DONE gpu5 3b_m2d20__longbench_narrativeqa status=complete
130
+ START gpu5 3b_m2d20__ppl_30k_h2o_pg19
131
+ DONE gpu2 3b_m2d20__ppl_30k_h2o_arxiv status=complete
132
+ START gpu2 3b_m2d20__ppl_30k_moba_arxiv
133
+ DONE gpu4 3b_m2d20__ppl_30k_h2o_fineweb status=complete
134
+ START gpu4 3b_m2d20__ppl_30k_moba_fineweb
135
+ DONE gpu5 3b_m2d20__ppl_30k_h2o_pg19 status=complete
136
+ START gpu5 3b_m2d20__ppl_30k_moba_pg19
137
+ DONE gpu5 3b_m2d20__ppl_30k_moba_pg19 status=complete
138
+ START gpu5 3b_m2d20__ppl_30k_quest_arxiv
139
+ DONE gpu2 3b_m2d20__ppl_30k_moba_arxiv status=complete
140
+ START gpu2 3b_m2d20__ppl_30k_quest_fineweb
141
+ DONE gpu4 3b_m2d20__ppl_30k_moba_fineweb status=complete
142
+ START gpu4 3b_m2d20__ppl_30k_quest_pg19
143
+ DONE gpu1 3b_m2d20__longbench_qasper status=complete
144
+ START gpu1 3b_m2d20__ppl_30k_random_arxiv
145
+ DONE gpu2 3b_m2d20__ppl_30k_quest_fineweb status=complete
146
+ START gpu2 3b_m2d20__ppl_30k_random_fineweb
147
+ DONE gpu4 3b_m2d20__ppl_30k_quest_pg19 status=complete
148
+ START gpu4 3b_m2d20__ppl_30k_random_gutenberg
149
+ DONE gpu5 3b_m2d20__ppl_30k_quest_arxiv status=complete
150
+ START gpu5 3b_m2d20__ppl_30k_random_pg19
151
+ DONE gpu3 3b_m2d20__efficiency_30k status=complete
152
+ START gpu3 3b_m2d20__ppl_30k_random_pubmed
153
+ DONE gpu1 3b_m2d20__ppl_30k_random_arxiv status=complete
154
+ START gpu1 3b_m2d20__ppl_30k_sink_local_arxiv
155
+ DONE gpu0 3b_m2d20__passkey_30k_random status=complete
156
+ START gpu0 3b_m2d20__ppl_30k_sink_local_fineweb
157
+ DONE gpu4 3b_m2d20__ppl_30k_random_gutenberg status=complete
158
+ START gpu4 3b_m2d20__ppl_30k_sink_local_pg19
159
+ DONE gpu5 3b_m2d20__ppl_30k_random_pg19 status=complete
160
+ START gpu5 3b_m2d20__ppl_30k_sliding_arxiv
161
+ DONE gpu0 3b_m2d20__ppl_30k_sink_local_fineweb status=complete
162
+ START gpu0 3b_m2d20__ppl_30k_sliding_fineweb
163
+ DONE gpu1 3b_m2d20__ppl_30k_sink_local_arxiv status=complete
164
+ START gpu1 3b_m2d20__ppl_30k_sliding_pg19
165
+ DONE gpu2 3b_m2d20__ppl_30k_random_fineweb status=complete
166
+ START gpu2 3b_m2d20__ruler_random_niah_multikey_30k
167
+ DONE gpu4 3b_m2d20__ppl_30k_sink_local_pg19 status=complete
168
+ START gpu4 3b_m2d20__harness_gsm8k
169
+ DONE gpu4 3b_m2d20__harness_gsm8k status=failed
170
+ DONE gpu5 3b_m2d20__ppl_30k_sliding_arxiv status=complete
171
+ DONE gpu0 3b_m2d20__ppl_30k_sliding_fineweb status=complete
172
+ DONE gpu1 3b_m2d20__ppl_30k_sliding_pg19 status=complete
173
+ DONE gpu3 3b_m2d20__ppl_30k_random_pubmed status=complete
174
+ DONE gpu2 3b_m2d20__ruler_random_niah_multikey_30k status=complete
175
+ finished complete=80/81 failed=1
176
+ Failed jobs: 3b_m2d20__harness_gsm8k
epfl_final/train_logs/mixed8k3b_60b.4gpu.exact.lock ADDED
@@ -0,0 +1 @@
 
 
1
+ 279
epfl_final/train_logs/mixed8k3b_60b.4gpu.exact.run.log ADDED
The diff for this file is too large to render. See raw diff
 
epfl_final/train_logs/mixed8k3b_60b.4gpu.exact.watch.log ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ 2026-07-26T20:32:01Z watchdog start pid=279 latest_step=19000
2
+ 2026-07-26T20:32:01Z launch checkpoint=/mloscratch/homes/navasard/sparse/checkpoints/l8k3b_mixed_60b/run_20260722_084223/checkpoint-19000 GPUs=0,1,2,3 nproc=4
epfl_final/train_logs/recover_final_eval_stack.sh ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ while kill -0 203 2>/dev/null; do
5
+ sleep 30
6
+ done
7
+
8
+ cd /mloscratch/homes/navasard/sparse/SparseAtt
9
+ exec bash /mloscratch/homes/navasard/sparse/train_logs/run_final_eval_stack.sh \
10
+ >> /mloscratch/homes/navasard/sparse/train_logs/final_eval_stack_recovery.log 2>&1
epfl_final/train_logs/recover_final_eval_stack.waiter.log ADDED
File without changes
epfl_final/train_logs/recover_final_eval_stack_topk.sh ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ while kill -0 11944 2>/dev/null; do
5
+ sleep 30
6
+ done
7
+
8
+ cd /mloscratch/homes/navasard/sparse/SparseAtt
9
+ exec bash /mloscratch/homes/navasard/sparse/train_logs/run_final_eval_stack.sh \
10
+ >> /mloscratch/homes/navasard/sparse/train_logs/final_eval_stack_topk_recovery.log 2>&1
epfl_final/train_logs/recover_final_eval_stack_topk.waiter.log ADDED
File without changes
epfl_final/train_logs/run_final_eval_stack_second_pod.sh ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ REPO="$BASE/SparseAtt"
6
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
7
+ LOG="$BASE/train_logs/final_eval_stack_second_pod.log"
8
+
9
+ log() {
10
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" | tee -a "$LOG"
11
+ }
12
+
13
+ cd "$REPO"
14
+ log "starting shared endpoint queue on second pod"
15
+ "$PYTHON" eval/run_1p2b_final_endpoint_refresh.py \
16
+ --gpus 0,1,2,3 --stale-min 720 >> "$LOG" 2>&1
17
+
18
+ log "starting shared 365M top-k queue on second pod"
19
+ "$PYTHON" eval/run_complete_365m_topk_row.py \
20
+ --gpus 0,1,2,3 >> "$LOG" 2>&1
21
+
22
+ log "starting shared Fixed refresh queue on second pod"
23
+ "$PYTHON" eval/run_fixed_1p2b_final_refresh.py \
24
+ --gpus 0,1,2,3 --stale-min 720 >> "$LOG" 2>&1
25
+
26
+ log "second-pod evaluation stack complete"
epfl_final/train_logs/scale3b_40g_a.log ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_30k_random_pg19
2
+ START gpu1 3b_mixed__ppl_30k_random_pg19
3
+ START gpu2 3b_mixed__ppl_16k_random_pg19
4
+ START gpu3 3b_dense__ppl_8k_moba_pg19
5
+ DONE gpu3 3b_dense__ppl_8k_moba_pg19 status=complete
6
+ START gpu3 3b_dense__ppl_8k_sliding_pg19
7
+ DONE gpu3 3b_dense__ppl_8k_sliding_pg19 status=complete
8
+ START gpu3 3b_dense__ppl_8k_h2o_pg19
9
+ DONE gpu3 3b_dense__ppl_8k_h2o_pg19 status=complete
10
+ START gpu3 3b_dense__position_8k_pg19
11
+ DONE gpu3 3b_dense__position_8k_pg19 status=complete
12
+ START gpu3 3b_dense__ruler_random_vt_8k
13
+ DONE gpu2 3b_mixed__ppl_16k_random_pg19 status=complete
14
+ START gpu2 3b_mixed__ppl_8k_moba_arxiv
15
+ DONE gpu3 3b_dense__ruler_random_vt_8k status=complete
16
+ START gpu3 3b_mixed__ppl_8k_sliding_arxiv
17
+ DONE gpu2 3b_mixed__ppl_8k_moba_arxiv status=complete
18
+ START gpu2 3b_mixed__ppl_8k_h2o_arxiv
19
+ DONE gpu3 3b_mixed__ppl_8k_sliding_arxiv status=complete
20
+ START gpu3 3b_mixed__position_8k_arxiv
21
+ DONE gpu3 3b_mixed__position_8k_arxiv status=complete
22
+ DONE gpu2 3b_mixed__ppl_8k_h2o_arxiv status=complete
23
+ DONE gpu1 3b_mixed__ppl_30k_random_pg19 status=complete
24
+ DONE gpu0 3b_dense__ppl_30k_random_pg19 status=complete
25
+ finished complete=12/12 failed=0
epfl_final/train_logs/scale3b_40g_b.log ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_30k_random_arxiv
2
+ START gpu1 3b_mixed__ppl_30k_random_arxiv
3
+ START gpu2 3b_mixed__ppl_16k_random_arxiv
4
+ START gpu3 3b_dense__ppl_8k_moba_arxiv
5
+ DONE gpu3 3b_dense__ppl_8k_moba_arxiv status=complete
6
+ START gpu3 3b_dense__ppl_8k_sliding_arxiv
7
+ DONE gpu3 3b_dense__ppl_8k_sliding_arxiv status=complete
8
+ START gpu3 3b_dense__ppl_8k_h2o_arxiv
9
+ DONE gpu3 3b_dense__ppl_8k_h2o_arxiv status=complete
10
+ START gpu3 3b_dense__position_8k_arxiv
11
+ DONE gpu3 3b_dense__position_8k_arxiv status=complete
12
+ START gpu3 3b_mixed__ppl_8k_moba_fineweb
13
+ DONE gpu3 3b_mixed__ppl_8k_moba_fineweb status=complete
14
+ START gpu3 3b_mixed__ppl_8k_sliding_fineweb
15
+ DONE gpu2 3b_mixed__ppl_16k_random_arxiv status=complete
16
+ START gpu2 3b_mixed__ppl_8k_h2o_fineweb
17
+ DONE gpu2 3b_mixed__ppl_8k_h2o_fineweb status=complete
18
+ START gpu2 3b_mixed__position_8k_fineweb
19
+ DONE gpu2 3b_mixed__position_8k_fineweb status=complete
20
+ START gpu2 3b_mixed__ruler_random_niah_multivalue_8k
21
+ DONE gpu3 3b_mixed__ppl_8k_sliding_fineweb status=complete
22
+ DONE gpu2 3b_mixed__ruler_random_niah_multivalue_8k status=complete
23
+ DONE gpu0 3b_dense__ppl_30k_random_arxiv status=complete
24
+ DONE gpu1 3b_mixed__ppl_30k_random_arxiv status=complete
25
+ finished complete=12/12 failed=0
epfl_final/train_logs/scale3b_80g_c.log ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_mixed__ppl_30k_random_fineweb
2
+ START gpu1 3b_mixed__ppl_16k_random_fineweb
3
+ START gpu2 3b_dense__ppl_8k_moba_fineweb
4
+ START gpu3 3b_dense__ppl_8k_sliding_fineweb
5
+ DONE gpu2 3b_dense__ppl_8k_moba_fineweb status=complete
6
+ START gpu2 3b_dense__ppl_8k_h2o_fineweb
7
+ DONE gpu3 3b_dense__ppl_8k_sliding_fineweb status=complete
8
+ START gpu3 3b_dense__position_8k_fineweb
9
+ DONE gpu2 3b_dense__ppl_8k_h2o_fineweb status=complete
10
+ START gpu2 3b_dense__ruler_random_niah_multivalue_8k
11
+ DONE gpu3 3b_dense__position_8k_fineweb status=complete
12
+ START gpu3 3b_mixed__ppl_8k_moba_pg19
13
+ DONE gpu3 3b_mixed__ppl_8k_moba_pg19 status=complete
14
+ START gpu3 3b_mixed__ppl_8k_sliding_pg19
15
+ DONE gpu2 3b_dense__ruler_random_niah_multivalue_8k status=complete
16
+ START gpu2 3b_mixed__ppl_8k_h2o_pg19
17
+ DONE gpu2 3b_mixed__ppl_8k_h2o_pg19 status=complete
18
+ START gpu2 3b_mixed__position_8k_pg19
19
+ DONE gpu2 3b_mixed__position_8k_pg19 status=complete
20
+ START gpu2 3b_mixed__ruler_random_vt_8k
21
+ DONE gpu3 3b_mixed__ppl_8k_sliding_pg19 status=complete
22
+ DONE gpu1 3b_mixed__ppl_16k_random_fineweb status=complete
23
+ DONE gpu2 3b_mixed__ruler_random_vt_8k status=complete
24
+ DONE gpu0 3b_mixed__ppl_30k_random_fineweb status=complete
25
+ finished complete=12/12 failed=0
epfl_final/train_logs/scale3b_a100_8k.log ADDED
@@ -0,0 +1,110 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__position_8k_arxiv
2
+ START gpu1 3b_dense__position_8k_fineweb
3
+ START gpu2 3b_dense__position_8k_pg19
4
+ START gpu3 3b_dense__ppl_8k_dense_arxiv
5
+ DONE gpu1 3b_dense__position_8k_fineweb status=complete
6
+ START gpu1 3b_dense__ppl_8k_dense_fineweb
7
+ DONE gpu0 3b_dense__position_8k_arxiv status=complete
8
+ START gpu0 3b_dense__ppl_8k_dense_pg19
9
+ DONE gpu2 3b_dense__position_8k_pg19 status=complete
10
+ START gpu2 3b_dense__ppl_8k_h2o_arxiv
11
+ DONE gpu3 3b_dense__ppl_8k_dense_arxiv status=complete
12
+ START gpu3 3b_dense__ppl_8k_h2o_fineweb
13
+ DONE gpu1 3b_dense__ppl_8k_dense_fineweb status=complete
14
+ START gpu1 3b_dense__ppl_8k_h2o_pg19
15
+ DONE gpu0 3b_dense__ppl_8k_dense_pg19 status=complete
16
+ START gpu0 3b_dense__ppl_8k_moba_arxiv
17
+ DONE gpu3 3b_dense__ppl_8k_h2o_fineweb status=complete
18
+ START gpu3 3b_dense__ppl_8k_moba_fineweb
19
+ DONE gpu2 3b_dense__ppl_8k_h2o_arxiv status=complete
20
+ START gpu2 3b_dense__ppl_8k_moba_pg19
21
+ DONE gpu1 3b_dense__ppl_8k_h2o_pg19 status=complete
22
+ START gpu1 3b_dense__ppl_8k_quest_arxiv
23
+ DONE gpu0 3b_dense__ppl_8k_moba_arxiv status=complete
24
+ START gpu0 3b_dense__ppl_8k_quest_fineweb
25
+ DONE gpu2 3b_dense__ppl_8k_moba_pg19 status=complete
26
+ START gpu2 3b_dense__ppl_8k_quest_pg19
27
+ DONE gpu3 3b_dense__ppl_8k_moba_fineweb status=complete
28
+ START gpu3 3b_dense__ppl_8k_sink_local_arxiv
29
+ DONE gpu1 3b_dense__ppl_8k_quest_arxiv status=complete
30
+ START gpu1 3b_dense__ppl_8k_sink_local_fineweb
31
+ DONE gpu0 3b_dense__ppl_8k_quest_fineweb status=complete
32
+ START gpu0 3b_dense__ppl_8k_sink_local_pg19
33
+ DONE gpu2 3b_dense__ppl_8k_quest_pg19 status=complete
34
+ START gpu2 3b_dense__ppl_8k_sliding_arxiv
35
+ DONE gpu0 3b_dense__ppl_8k_sink_local_pg19 status=complete
36
+ START gpu0 3b_dense__ppl_8k_sliding_fineweb
37
+ DONE gpu3 3b_dense__ppl_8k_sink_local_arxiv status=complete
38
+ START gpu3 3b_dense__ppl_8k_sliding_pg19
39
+ DONE gpu1 3b_dense__ppl_8k_sink_local_fineweb status=complete
40
+ START gpu1 3b_dense__ppl_8k_topk_arxiv
41
+ DONE gpu1 3b_dense__ppl_8k_topk_arxiv status=retrying
42
+ START gpu1 3b_dense__ppl_8k_topk_fineweb
43
+ DONE gpu1 3b_dense__ppl_8k_topk_fineweb status=retrying
44
+ START gpu1 3b_dense__ppl_8k_topk_pg19
45
+ DONE gpu1 3b_dense__ppl_8k_topk_pg19 status=retrying
46
+ START gpu1 3b_mixed__position_8k_arxiv
47
+ DONE gpu1 3b_mixed__position_8k_arxiv status=complete
48
+ START gpu1 3b_mixed__position_8k_fineweb
49
+ DONE gpu1 3b_mixed__position_8k_fineweb status=complete
50
+ START gpu1 3b_mixed__position_8k_pg19
51
+ DONE gpu2 3b_dense__ppl_8k_sliding_arxiv status=complete
52
+ START gpu2 3b_mixed__ppl_8k_dense_arxiv
53
+ DONE gpu1 3b_mixed__position_8k_pg19 status=complete
54
+ START gpu1 3b_mixed__ppl_8k_dense_fineweb
55
+ DONE gpu3 3b_dense__ppl_8k_sliding_pg19 status=complete
56
+ START gpu3 3b_mixed__ppl_8k_dense_pg19
57
+ DONE gpu0 3b_dense__ppl_8k_sliding_fineweb status=complete
58
+ START gpu0 3b_mixed__ppl_8k_h2o_arxiv
59
+ DONE gpu2 3b_mixed__ppl_8k_dense_arxiv status=complete
60
+ START gpu2 3b_mixed__ppl_8k_h2o_fineweb
61
+ DONE gpu1 3b_mixed__ppl_8k_dense_fineweb status=complete
62
+ START gpu1 3b_mixed__ppl_8k_h2o_pg19
63
+ DONE gpu3 3b_mixed__ppl_8k_dense_pg19 status=complete
64
+ START gpu3 3b_mixed__ppl_8k_moba_arxiv
65
+ DONE gpu0 3b_mixed__ppl_8k_h2o_arxiv status=complete
66
+ START gpu0 3b_mixed__ppl_8k_moba_fineweb
67
+ DONE gpu1 3b_mixed__ppl_8k_h2o_pg19 status=complete
68
+ START gpu1 3b_mixed__ppl_8k_moba_pg19
69
+ DONE gpu2 3b_mixed__ppl_8k_h2o_fineweb status=complete
70
+ START gpu2 3b_mixed__ppl_8k_quest_arxiv
71
+ DONE gpu3 3b_mixed__ppl_8k_moba_arxiv status=complete
72
+ START gpu3 3b_mixed__ppl_8k_quest_fineweb
73
+ DONE gpu0 3b_mixed__ppl_8k_moba_fineweb status=complete
74
+ START gpu0 3b_mixed__ppl_8k_quest_pg19
75
+ DONE gpu1 3b_mixed__ppl_8k_moba_pg19 status=complete
76
+ START gpu1 3b_mixed__ppl_8k_sink_local_arxiv
77
+ DONE gpu2 3b_mixed__ppl_8k_quest_arxiv status=complete
78
+ START gpu2 3b_mixed__ppl_8k_sink_local_fineweb
79
+ DONE gpu3 3b_mixed__ppl_8k_quest_fineweb status=complete
80
+ START gpu3 3b_mixed__ppl_8k_sink_local_pg19
81
+ DONE gpu0 3b_mixed__ppl_8k_quest_pg19 status=complete
82
+ START gpu0 3b_mixed__ppl_8k_sliding_arxiv
83
+ DONE gpu1 3b_mixed__ppl_8k_sink_local_arxiv status=complete
84
+ START gpu1 3b_mixed__ppl_8k_sliding_fineweb
85
+ DONE gpu2 3b_mixed__ppl_8k_sink_local_fineweb status=complete
86
+ START gpu2 3b_mixed__ppl_8k_sliding_pg19
87
+ DONE gpu3 3b_mixed__ppl_8k_sink_local_pg19 status=complete
88
+ START gpu3 3b_mixed__ppl_8k_topk_arxiv
89
+ DONE gpu3 3b_mixed__ppl_8k_topk_arxiv status=retrying
90
+ START gpu3 3b_mixed__ppl_8k_topk_fineweb
91
+ DONE gpu3 3b_mixed__ppl_8k_topk_fineweb status=retrying
92
+ START gpu3 3b_mixed__ppl_8k_topk_pg19
93
+ DONE gpu3 3b_mixed__ppl_8k_topk_pg19 status=retrying
94
+ START gpu3 3b_dense__ppl_8k_topk_arxiv
95
+ DONE gpu3 3b_dense__ppl_8k_topk_arxiv status=failed
96
+ START gpu3 3b_dense__ppl_8k_topk_fineweb
97
+ DONE gpu3 3b_dense__ppl_8k_topk_fineweb status=failed
98
+ START gpu3 3b_dense__ppl_8k_topk_pg19
99
+ DONE gpu3 3b_dense__ppl_8k_topk_pg19 status=failed
100
+ START gpu3 3b_mixed__ppl_8k_topk_arxiv
101
+ DONE gpu3 3b_mixed__ppl_8k_topk_arxiv status=failed
102
+ START gpu3 3b_mixed__ppl_8k_topk_fineweb
103
+ DONE gpu3 3b_mixed__ppl_8k_topk_fineweb status=failed
104
+ START gpu3 3b_mixed__ppl_8k_topk_pg19
105
+ DONE gpu3 3b_mixed__ppl_8k_topk_pg19 status=failed
106
+ DONE gpu0 3b_mixed__ppl_8k_sliding_arxiv status=complete
107
+ DONE gpu1 3b_mixed__ppl_8k_sliding_fineweb status=complete
108
+ DONE gpu2 3b_mixed__ppl_8k_sliding_pg19 status=complete
109
+ finished complete=42/48 failed=6
110
+ Failed jobs: 3b_dense__ppl_8k_topk_arxiv, 3b_dense__ppl_8k_topk_fineweb, 3b_dense__ppl_8k_topk_pg19, 3b_mixed__ppl_8k_topk_arxiv, 3b_mixed__ppl_8k_topk_fineweb, 3b_mixed__ppl_8k_topk_pg19
epfl_final/train_logs/scale3b_eval_20260802.log ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_8k_random_fineweb
2
+ START gpu1 3b_dense__ppl_8k_random_pg19
3
+ START gpu2 3b_dense__ppl_8k_random_arxiv
4
+ START gpu3 3b_dense__ppl_8k_quest_fineweb
5
+ START gpu4 3b_dense__ppl_8k_quest_pg19
6
+ START gpu5 3b_dense__ppl_8k_quest_arxiv
7
+ DONE gpu4 3b_dense__ppl_8k_quest_pg19 status=complete
8
+ START gpu4 3b_dense__ppl_8k_sink_local_fineweb
9
+ DONE gpu3 3b_dense__ppl_8k_quest_fineweb status=complete
10
+ START gpu3 3b_dense__ppl_8k_sink_local_pg19
11
+ DONE gpu5 3b_dense__ppl_8k_quest_arxiv status=complete
12
+ START gpu5 3b_dense__ppl_8k_sink_local_arxiv
13
+ DONE gpu2 3b_dense__ppl_8k_random_arxiv status=complete
14
+ START gpu2 3b_dense__ppl_8k_dense_pg19
15
+ DONE gpu1 3b_dense__ppl_8k_random_pg19 status=complete
16
+ START gpu1 3b_dense__ppl_8k_dense_arxiv
17
+ DONE gpu0 3b_dense__ppl_8k_random_fineweb status=complete
18
+ START gpu0 3b_dense__ruler_random_niah_multikey_8k
19
+ DONE gpu2 3b_dense__ppl_8k_dense_pg19 status=complete
20
+ START gpu2 3b_dense__passkey_8k_random
21
+ DONE gpu1 3b_dense__ppl_8k_dense_arxiv status=complete
22
+ DONE gpu3 3b_dense__ppl_8k_sink_local_pg19 status=complete
23
+ DONE gpu4 3b_dense__ppl_8k_sink_local_fineweb status=complete
24
+ DONE gpu5 3b_dense__ppl_8k_sink_local_arxiv status=complete
25
+ DONE gpu0 3b_dense__ruler_random_niah_multikey_8k status=complete
26
+ DONE gpu2 3b_dense__passkey_8k_random status=complete
27
+ finished complete=14/14 failed=0
epfl_final/train_logs/scale3b_full_a100_20260804.log ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_16k_random_fineweb
2
+ START gpu1 3b_dense__ppl_16k_random_pg19
3
+ START gpu2 3b_dense__ppl_16k_random_arxiv
4
+ START gpu3 3b_dense__ppl_30k_random_fineweb
epfl_final/train_logs/scale3b_gsm8k.log ADDED
File without changes
epfl_final/train_logs/scale3b_gsm8k_all.log ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__harness_gsm8k
2
+ START gpu1 3b_mixed__harness_gsm8k
3
+ START gpu2 3b_m2d20__harness_gsm8k
4
+ DONE gpu0 3b_dense__harness_gsm8k status=complete
5
+ DONE gpu2 3b_m2d20__harness_gsm8k status=complete
6
+ DONE gpu1 3b_mixed__harness_gsm8k status=complete
7
+ finished complete=3/3 failed=0
epfl_final/train_logs/scale3b_h100_long.log ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_16k_dense_fineweb
2
+ START gpu1 3b_dense__ppl_16k_h2o_fineweb
3
+ DONE gpu0 3b_dense__ppl_16k_dense_fineweb status=complete
4
+ START gpu0 3b_dense__ppl_16k_moba_fineweb
5
+ DONE gpu1 3b_dense__ppl_16k_h2o_fineweb status=complete
6
+ START gpu1 3b_dense__ppl_16k_quest_fineweb
7
+ DONE gpu0 3b_dense__ppl_16k_moba_fineweb status=complete
8
+ START gpu0 3b_dense__ppl_16k_sink_local_fineweb
9
+ DONE gpu1 3b_dense__ppl_16k_quest_fineweb status=complete
10
+ START gpu1 3b_dense__ppl_16k_sliding_fineweb
11
+ DONE gpu0 3b_dense__ppl_16k_sink_local_fineweb status=complete
12
+ START gpu0 3b_mixed__ppl_16k_dense_fineweb
13
+ DONE gpu0 3b_mixed__ppl_16k_dense_fineweb status=complete
14
+ START gpu0 3b_mixed__ppl_16k_h2o_fineweb
15
+ DONE gpu1 3b_dense__ppl_16k_sliding_fineweb status=complete
16
+ START gpu1 3b_mixed__ppl_16k_moba_fineweb
17
+ DONE gpu0 3b_mixed__ppl_16k_h2o_fineweb status=complete
18
+ START gpu0 3b_mixed__ppl_16k_quest_fineweb
19
+ DONE gpu1 3b_mixed__ppl_16k_moba_fineweb status=complete
20
+ START gpu1 3b_mixed__ppl_16k_sink_local_fineweb
21
+ DONE gpu0 3b_mixed__ppl_16k_quest_fineweb status=complete
22
+ START gpu0 3b_mixed__ppl_16k_sliding_fineweb
23
+ DONE gpu1 3b_mixed__ppl_16k_sink_local_fineweb status=complete
24
+ START gpu1 3b_dense__position_30k_fineweb
25
+ DONE gpu1 3b_dense__position_30k_fineweb status=complete
26
+ START gpu1 3b_dense__ppl_30k_dense_arxiv
27
+ DONE gpu1 3b_dense__ppl_30k_dense_arxiv status=complete
28
+ START gpu1 3b_dense__ppl_30k_dense_fineweb
29
+ DONE gpu0 3b_mixed__ppl_16k_sliding_fineweb status=complete
30
+ START gpu0 3b_dense__ppl_30k_dense_pg19
31
+ DONE gpu1 3b_dense__ppl_30k_dense_fineweb status=complete
32
+ START gpu1 3b_dense__ppl_30k_h2o_arxiv
33
+ DONE gpu0 3b_dense__ppl_30k_dense_pg19 status=complete
34
+ START gpu0 3b_dense__ppl_30k_h2o_fineweb
35
+ DONE gpu1 3b_dense__ppl_30k_h2o_arxiv status=complete
36
+ START gpu1 3b_dense__ppl_30k_h2o_pg19
37
+ DONE gpu0 3b_dense__ppl_30k_h2o_fineweb status=complete
38
+ START gpu0 3b_dense__ppl_30k_moba_arxiv
39
+ DONE gpu1 3b_dense__ppl_30k_h2o_pg19 status=complete
40
+ START gpu1 3b_dense__ppl_30k_moba_fineweb
41
+ DONE gpu0 3b_dense__ppl_30k_moba_arxiv status=complete
42
+ START gpu0 3b_dense__ppl_30k_moba_pg19
43
+ DONE gpu1 3b_dense__ppl_30k_moba_fineweb status=complete
44
+ START gpu1 3b_dense__ppl_30k_quest_arxiv
45
+ DONE gpu0 3b_dense__ppl_30k_moba_pg19 status=complete
46
+ START gpu0 3b_dense__ppl_30k_quest_fineweb
47
+ DONE gpu1 3b_dense__ppl_30k_quest_arxiv status=complete
48
+ START gpu1 3b_dense__ppl_30k_quest_pg19
49
+ DONE gpu0 3b_dense__ppl_30k_quest_fineweb status=complete
50
+ START gpu0 3b_dense__ppl_30k_sink_local_arxiv
51
+ DONE gpu1 3b_dense__ppl_30k_quest_pg19 status=complete
52
+ START gpu1 3b_dense__ppl_30k_sink_local_fineweb
53
+ DONE gpu0 3b_dense__ppl_30k_sink_local_arxiv status=complete
54
+ START gpu0 3b_dense__ppl_30k_sink_local_pg19
55
+ DONE gpu1 3b_dense__ppl_30k_sink_local_fineweb status=complete
56
+ START gpu1 3b_dense__ppl_30k_sliding_arxiv
57
+ DONE gpu0 3b_dense__ppl_30k_sink_local_pg19 status=complete
58
+ START gpu0 3b_dense__ppl_30k_sliding_fineweb
59
+ DONE gpu1 3b_dense__ppl_30k_sliding_arxiv status=complete
60
+ START gpu1 3b_dense__ppl_30k_sliding_pg19
61
+ DONE gpu0 3b_dense__ppl_30k_sliding_fineweb status=complete
62
+ START gpu0 3b_mixed__position_30k_fineweb
63
+ DONE gpu0 3b_mixed__position_30k_fineweb status=complete
64
+ START gpu0 3b_mixed__ppl_30k_dense_arxiv
65
+ DONE gpu1 3b_dense__ppl_30k_sliding_pg19 status=complete
66
+ START gpu1 3b_mixed__ppl_30k_dense_fineweb
67
+ DONE gpu0 3b_mixed__ppl_30k_dense_arxiv status=complete
68
+ START gpu0 3b_mixed__ppl_30k_dense_pg19
69
+ DONE gpu1 3b_mixed__ppl_30k_dense_fineweb status=complete
70
+ START gpu1 3b_mixed__ppl_30k_h2o_arxiv
71
+ DONE gpu0 3b_mixed__ppl_30k_dense_pg19 status=complete
72
+ START gpu0 3b_mixed__ppl_30k_h2o_fineweb
73
+ DONE gpu1 3b_mixed__ppl_30k_h2o_arxiv status=complete
74
+ START gpu1 3b_mixed__ppl_30k_h2o_pg19
75
+ DONE gpu0 3b_mixed__ppl_30k_h2o_fineweb status=complete
76
+ START gpu0 3b_mixed__ppl_30k_moba_arxiv
77
+ DONE gpu1 3b_mixed__ppl_30k_h2o_pg19 status=complete
78
+ START gpu1 3b_mixed__ppl_30k_moba_fineweb
79
+ DONE gpu0 3b_mixed__ppl_30k_moba_arxiv status=complete
80
+ START gpu0 3b_mixed__ppl_30k_moba_pg19
81
+ DONE gpu1 3b_mixed__ppl_30k_moba_fineweb status=complete
82
+ START gpu1 3b_mixed__ppl_30k_quest_arxiv
83
+ DONE gpu0 3b_mixed__ppl_30k_moba_pg19 status=complete
84
+ START gpu0 3b_mixed__ppl_30k_quest_fineweb
85
+ DONE gpu1 3b_mixed__ppl_30k_quest_arxiv status=complete
86
+ START gpu1 3b_mixed__ppl_30k_quest_pg19
87
+ DONE gpu0 3b_mixed__ppl_30k_quest_fineweb status=complete
88
+ START gpu0 3b_mixed__ppl_30k_sink_local_arxiv
89
+ DONE gpu1 3b_mixed__ppl_30k_quest_pg19 status=complete
90
+ START gpu1 3b_mixed__ppl_30k_sink_local_fineweb
91
+ DONE gpu0 3b_mixed__ppl_30k_sink_local_arxiv status=complete
92
+ START gpu0 3b_mixed__ppl_30k_sink_local_pg19
93
+ DONE gpu1 3b_mixed__ppl_30k_sink_local_fineweb status=complete
94
+ START gpu1 3b_mixed__ppl_30k_sliding_arxiv
95
+ DONE gpu0 3b_mixed__ppl_30k_sink_local_pg19 status=complete
96
+ START gpu0 3b_mixed__ppl_30k_sliding_fineweb
97
+ DONE gpu1 3b_mixed__ppl_30k_sliding_arxiv status=complete
98
+ START gpu1 3b_mixed__ppl_30k_sliding_pg19
99
+ DONE gpu0 3b_mixed__ppl_30k_sliding_fineweb status=complete
100
+ DONE gpu1 3b_mixed__ppl_30k_sliding_pg19 status=complete
101
+ finished complete=50/50 failed=0
epfl_final/train_logs/scale3b_h1gpu.log ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_16k_quest_fineweb
2
+ DONE gpu0 3b_dense__ppl_16k_quest_fineweb status=retrying
3
+ START gpu0 3b_dense__ppl_16k_sink_local_fineweb
4
+ DONE gpu0 3b_dense__ppl_16k_sink_local_fineweb status=retrying
5
+ START gpu0 3b_dense__ppl_16k_quest_fineweb
6
+ DONE gpu0 3b_dense__ppl_16k_quest_fineweb status=failed
7
+ START gpu0 3b_dense__ppl_16k_sink_local_fineweb
8
+ DONE gpu0 3b_dense__ppl_16k_sink_local_fineweb status=failed
9
+ finished complete=0/2 failed=2
10
+ Failed jobs: 3b_dense__ppl_16k_quest_fineweb, 3b_dense__ppl_16k_sink_local_fineweb
epfl_final/train_logs/scale3b_h2gpu.log ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_30k_random_gutenberg
2
+ START gpu1 3b_mixed__ppl_30k_random_pubmed
3
+ DONE gpu1 3b_mixed__ppl_30k_random_pubmed status=complete
4
+ START gpu1 3b_dense__ppl_16k_moba_fineweb
5
+ DONE gpu0 3b_dense__ppl_30k_random_gutenberg status=complete
6
+ START gpu0 3b_dense__ppl_16k_sliding_fineweb
7
+ DONE gpu1 3b_dense__ppl_16k_moba_fineweb status=retrying
8
+ START gpu1 3b_dense__passkey_16k_random
9
+ DONE gpu0 3b_dense__ppl_16k_sliding_fineweb status=retrying
10
+ START gpu0 3b_mixed__ppl_16k_quest_fineweb
11
+ DONE gpu0 3b_mixed__ppl_16k_quest_fineweb status=retrying
12
+ START gpu0 3b_mixed__ppl_16k_sink_local_fineweb
13
+ DONE gpu0 3b_mixed__ppl_16k_sink_local_fineweb status=retrying
14
+ START gpu0 3b_mixed__ppl_16k_moba_fineweb
15
+ DONE gpu0 3b_mixed__ppl_16k_moba_fineweb status=retrying
16
+ START gpu0 3b_mixed__ppl_16k_sliding_fineweb
17
+ DONE gpu0 3b_mixed__ppl_16k_sliding_fineweb status=retrying
18
+ START gpu0 3b_mixed__passkey_16k_random
19
+ DONE gpu1 3b_dense__passkey_16k_random status=complete
20
+ START gpu1 3b_dense__ruler_random_niah_multikey_30k
21
+ DONE gpu0 3b_mixed__passkey_16k_random status=complete
22
+ START gpu0 3b_dense__passkey_30k_random
23
+ DONE gpu1 3b_dense__ruler_random_niah_multikey_30k status=complete
24
+ START gpu1 3b_dense__efficiency_30k
25
+ DONE gpu0 3b_dense__passkey_30k_random status=complete
26
+ START gpu0 3b_dense__longbench_qasper
27
+ DONE gpu0 3b_dense__longbench_qasper status=complete
28
+ START gpu0 3b_dense__longbench_multifieldqa_en
29
+ DONE gpu0 3b_dense__longbench_multifieldqa_en status=complete
30
+ START gpu0 3b_dense__longbench_2wikimqa
31
+ DONE gpu0 3b_dense__longbench_2wikimqa status=complete
32
+ START gpu0 3b_mixed__ruler_random_niah_multikey_30k
33
+ DONE gpu1 3b_dense__efficiency_30k status=complete
34
+ START gpu1 3b_mixed__passkey_30k_random
35
+ DONE gpu0 3b_mixed__ruler_random_niah_multikey_30k status=complete
36
+ START gpu0 3b_mixed__efficiency_30k
37
+ DONE gpu1 3b_mixed__passkey_30k_random status=complete
38
+ START gpu1 3b_mixed__longbench_narrativeqa
39
+ DONE gpu1 3b_mixed__longbench_narrativeqa status=complete
40
+ START gpu1 3b_mixed__longbench_multifieldqa_en
41
+ DONE gpu1 3b_mixed__longbench_multifieldqa_en status=complete
42
+ START gpu1 3b_mixed__longbench_2wikimqa
43
+ DONE gpu1 3b_mixed__longbench_2wikimqa status=complete
44
+ START gpu1 3b_dense__harness_gsm8k
45
+ DONE gpu1 3b_dense__harness_gsm8k status=retrying
46
+ START gpu1 3b_mixed__harness_gsm8k
47
+ DONE gpu1 3b_mixed__harness_gsm8k status=retrying
48
+ START gpu1 3b_dense__ppl_16k_moba_fineweb
49
+ DONE gpu1 3b_dense__ppl_16k_moba_fineweb status=failed
50
+ START gpu1 3b_dense__ppl_16k_sliding_fineweb
51
+ DONE gpu1 3b_dense__ppl_16k_sliding_fineweb status=failed
52
+ START gpu1 3b_mixed__ppl_16k_quest_fineweb
53
+ DONE gpu1 3b_mixed__ppl_16k_quest_fineweb status=failed
54
+ START gpu1 3b_mixed__ppl_16k_sink_local_fineweb
55
+ DONE gpu1 3b_mixed__ppl_16k_sink_local_fineweb status=failed
56
+ START gpu1 3b_mixed__ppl_16k_moba_fineweb
57
+ DONE gpu1 3b_mixed__ppl_16k_moba_fineweb status=failed
58
+ START gpu1 3b_mixed__ppl_16k_sliding_fineweb
59
+ DONE gpu1 3b_mixed__ppl_16k_sliding_fineweb status=failed
60
+ START gpu1 3b_dense__harness_gsm8k
61
+ DONE gpu1 3b_dense__harness_gsm8k status=failed
62
+ START gpu1 3b_mixed__harness_gsm8k
63
+ DONE gpu1 3b_mixed__harness_gsm8k status=failed
64
+ DONE gpu0 3b_mixed__efficiency_30k status=complete
65
+ finished complete=16/24 failed=8
66
+ Failed jobs: 3b_dense__ppl_16k_moba_fineweb, 3b_dense__ppl_16k_sliding_fineweb, 3b_mixed__ppl_16k_quest_fineweb, 3b_mixed__ppl_16k_sink_local_fineweb, 3b_mixed__ppl_16k_moba_fineweb, 3b_mixed__ppl_16k_sliding_fineweb, 3b_dense__harness_gsm8k, 3b_mixed__harness_gsm8k
epfl_final/train_logs/scale3b_mixed_evals_20260804.log ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_mixed__ppl_8k_random_fineweb
2
+ DONE gpu0 3b_mixed__ppl_8k_random_fineweb status=complete
3
+ START gpu0 3b_mixed__ppl_8k_random_pg19
4
+ DONE gpu0 3b_mixed__ppl_8k_random_pg19 status=complete
5
+ START gpu0 3b_mixed__ppl_8k_random_arxiv
6
+ DONE gpu0 3b_mixed__ppl_8k_random_arxiv status=complete
7
+ START gpu0 3b_mixed__ppl_8k_quest_fineweb
8
+ DONE gpu0 3b_mixed__ppl_8k_quest_fineweb status=complete
9
+ START gpu0 3b_mixed__ppl_8k_quest_pg19
10
+ DONE gpu0 3b_mixed__ppl_8k_quest_pg19 status=complete
11
+ START gpu0 3b_mixed__ppl_8k_quest_arxiv
12
+ DONE gpu0 3b_mixed__ppl_8k_quest_arxiv status=complete
13
+ START gpu0 3b_mixed__ppl_8k_sink_local_fineweb
14
+ DONE gpu0 3b_mixed__ppl_8k_sink_local_fineweb status=complete
15
+ START gpu0 3b_mixed__ppl_8k_sink_local_pg19
16
+ DONE gpu0 3b_mixed__ppl_8k_sink_local_pg19 status=complete
17
+ START gpu0 3b_mixed__ppl_8k_sink_local_arxiv
18
+ DONE gpu0 3b_mixed__ppl_8k_sink_local_arxiv status=complete
19
+ START gpu0 3b_mixed__ppl_8k_dense_fineweb
20
+ DONE gpu0 3b_mixed__ppl_8k_dense_fineweb status=complete
21
+ START gpu0 3b_mixed__ppl_8k_dense_pg19
22
+ DONE gpu0 3b_mixed__ppl_8k_dense_pg19 status=complete
23
+ START gpu0 3b_mixed__ppl_8k_dense_arxiv
24
+ DONE gpu0 3b_mixed__ppl_8k_dense_arxiv status=complete
25
+ START gpu0 3b_mixed__ruler_random_niah_multikey_8k
26
+ DONE gpu0 3b_mixed__ruler_random_niah_multikey_8k status=complete
27
+ START gpu0 3b_mixed__passkey_8k_random
28
+ DONE gpu0 3b_mixed__passkey_8k_random status=complete
29
+ finished complete=28/28 failed=0
epfl_final/train_logs/scale3b_recompile.log ADDED
File without changes
epfl_final/train_logs/scale3b_topkfix.log ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ START gpu0 3b_dense__ppl_8k_topk_arxiv
2
+ START gpu1 3b_dense__ppl_8k_topk_fineweb
3
+ DONE gpu1 3b_dense__ppl_8k_topk_fineweb status=complete
4
+ START gpu1 3b_dense__ppl_8k_topk_pg19
5
+ DONE gpu0 3b_dense__ppl_8k_topk_arxiv status=complete
6
+ START gpu0 3b_mixed__ppl_8k_topk_arxiv
7
+ DONE gpu0 3b_mixed__ppl_8k_topk_arxiv status=complete
8
+ START gpu0 3b_mixed__ppl_8k_topk_fineweb
9
+ DONE gpu1 3b_dense__ppl_8k_topk_pg19 status=complete
10
+ START gpu1 3b_mixed__ppl_8k_topk_pg19
11
+ DONE gpu1 3b_mixed__ppl_8k_topk_pg19 status=complete
12
+ DONE gpu0 3b_mixed__ppl_8k_topk_fineweb status=complete
13
+ finished complete=6/6 failed=0
epfl_final/train_logs/wait_1p2b_then_365m_native30k.log ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ 2026-07-27T03:11:06Z waiter start latest_1p2b_step=41000
2
+ 2026-07-27T19:18:33Z waiter start latest_1p2b_step=46000
epfl_final/train_logs/wait_1p2b_then_365m_native30k.sh ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ REPO="$BASE/SparseAtt-baselines"
6
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
7
+ WATCHDOG="$BASE/train_logs/watchdog_365m_native30k_exact.sh"
8
+ LOG="$BASE/train_logs/wait_1p2b_then_365m_native30k.log"
9
+ ONEP2B="$BASE/checkpoints/l8k1_2b_mixed_seed43"
10
+
11
+ log() {
12
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$LOG"
13
+ }
14
+
15
+ latest_1p2b_step() {
16
+ "$PYTHON" - "$ONEP2B" <<'PY'
17
+ from pathlib import Path
18
+ import sys
19
+
20
+ steps = []
21
+ for checkpoint in Path(sys.argv[1]).glob("run_*/checkpoint-*"):
22
+ try:
23
+ step = int(checkpoint.name.rsplit("-", 1)[1])
24
+ except ValueError:
25
+ continue
26
+ required = [checkpoint / "model.pt", checkpoint / "training_state.pt"]
27
+ required.extend(checkpoint / f"rng_state_rank{rank}.pt" for rank in range(4))
28
+ required.extend(
29
+ checkpoint / f"loader_gen_state_rank{rank}.pt" for rank in range(4)
30
+ )
31
+ if all(path.is_file() and path.stat().st_size > 0 for path in required):
32
+ steps.append(step)
33
+ print(max(steps) if steps else 0)
34
+ PY
35
+ }
36
+
37
+ log "waiter start latest_1p2b_step=$(latest_1p2b_step)"
38
+ while [ "$(latest_1p2b_step)" -lt 50462 ]; do
39
+ sleep 60
40
+ done
41
+
42
+ while pgrep -f "[t]rain_resume_exact.py --config configs/1p2b_mixed_8k_seed43_4gpu.runtime.json" >/dev/null; do
43
+ sleep 30
44
+ done
45
+
46
+ log "1.2B complete; launching four native-30k 365M seed watchdogs"
47
+ nohup bash "$WATCHDOG" \
48
+ dense_365m_30k_seed43 \
49
+ "$REPO/configs/multiseed/dense_365m_30k_seed43.json" \
50
+ "$BASE/checkpoints/l30k365m_dense_seed43" 0 \
51
+ >> "$BASE/train_logs/dense_365m_30k_seed43.exact.supervisor.log" 2>&1 &
52
+ nohup bash "$WATCHDOG" \
53
+ dense_365m_30k_seed44 \
54
+ "$REPO/configs/multiseed/dense_365m_30k_seed44.json" \
55
+ "$BASE/checkpoints/l30k365m_dense_seed44" 1 \
56
+ >> "$BASE/train_logs/dense_365m_30k_seed44.exact.supervisor.log" 2>&1 &
57
+ nohup bash "$WATCHDOG" \
58
+ mixed_365m_30k_seed43 \
59
+ "$REPO/configs/multiseed/mixed_365m_30k_seed43.json" \
60
+ "$BASE/checkpoints/l30k365m_mixed_seed43" 2 \
61
+ >> "$BASE/train_logs/mixed_365m_30k_seed43.exact.supervisor.log" 2>&1 &
62
+ nohup bash "$WATCHDOG" \
63
+ mixed_365m_30k_seed44 \
64
+ "$REPO/configs/multiseed/mixed_365m_30k_seed44.json" \
65
+ "$BASE/checkpoints/l30k365m_mixed_seed44" 3 \
66
+ >> "$BASE/train_logs/mixed_365m_30k_seed44.exact.supervisor.log" 2>&1 &
67
+ log "all four seed watchdogs launched"
epfl_final/train_logs/wait_1p2b_then_365m_native30k.supervisor.log ADDED
File without changes
epfl_final/train_logs/wait_1p2b_then_dense_ruler_then_365m.log ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ 2026-07-27T22:07:44Z waiter start latest_1p2b_step=47000
2
+ 2026-07-28T04:29:09Z launching failed Dense 30k random-RULER retry on GPU 0
epfl_final/train_logs/wait_1p2b_then_dense_ruler_then_365m.sh ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ EVAL_REPO="$BASE/SparseAtt"
6
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
7
+ ONEP2B="$BASE/checkpoints/l8k1_2b_mixed_seed43"
8
+ SEED_HANDOFF="$BASE/train_logs/wait_1p2b_then_365m_native30k.sh"
9
+ RESULT="$EVAL_REPO/eval/results/FINAL_DENSE_RULER_1P2B_20260727/ruler/ruler_1p2b_dense_random_niah_multikey_30k.tsv"
10
+ LOG="$BASE/train_logs/wait_1p2b_then_dense_ruler_then_365m.log"
11
+
12
+ log() {
13
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$LOG"
14
+ }
15
+
16
+ latest_1p2b_step() {
17
+ "$PYTHON" - "$ONEP2B" <<'PY'
18
+ from pathlib import Path
19
+ import sys
20
+
21
+ steps = []
22
+ for checkpoint in Path(sys.argv[1]).glob("run_*/checkpoint-*"):
23
+ try:
24
+ step = int(checkpoint.name.rsplit("-", 1)[1])
25
+ except ValueError:
26
+ continue
27
+ required = [checkpoint / "model.pt", checkpoint / "training_state.pt"]
28
+ required.extend(checkpoint / f"rng_state_rank{rank}.pt" for rank in range(4))
29
+ required.extend(
30
+ checkpoint / f"loader_gen_state_rank{rank}.pt" for rank in range(4)
31
+ )
32
+ if all(path.is_file() and path.stat().st_size > 0 for path in required):
33
+ steps.append(step)
34
+ print(max(steps) if steps else 0)
35
+ PY
36
+ }
37
+
38
+ result_complete() {
39
+ [ -s "$RESULT" ] && [ "$(grep -cve '^[[:space:]]*$' "$RESULT")" -eq 16 ]
40
+ }
41
+
42
+ log "waiter start latest_1p2b_step=$(latest_1p2b_step)"
43
+ while [ "$(latest_1p2b_step)" -lt 50462 ]; do
44
+ sleep 60
45
+ done
46
+
47
+ while pgrep -f "[t]rain_resume_exact.py --config configs/1p2b_mixed_8k_seed43_4gpu.runtime.json" >/dev/null; do
48
+ sleep 30
49
+ done
50
+ while nvidia-smi --query-compute-apps=pid --format=csv,noheader 2>/dev/null | grep -q '[0-9]'; do
51
+ sleep 30
52
+ done
53
+
54
+ while ! result_complete; do
55
+ log "launching failed Dense 30k random-RULER retry on GPU 0"
56
+ (
57
+ cd "$EVAL_REPO" &&
58
+ CUDA_VISIBLE_DEVICES=0 \
59
+ PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True \
60
+ "$PYTHON" eval/run_final_dense_1p2b_ruler_refresh.py --gpus 0
61
+ ) >> "$BASE/train_logs/final_dense_ruler_retry.log" 2>&1
62
+ if ! result_complete; then
63
+ log "Dense RULER retry incomplete; retrying in 60 seconds"
64
+ sleep 60
65
+ fi
66
+ done
67
+
68
+ log "Dense RULER complete; launching native-30k 365M handoff"
69
+ exec bash "$SEED_HANDOFF"
epfl_final/train_logs/wait_1p2b_then_dense_ruler_then_365m.supervisor.log ADDED
File without changes
epfl_final/train_logs/wait_random_ruler_then_1p2b.log ADDED
@@ -0,0 +1 @@
 
 
1
+ 2026-07-27T16:57:40Z waiter start
epfl_final/train_logs/wait_random_ruler_then_1p2b.sh ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ LOG="$BASE/train_logs/wait_random_ruler_then_1p2b.log"
6
+ ONEP2B_WATCHDOG="$BASE/train_logs/watchdog_1p2b_mixed_seed43_exact.sh"
7
+ SEED_HANDOFF="$BASE/train_logs/wait_1p2b_then_365m_native30k.sh"
8
+ ONEP2B_LOCK="$BASE/train_logs/mixed8k1p2b_s43.exact.lock"
9
+
10
+ log() {
11
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$LOG"
12
+ }
13
+
14
+ log "waiter start"
15
+ while pgrep -f "[r]un_final_random_1p2b_ruler_30k.py|[r]uler_eval.py.*FINAL_RANDOM_RULER_30K_1P2B_20260727" >/dev/null; do
16
+ sleep 60
17
+ done
18
+
19
+ while nvidia-smi --query-compute-apps=pid --format=csv,noheader 2>/dev/null | grep -q '[0-9]'; do
20
+ sleep 30
21
+ done
22
+
23
+ rm -f "$ONEP2B_LOCK"
24
+ log "random-RULER complete and GPUs clear; launching 1.2B exact-resume watchdog"
25
+ nohup bash "$ONEP2B_WATCHDOG" \
26
+ >> "$BASE/train_logs/mixed8k1p2b_s43.exact.supervisor.log" 2>&1 &
27
+
28
+ log "launching post-1.2B native-30k 365M handoff waiter"
29
+ nohup bash "$SEED_HANDOFF" \
30
+ >> "$BASE/train_logs/wait_1p2b_then_365m_native30k.supervisor.log" 2>&1 &
31
+ log "handoff chain installed"
epfl_final/train_logs/watchdog_365m_native30k_exact.sh ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ JOB="$1"
5
+ SOURCE_CFG="$2"
6
+ OUTDIR="$3"
7
+ GPU="$4"
8
+
9
+ BASE=/mloscratch/homes/navasard/sparse
10
+ REPO="$BASE/SparseAtt-baselines"
11
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
12
+ TORCHRUN=/mloscratch/homes/navasard/conda/bin/torchrun
13
+ TRAINER=train_resume_exact.py
14
+ RUNTIME_CFG="$REPO/configs/multiseed/${JOB}.runtime.json"
15
+ TOTAL=11700
16
+ WLOG="$BASE/train_logs/${JOB}.exact.watch.log"
17
+ RUNLOG="$BASE/train_logs/${JOB}.exact.run.log"
18
+ LOCK="$BASE/train_logs/${JOB}.exact.lock"
19
+ PROC_PAT="[t]rain_resume_exact.py --config configs/multiseed/${JOB}.runtime.json"
20
+
21
+ export HF_HOME=/mloscratch/homes/navasard/hf_cache
22
+
23
+ log() {
24
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$WLOG"
25
+ }
26
+
27
+ latest_checkpoint() {
28
+ "$PYTHON" - "$OUTDIR" <<'PY'
29
+ from pathlib import Path
30
+ import sys
31
+
32
+ root = Path(sys.argv[1])
33
+ candidates = sorted(
34
+ root.glob("run_*/checkpoint-*"),
35
+ key=lambda path: int(path.name.rsplit("-", 1)[1]),
36
+ reverse=True,
37
+ )
38
+ for checkpoint in candidates:
39
+ required = [
40
+ checkpoint / "model.pt",
41
+ checkpoint / "training_state.pt",
42
+ checkpoint / "rng_state_rank0.pt",
43
+ checkpoint / "loader_gen_state_rank0.pt",
44
+ ]
45
+ if all(path.is_file() and path.stat().st_size > 0 for path in required):
46
+ print(checkpoint)
47
+ break
48
+ PY
49
+ }
50
+
51
+ latest_step() {
52
+ local checkpoint
53
+ checkpoint=$(latest_checkpoint)
54
+ if [ -n "${checkpoint:-}" ]; then
55
+ basename "$checkpoint" | sed 's/checkpoint-//'
56
+ fi
57
+ }
58
+
59
+ process_count() {
60
+ pgrep -f "$PROC_PAT" 2>/dev/null | grep -c '[0-9]'
61
+ }
62
+
63
+ write_runtime_config() {
64
+ local checkpoint="$1"
65
+ "$PYTHON" - "$SOURCE_CFG" "$RUNTIME_CFG" "$checkpoint" <<'PY'
66
+ import json
67
+ from pathlib import Path
68
+ import sys
69
+
70
+ source, destination, checkpoint = map(Path, sys.argv[1:])
71
+ config = json.loads(source.read_text())
72
+ training = config["training"]
73
+ training["resume_from_checkpoint"] = str(checkpoint)
74
+ training["preserve_checkpoint_lr"] = True
75
+ destination.write_text(json.dumps(config, indent=2) + "\n")
76
+ PY
77
+ }
78
+
79
+ launch() {
80
+ local checkpoint
81
+ checkpoint=$(latest_checkpoint)
82
+ if [ -z "${checkpoint:-}" ]; then
83
+ log "no complete rank-0 checkpoint found; refusing launch"
84
+ return 1
85
+ fi
86
+ write_runtime_config "$checkpoint" || return 1
87
+ cd "$REPO" || return 1
88
+ log "launch checkpoint=$checkpoint GPU=$GPU"
89
+ setsid nohup env \
90
+ CUDA_VISIBLE_DEVICES="$GPU" \
91
+ PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True \
92
+ TORCHINDUCTOR_CACHE_DIR="$BASE/.torchinductor_${JOB}" \
93
+ "$TORCHRUN" --standalone --nproc_per_node=1 \
94
+ "$TRAINER" --config "configs/multiseed/${JOB}.runtime.json" \
95
+ >> "$RUNLOG" 2>&1 < /dev/null &
96
+ }
97
+
98
+ if [ -f "$LOCK" ]; then
99
+ old_pid=$(cat "$LOCK" 2>/dev/null || true)
100
+ if [ -n "${old_pid:-}" ] && kill -0 "$old_pid" 2>/dev/null; then
101
+ exit 0
102
+ fi
103
+ fi
104
+
105
+ echo $$ > "$LOCK"
106
+ log "watchdog start pid=$$ latest_step=$(latest_step)"
107
+
108
+ if [ "$(process_count)" -eq 0 ] && [ "$(latest_step)" -lt "$TOTAL" ]; then
109
+ launch
110
+ fi
111
+
112
+ dead_checks=0
113
+ while true; do
114
+ if [ "$(latest_step)" -ge "$TOTAL" ] 2>/dev/null; then
115
+ log "complete latest_step=$(latest_step)"
116
+ rm -f "$LOCK"
117
+ exit 0
118
+ fi
119
+ if [ "$(process_count)" -eq 0 ]; then
120
+ dead_checks=$((dead_checks + 1))
121
+ else
122
+ dead_checks=0
123
+ fi
124
+ if [ "$dead_checks" -ge 10 ]; then
125
+ log "process absent for 5 minutes; relaunching latest complete checkpoint"
126
+ launch
127
+ dead_checks=0
128
+ fi
129
+ sleep 30
130
+ done
epfl_final/train_logs/watchdog_3b_dense_4gpu_exact.sh ADDED
@@ -0,0 +1,135 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ REPO="$BASE/SparseAtt-baselines"
6
+ OUTDIR="$BASE/checkpoints/l8k3b_dense_60b"
7
+ SOURCE_CFG="$REPO/configs/ladder8k/dense_3b_60b_4gpu_exact.json"
8
+ RUNTIME_CFG="$REPO/configs/ladder8k/dense_3b_60b_4gpu_exact.runtime.json"
9
+ TRAINER=train_resume_exact.py
10
+ TORCHRUN=/mloscratch/homes/navasard/conda/bin/torchrun
11
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
12
+ TOTAL=122070
13
+ WLOG="$BASE/train_logs/dense8k3b_60b.4gpu.watch.log"
14
+ RUNLOG="$BASE/train_logs/dense8k3b_60b.4gpu.run.log"
15
+ LOCK="$BASE/train_logs/dense8k3b_60b.4gpu.lock"
16
+ PROC_PAT="[t]rain_resume_exact.py --config configs/ladder8k/dense_3b_60b_4gpu_exact.runtime.json"
17
+
18
+ export HF_HOME=/mloscratch/homes/navasard/hf_cache
19
+
20
+ log() {
21
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$WLOG"
22
+ }
23
+
24
+ latest_checkpoint() {
25
+ "$PYTHON" - "$OUTDIR" <<'PY'
26
+ from pathlib import Path
27
+ import sys
28
+
29
+ root = Path(sys.argv[1])
30
+ candidates = sorted(
31
+ root.glob("run_*/checkpoint-*"),
32
+ key=lambda path: int(path.name.rsplit("-", 1)[1]),
33
+ reverse=True,
34
+ )
35
+ for checkpoint in candidates:
36
+ required = [checkpoint / "model.pt", checkpoint / "training_state.pt"]
37
+ required.extend(checkpoint / f"rng_state_rank{rank}.pt" for rank in range(4))
38
+ required.extend(
39
+ checkpoint / f"loader_gen_state_rank{rank}.pt" for rank in range(4)
40
+ )
41
+ if all(path.is_file() and path.stat().st_size > 0 for path in required):
42
+ print(checkpoint)
43
+ break
44
+ PY
45
+ }
46
+
47
+ latest_step() {
48
+ local checkpoint
49
+ checkpoint=$(latest_checkpoint)
50
+ if [ -n "${checkpoint:-}" ]; then
51
+ basename "$checkpoint" | sed 's/checkpoint-//'
52
+ fi
53
+ }
54
+
55
+ is_complete() {
56
+ local step
57
+ step=$(latest_step)
58
+ [ -n "${step:-}" ] && [ "$step" -ge "$TOTAL" ] 2>/dev/null
59
+ }
60
+
61
+ process_count() {
62
+ pgrep -f "$PROC_PAT" 2>/dev/null | grep -c '[0-9]'
63
+ }
64
+
65
+ write_runtime_config() {
66
+ local checkpoint="$1"
67
+ "$PYTHON" - "$SOURCE_CFG" "$RUNTIME_CFG" "$checkpoint" <<'PY'
68
+ import json
69
+ from pathlib import Path
70
+ import sys
71
+
72
+ source, destination, checkpoint = map(Path, sys.argv[1:])
73
+ config = json.loads(source.read_text())
74
+ training = config["training"]
75
+ training["resume_from_checkpoint"] = str(checkpoint)
76
+ training["preserve_checkpoint_lr"] = True
77
+ training["num_epochs"] = max(3, int(training.get("num_epochs", 0)))
78
+ destination.write_text(json.dumps(config, indent=2) + "\n")
79
+ PY
80
+ }
81
+
82
+ launch() {
83
+ local checkpoint
84
+ checkpoint=$(latest_checkpoint)
85
+ if [ -z "${checkpoint:-}" ]; then
86
+ log "no complete four-rank checkpoint found; refusing launch"
87
+ return 1
88
+ fi
89
+ write_runtime_config "$checkpoint" || return 1
90
+ cd "$REPO" || return 1
91
+ log "launch checkpoint=$checkpoint GPUs=0,1,2,3 nproc=4"
92
+ setsid nohup env \
93
+ CUDA_VISIBLE_DEVICES=0,1,2,3 \
94
+ PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True \
95
+ TORCHINDUCTOR_CACHE_DIR="$BASE/.torchinductor_3b_dense_4gpu" \
96
+ "$TORCHRUN" --standalone --nproc_per_node=4 \
97
+ "$TRAINER" --config configs/ladder8k/dense_3b_60b_4gpu_exact.runtime.json \
98
+ >> "$RUNLOG" 2>&1 < /dev/null &
99
+ }
100
+
101
+ if [ -f "$LOCK" ]; then
102
+ old_pid=$(cat "$LOCK" 2>/dev/null || true)
103
+ if [ -n "${old_pid:-}" ] && kill -0 "$old_pid" 2>/dev/null; then
104
+ exit 0
105
+ fi
106
+ fi
107
+
108
+ echo $$ > "$LOCK"
109
+ log "watchdog start pid=$$ latest_step=$(latest_step)"
110
+
111
+ if [ "$(process_count)" -eq 0 ] && ! is_complete; then
112
+ launch
113
+ fi
114
+
115
+ dead_checks=0
116
+ while true; do
117
+ if is_complete; then
118
+ log "complete latest_step=$(latest_step)"
119
+ rm -f "$LOCK"
120
+ exit 0
121
+ fi
122
+
123
+ if [ "$(process_count)" -eq 0 ]; then
124
+ dead_checks=$((dead_checks + 1))
125
+ else
126
+ dead_checks=0
127
+ fi
128
+
129
+ if [ "$dead_checks" -ge 10 ]; then
130
+ log "process absent for 5 minutes; relaunching latest complete checkpoint"
131
+ launch
132
+ dead_checks=0
133
+ fi
134
+ sleep 30
135
+ done
epfl_final/train_logs/watchdog_3b_dense_exact.sh ADDED
@@ -0,0 +1,151 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ REPO="$BASE/SparseAtt-baselines"
6
+ OUTDIR="$BASE/checkpoints/l8k3b_dense_60b"
7
+ SOURCE_CFG="$REPO/configs/ladder8k/dense_3b_60b_6gpu.json"
8
+ RUNTIME_CFG="$REPO/configs/ladder8k/dense_3b_60b_6gpu.runtime.json"
9
+ TRAINER=train_resume_exact.py
10
+ TORCHRUN=/mloscratch/homes/navasard/conda/bin/torchrun
11
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
12
+ TOTAL=122070
13
+ MIGRATION_STEP=78000
14
+ WLOG="$BASE/train_logs/dense8k3b_60b.watch.log"
15
+ RUNLOG="$BASE/train_logs/dense8k3b_60b.run.log"
16
+ LOCK="$BASE/train_logs/dense8k3b_60b.lock"
17
+ PROC_PAT="[t]rain_resume_exact.py --config configs/ladder8k/dense_3b_60b_6gpu.runtime.json"
18
+
19
+ export HF_HOME=/mloscratch/homes/navasard/hf_cache
20
+
21
+ log() {
22
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$WLOG"
23
+ }
24
+
25
+ latest_checkpoint() {
26
+ "$PYTHON" - "$OUTDIR" "$MIGRATION_STEP" <<'PY'
27
+ from pathlib import Path
28
+ import sys
29
+
30
+ root = Path(sys.argv[1])
31
+ migration_step = int(sys.argv[2])
32
+ candidates = sorted(
33
+ root.glob("run_*/checkpoint-*"),
34
+ key=lambda path: int(path.name.rsplit("-", 1)[1]),
35
+ reverse=True,
36
+ )
37
+ for checkpoint in candidates:
38
+ step = int(checkpoint.name.rsplit("-", 1)[1])
39
+ core = [checkpoint / "model.pt", checkpoint / "training_state.pt"]
40
+ six_rank = [
41
+ checkpoint / f"rng_state_rank{rank}.pt" for rank in range(6)
42
+ ]
43
+ six_rank.extend(
44
+ checkpoint / f"loader_gen_state_rank{rank}.pt" for rank in range(6)
45
+ )
46
+ four_rank = [
47
+ checkpoint / f"rng_state_rank{rank}.pt" for rank in range(4)
48
+ ]
49
+ four_rank.extend(
50
+ checkpoint / f"loader_gen_state_rank{rank}.pt" for rank in range(4)
51
+ )
52
+ complete = lambda paths: all(
53
+ path.is_file() and path.stat().st_size > 0 for path in paths
54
+ )
55
+ if complete(core) and (
56
+ complete(six_rank) or (step == migration_step and complete(four_rank))
57
+ ):
58
+ print(checkpoint)
59
+ break
60
+ PY
61
+ }
62
+
63
+ latest_step() {
64
+ local checkpoint
65
+ checkpoint=$(latest_checkpoint)
66
+ if [ -n "${checkpoint:-}" ]; then
67
+ basename "$checkpoint" | sed 's/checkpoint-//'
68
+ fi
69
+ }
70
+
71
+ is_complete() {
72
+ local step
73
+ step=$(latest_step)
74
+ [ -n "${step:-}" ] && [ "$step" -ge "$TOTAL" ] 2>/dev/null
75
+ }
76
+
77
+ process_count() {
78
+ pgrep -f "$PROC_PAT" 2>/dev/null | grep -c '[0-9]'
79
+ }
80
+
81
+ write_runtime_config() {
82
+ local checkpoint="$1"
83
+ "$PYTHON" - "$SOURCE_CFG" "$RUNTIME_CFG" "$checkpoint" <<'PY'
84
+ import json
85
+ from pathlib import Path
86
+ import sys
87
+
88
+ source, destination, checkpoint = map(Path, sys.argv[1:])
89
+ config = json.loads(source.read_text())
90
+ training = config["training"]
91
+ training["resume_from_checkpoint"] = str(checkpoint)
92
+ training["preserve_checkpoint_lr"] = True
93
+ training["num_epochs"] = max(3, int(training.get("num_epochs", 0)))
94
+ destination.write_text(json.dumps(config, indent=2) + "\n")
95
+ PY
96
+ }
97
+
98
+ launch() {
99
+ local checkpoint
100
+ checkpoint=$(latest_checkpoint)
101
+ if [ -z "${checkpoint:-}" ]; then
102
+ log "no complete six-rank or approved migration checkpoint found; refusing launch"
103
+ return 1
104
+ fi
105
+ write_runtime_config "$checkpoint" || return 1
106
+ cd "$REPO" || return 1
107
+ log "launch checkpoint=$checkpoint GPUs=0,1,2,3,4,5 nproc=6"
108
+ setsid nohup env \
109
+ CUDA_VISIBLE_DEVICES=0,1,2,3,4,5 \
110
+ PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True \
111
+ TORCHINDUCTOR_CACHE_DIR="$BASE/.torchinductor_3b_dense" \
112
+ "$TORCHRUN" --standalone --nproc_per_node=6 \
113
+ "$TRAINER" --config configs/ladder8k/dense_3b_60b_6gpu.runtime.json \
114
+ >> "$RUNLOG" 2>&1 < /dev/null &
115
+ }
116
+
117
+ if [ -f "$LOCK" ]; then
118
+ old_pid=$(cat "$LOCK" 2>/dev/null || true)
119
+ if [ -n "${old_pid:-}" ] && kill -0 "$old_pid" 2>/dev/null; then
120
+ exit 0
121
+ fi
122
+ fi
123
+
124
+ echo $$ > "$LOCK"
125
+ log "watchdog start pid=$$ latest_step=$(latest_step)"
126
+
127
+ if [ "$(process_count)" -eq 0 ] && ! is_complete; then
128
+ launch
129
+ fi
130
+
131
+ dead_checks=0
132
+ while true; do
133
+ if is_complete; then
134
+ log "complete latest_step=$(latest_step)"
135
+ rm -f "$LOCK"
136
+ exit 0
137
+ fi
138
+
139
+ if [ "$(process_count)" -eq 0 ]; then
140
+ dead_checks=$((dead_checks + 1))
141
+ else
142
+ dead_checks=0
143
+ fi
144
+
145
+ if [ "$dead_checks" -ge 10 ]; then
146
+ log "process absent for 5 minutes; relaunching latest complete checkpoint"
147
+ launch
148
+ dead_checks=0
149
+ fi
150
+ sleep 30
151
+ done
epfl_final/train_logs/watchdog_3b_mixed_4gpu_exact.sh ADDED
@@ -0,0 +1,134 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -u
3
+
4
+ BASE=/mloscratch/homes/navasard/sparse
5
+ REPO="$BASE/SparseAtt-baselines"
6
+ OUTDIR="$BASE/checkpoints/l8k3b_mixed_60b"
7
+ SOURCE_CFG="$REPO/configs/ladder8k/mixed_3b_60b_4gpu_exact.json"
8
+ RUNTIME_CFG="$REPO/configs/ladder8k/mixed_3b_60b_4gpu_exact.runtime.json"
9
+ TRAINER=train_resume_exact.py
10
+ TORCHRUN=/mloscratch/homes/navasard/conda/bin/torchrun
11
+ PYTHON=/mloscratch/homes/navasard/conda/bin/python3.13
12
+ TOTAL=122070
13
+ WLOG="$BASE/train_logs/mixed8k3b_60b.4gpu.exact.watch.log"
14
+ RUNLOG="$BASE/train_logs/mixed8k3b_60b.4gpu.exact.run.log"
15
+ LOCK="$BASE/train_logs/mixed8k3b_60b.4gpu.exact.lock"
16
+ PROC_PAT="[t]rain_resume_exact.py --config configs/ladder8k/mixed_3b_60b_4gpu_exact.runtime.json"
17
+
18
+ export HF_HOME=/mloscratch/homes/navasard/hf_cache
19
+
20
+ log() {
21
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) $*" >> "$WLOG"
22
+ }
23
+
24
+ latest_checkpoint() {
25
+ "$PYTHON" - "$OUTDIR" <<'PY'
26
+ from pathlib import Path
27
+ import sys
28
+
29
+ root = Path(sys.argv[1])
30
+ candidates = sorted(
31
+ root.glob("run_*/checkpoint-*"),
32
+ key=lambda path: int(path.name.rsplit("-", 1)[1]),
33
+ reverse=True,
34
+ )
35
+ for checkpoint in candidates:
36
+ required = [checkpoint / "model.pt", checkpoint / "training_state.pt"]
37
+ required.extend(checkpoint / f"rng_state_rank{rank}.pt" for rank in range(4))
38
+ required.extend(
39
+ checkpoint / f"loader_gen_state_rank{rank}.pt" for rank in range(4)
40
+ )
41
+ if all(path.is_file() and path.stat().st_size > 0 for path in required):
42
+ print(checkpoint)
43
+ break
44
+ PY
45
+ }
46
+
47
+ latest_step() {
48
+ local checkpoint
49
+ checkpoint=$(latest_checkpoint)
50
+ if [ -n "${checkpoint:-}" ]; then
51
+ basename "$checkpoint" | sed 's/checkpoint-//'
52
+ fi
53
+ }
54
+
55
+ is_complete() {
56
+ local step
57
+ step=$(latest_step)
58
+ [ -n "${step:-}" ] && [ "$step" -ge "$TOTAL" ] 2>/dev/null
59
+ }
60
+
61
+ process_count() {
62
+ pgrep -f "$PROC_PAT" 2>/dev/null | grep -c '[0-9]'
63
+ }
64
+
65
+ write_runtime_config() {
66
+ local checkpoint="$1"
67
+ "$PYTHON" - "$SOURCE_CFG" "$RUNTIME_CFG" "$checkpoint" <<'PY'
68
+ import json
69
+ from pathlib import Path
70
+ import sys
71
+
72
+ source, destination, checkpoint = map(Path, sys.argv[1:])
73
+ config = json.loads(source.read_text())
74
+ training = config["training"]
75
+ training["resume_from_checkpoint"] = str(checkpoint)
76
+ training["preserve_checkpoint_lr"] = True
77
+ destination.write_text(json.dumps(config, indent=2) + "\n")
78
+ PY
79
+ }
80
+
81
+ launch() {
82
+ local checkpoint
83
+ checkpoint=$(latest_checkpoint)
84
+ if [ -z "${checkpoint:-}" ]; then
85
+ log "no complete four-rank checkpoint found; refusing launch"
86
+ return 1
87
+ fi
88
+ write_runtime_config "$checkpoint" || return 1
89
+ cd "$REPO" || return 1
90
+ log "launch checkpoint=$checkpoint GPUs=0,1,2,3 nproc=4"
91
+ setsid nohup env \
92
+ CUDA_VISIBLE_DEVICES=0,1,2,3 \
93
+ PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True \
94
+ TORCHINDUCTOR_CACHE_DIR="$BASE/.torchinductor_3b_mixed_4gpu" \
95
+ "$TORCHRUN" --standalone --nproc_per_node=4 \
96
+ "$TRAINER" --config configs/ladder8k/mixed_3b_60b_4gpu_exact.runtime.json \
97
+ >> "$RUNLOG" 2>&1 < /dev/null &
98
+ }
99
+
100
+ if [ -f "$LOCK" ]; then
101
+ old_pid=$(cat "$LOCK" 2>/dev/null || true)
102
+ if [ -n "${old_pid:-}" ] && kill -0 "$old_pid" 2>/dev/null; then
103
+ exit 0
104
+ fi
105
+ fi
106
+
107
+ echo $$ > "$LOCK"
108
+ log "watchdog start pid=$$ latest_step=$(latest_step)"
109
+
110
+ if [ "$(process_count)" -eq 0 ] && ! is_complete; then
111
+ launch
112
+ fi
113
+
114
+ dead_checks=0
115
+ while true; do
116
+ if is_complete; then
117
+ log "complete latest_step=$(latest_step)"
118
+ rm -f "$LOCK"
119
+ exit 0
120
+ fi
121
+
122
+ if [ "$(process_count)" -eq 0 ]; then
123
+ dead_checks=$((dead_checks + 1))
124
+ else
125
+ dead_checks=0
126
+ fi
127
+
128
+ if [ "$dead_checks" -ge 10 ]; then
129
+ log "process absent for 5 minutes; relaunching latest complete checkpoint"
130
+ launch
131
+ dead_checks=0
132
+ fi
133
+ sleep 30
134
+ done