Cion-lab commited on
Commit
c3592b7
·
verified ·
1 Parent(s): 758d461

Upload train/train_ounce100m.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. train/train_ounce100m.py +9 -6
train/train_ounce100m.py CHANGED
@@ -232,16 +232,19 @@ def main():
232
  ap.add_argument("--out", default="/kaggle/working/run")
233
  ap.add_argument("--hub-repo", default="", help="dataset repo for checkpoints; empty = no upload")
234
  ap.add_argument("--hub-repo-type", default="dataset", choices=["dataset", "model"])
235
- ap.add_argument("--seq-len", type=int, default=2048)
 
 
236
  ap.add_argument("--attn", default="eager", choices=["eager", "sdpa", "flash_attention_2"],
237
  help="p0c measured eager beating SDPA on Turing; Gate 3 P2/A-B measured +52 % for "
238
- "eager at seq 1024 and an OOM at 2048. flash_attention_2 needs sm80+ and is not "
239
- "available on a T4")
240
- ap.add_argument("--grad-ckpt", action="store_true",
241
- help="trade ~30%% recompute for activation memory; the only route to eager at 2048")
242
  ap.add_argument("--layers", type=int, default=0)
243
  ap.add_argument("--hidden", type=int, default=0)
244
- ap.add_argument("--micro-batch", type=int, default=2)
 
245
  ap.add_argument("--accum", type=int, default=32)
246
  ap.add_argument("--lr", type=float, default=6e-4)
247
  ap.add_argument("--tokens", type=int, default=1_000_000_000)
 
232
  ap.add_argument("--out", default="/kaggle/working/run")
233
  ap.add_argument("--hub-repo", default="", help="dataset repo for checkpoints; empty = no upload")
234
  ap.add_argument("--hub-repo-type", default="dataset", choices=["dataset", "model"])
235
+ # D-011: these ARE the frozen main-run values (measured 7,732-7,828 tok/s at 1024/eager on 2xT4), so
236
+ # that launching the run does not depend on remembering a flag string.
237
+ ap.add_argument("--seq-len", type=int, default=1024)
238
  ap.add_argument("--attn", default="eager", choices=["eager", "sdpa", "flash_attention_2"],
239
  help="p0c measured eager beating SDPA on Turing; Gate 3 P2/A-B measured +52 % for "
240
+ "eager at seq 1024 and an OOM at 2048. flash_attention_2 needs sm80+")
241
+ ap.add_argument("--grad-ckpt", default=True, action=argparse.BooleanOptionalAction,
242
+ help="on by default: it is what keeps peak memory at ~7 GB instead of 12 GB, and the "
243
+ "measured rate cost at 1024 was nil (7,828 with GC at m8 vs 7,732 without at m4)")
244
  ap.add_argument("--layers", type=int, default=0)
245
  ap.add_argument("--hidden", type=int, default=0)
246
+ ap.add_argument("--micro-batch", type=int, default=4,
247
+ help="4 x 1024 x 32 accum x 2 cards = 262,144 tokens/step, the frozen batch size")
248
  ap.add_argument("--accum", type=int, default=32)
249
  ap.add_argument("--lr", type=float, default=6e-4)
250
  ap.add_argument("--tokens", type=int, default=1_000_000_000)