Upload train/train_ounce100m.py with huggingface_hub
Browse files- 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 |
-
|
|
|
|
|
|
|
| 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+
|
| 239 |
-
|
| 240 |
-
|
| 241 |
-
|
| 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=
|
|
|
|
| 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)
|