Andrej Karpathy commited on
Commit ·
c16db28
1
Parent(s): 5019acc
fix small bug with params logging and batch size
Browse files- runs/scaling_laws.sh +14 -3
runs/scaling_laws.sh
CHANGED
|
@@ -8,7 +8,7 @@ FLOPS_BUDGETS=(
|
|
| 8 |
4.64e18
|
| 9 |
1e19
|
| 10 |
)
|
| 11 |
-
DEPTHS=(
|
| 12 |
|
| 13 |
NPROC_PER_NODE="${NPROC_PER_NODE:-8}"
|
| 14 |
WANDB_RUN="${WANDB_RUN:-scaling_${LABEL}}"
|
|
@@ -60,6 +60,15 @@ for flops in "${FLOPS_BUDGETS[@]}"; do
|
|
| 60 |
# Unique tag for this run
|
| 61 |
TAG="scaling_${flops}_d${d}"
|
| 62 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 63 |
# Record start time
|
| 64 |
START_TIME=$(date +%s)
|
| 65 |
|
|
@@ -77,6 +86,7 @@ for flops in "${FLOPS_BUDGETS[@]}"; do
|
|
| 77 |
--core-metric-max-per-task=-1 \
|
| 78 |
--sample-every=-1 \
|
| 79 |
--save-every=-1 \
|
|
|
|
| 80 |
2>&1 | tee "$RESULTS_DIR/${TAG}_train.log"
|
| 81 |
|
| 82 |
END_TIME=$(date +%s)
|
|
@@ -96,8 +106,9 @@ for flops in "${FLOPS_BUDGETS[@]}"; do
|
|
| 96 |
PARAMS_TOTAL=$(grep "^total " "$LOG_FILE" | tail -1 | grep -oP '[\d,]+' | tr -d ',')
|
| 97 |
|
| 98 |
NUM_ITERS=$(grep "Calculated number of iterations" "$LOG_FILE" | tail -1 | sed 's/.*: //' | tr -d ',')
|
| 99 |
-
#
|
| 100 |
-
|
|
|
|
| 101 |
# Model dim
|
| 102 |
MODEL_DIM=$((d * 64))
|
| 103 |
# Val BPB from final eval
|
|
|
|
| 8 |
4.64e18
|
| 9 |
1e19
|
| 10 |
)
|
| 11 |
+
DEPTHS=(10 12 14 16 18 20)
|
| 12 |
|
| 13 |
NPROC_PER_NODE="${NPROC_PER_NODE:-8}"
|
| 14 |
WANDB_RUN="${WANDB_RUN:-scaling_${LABEL}}"
|
|
|
|
| 60 |
# Unique tag for this run
|
| 61 |
TAG="scaling_${flops}_d${d}"
|
| 62 |
|
| 63 |
+
# Reduce --device-batch-size to avoid OOM at larger depths
|
| 64 |
+
if [ $d -ge 28 ]; then
|
| 65 |
+
DEVICE_BATCH_SIZE_ARG="--device-batch-size=8"
|
| 66 |
+
elif [ $d -ge 20 ]; then
|
| 67 |
+
DEVICE_BATCH_SIZE_ARG="--device-batch-size=16"
|
| 68 |
+
else
|
| 69 |
+
DEVICE_BATCH_SIZE_ARG="--device-batch-size=32"
|
| 70 |
+
fi
|
| 71 |
+
|
| 72 |
# Record start time
|
| 73 |
START_TIME=$(date +%s)
|
| 74 |
|
|
|
|
| 86 |
--core-metric-max-per-task=-1 \
|
| 87 |
--sample-every=-1 \
|
| 88 |
--save-every=-1 \
|
| 89 |
+
$DEVICE_BATCH_SIZE_ARG \
|
| 90 |
2>&1 | tee "$RESULTS_DIR/${TAG}_train.log"
|
| 91 |
|
| 92 |
END_TIME=$(date +%s)
|
|
|
|
| 106 |
PARAMS_TOTAL=$(grep "^total " "$LOG_FILE" | tail -1 | grep -oP '[\d,]+' | tr -d ',')
|
| 107 |
|
| 108 |
NUM_ITERS=$(grep "Calculated number of iterations" "$LOG_FILE" | tail -1 | sed 's/.*: //' | tr -d ',')
|
| 109 |
+
# Extract actual batch size from log (auto-computed, varies by model size)
|
| 110 |
+
BATCH_SIZE=$(grep "Total batch size" "$LOG_FILE" | tail -1 | grep -oP 'Total batch size \K[\d,]+' | tr -d ',')
|
| 111 |
+
TOKENS_TRAINED=$((NUM_ITERS * BATCH_SIZE))
|
| 112 |
# Model dim
|
| 113 |
MODEL_DIM=$((d * 64))
|
| 114 |
# Val BPB from final eval
|