Add files using upload-large-folder tool
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-boost.sh +119 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-kurt-boost.sh +132 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-ablation.sh +133 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-boost.sh +133 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-milp-7b.sh +119 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-milp-ablation.sh +109 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama2-13b-boost.sh +121 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-sensi-milp-mini-batch.sh +128 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-tail-reduction.sh +118 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-vit-zs-mxq-kurt-boost.sh +34 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-3.25-llama-7b-sensi-boost.sh +116 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-experiment-llama-kurt-milp-ablation.sh +82 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-llama-sensi-milp.sh +129 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix_experiment-llama-kurt-milp.sh +87 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-allot-kurt-scaled-dense.sh +46 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-llama-sensi.sh +43 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-milp-low-bit.sh +99 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-qwen-sensi-metrics.sh +17 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-sensi-milp-mini-batch.sh +53 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-13b-awq.sh +18 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-2bit-dense1-mxq.sh +21 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-3bit-dense1-mxq.sh +21 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-4_51-mxq.sh +21 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-4bit-dense1-mxq.sh +21 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-8bit-gptq.sh +18 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-awq.sh +18 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-b4-mxq.sh +21 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-gptq.sh +17 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-hqq.sh +20 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-kurt-13b-mxq.sh +21 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-mxq.sh +20 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-quant-allot.sh +60 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-quant-milp.sh +4 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-tail-boost-quant-allot.sh +48 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-CLIP-ViT-B-32-laion2B-s34B-b79K.csv +577 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-2-70b-hf.csv +0 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-2-7b-hf.csv +0 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-3.1-8B.csv +0 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Meta-Llama-3-8B.csv +0 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/kurtosis-CLIP-ViT-H-14-laion2B-s32B-b79K.csv +113 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/kurtosis-CLIP-ViT-L-14-laion2B-s32B-b82K.csv +73 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/autoawq.py +66 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/autogptq.py +85 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/awq.py +91 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/bnb.py +37 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/common.py +20 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/fp16.py +17 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/hqq.py +34 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/mxq.py +34 -0
- lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/vit/hqq.py +27 -0
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-boost.sh
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 7 |
+
|
| 8 |
+
EXP_BASE_NAME="sensi-boost"
|
| 9 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 10 |
+
|
| 11 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 12 |
+
export HF_DATASETS_OFFLINE=1
|
| 13 |
+
|
| 14 |
+
weight_algo=sensi-directive
|
| 15 |
+
layers="31 1"
|
| 16 |
+
ATTEMPT="${weight_algo}"
|
| 17 |
+
EXP_NAME="${ATTEMPT}"
|
| 18 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 19 |
+
|
| 20 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 21 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 22 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 23 |
+
|
| 24 |
+
echo "=========Run perplexity evaluation on batch ${EXP_NAME}========="
|
| 25 |
+
python ../src/cli.py llm \
|
| 26 |
+
--task eval_ppl \
|
| 27 |
+
--model 0 \
|
| 28 |
+
--algo mxq \
|
| 29 |
+
--weight-algo $weight_algo \
|
| 30 |
+
--boost-layer $layers \
|
| 31 |
+
--config ${BUDGETS} \
|
| 32 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 33 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 34 |
+
--result-dir=$RESULT_DIR \
|
| 35 |
+
2>&1 \
|
| 36 |
+
| tee -a $log_file
|
| 37 |
+
EXIT_CODE=$?
|
| 38 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 39 |
+
echo "Perplexity evaluation failed!"
|
| 40 |
+
exit $EXIT_CODE
|
| 41 |
+
fi
|
| 42 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 43 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 44 |
+
-name "result-*.csv" \
|
| 45 |
+
-printf '%T@ %p\n' \
|
| 46 |
+
| sort -n \
|
| 47 |
+
| tail -1 \
|
| 48 |
+
| cut -d' ' -f2 \
|
| 49 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 50 |
+
|
| 51 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 52 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 53 |
+
python ../src/cli.py dump \
|
| 54 |
+
--type quant_config \
|
| 55 |
+
--model 0 \
|
| 56 |
+
--budget ${BUDGETS} \
|
| 57 |
+
--attempt $ATTEMPT \
|
| 58 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 59 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 60 |
+
2>&1 \
|
| 61 |
+
| tee -a $log_file
|
| 62 |
+
|
| 63 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 64 |
+
algo=mxq
|
| 65 |
+
model_ids="0"
|
| 66 |
+
for m in $model_ids; do
|
| 67 |
+
for cfg in ${BUDGETS}; do
|
| 68 |
+
python ../src/cli.py llm \
|
| 69 |
+
--model $m \
|
| 70 |
+
--algo ${algo} \
|
| 71 |
+
--config ${cfg} \
|
| 72 |
+
--task eval_model_storage \
|
| 73 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 74 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 75 |
+
--result-dir=$RESULT_DIR \
|
| 76 |
+
2>&1 \
|
| 77 |
+
| tee -a $log_file
|
| 78 |
+
done
|
| 79 |
+
done
|
| 80 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 81 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 82 |
+
-name "result-*.csv" \
|
| 83 |
+
-printf '%T@ %p\n' \
|
| 84 |
+
| sort -n \
|
| 85 |
+
| tail -1 \
|
| 86 |
+
| cut -d' ' -f2 \
|
| 87 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 88 |
+
|
| 89 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 90 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 91 |
+
|
| 92 |
+
OLD_DIR=$(pwd)
|
| 93 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 94 |
+
if [ ! -d pdfs/allot ]; then
|
| 95 |
+
mkdir -p pdfs/allot
|
| 96 |
+
fi
|
| 97 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 98 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 99 |
+
--mxq_data_dir data
|
| 100 |
+
$OLD_DIR/../data-vis/plot-mxq-paired.R data/combined.csv
|
| 101 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 102 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 103 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R data/combined.csv
|
| 104 |
+
pdflatex table.tex
|
| 105 |
+
|
| 106 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 107 |
+
MODELS="Llama-2-7b-hf"
|
| 108 |
+
BGS="4.13 4.25 4.51"
|
| 109 |
+
for model in $MODELS; do
|
| 110 |
+
for budget in $BGS; do
|
| 111 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 112 |
+
-m $model \
|
| 113 |
+
-b $budget \
|
| 114 |
+
--attempt1 $ATTEMPT \
|
| 115 |
+
--attempt2 mxq1 \
|
| 116 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 117 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 118 |
+
done
|
| 119 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-kurt-boost.sh
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=kurt-boost
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# BOOST_STOPS="2 3"
|
| 15 |
+
# BOOST_TOP_MS="1 2 3 0"
|
| 16 |
+
BOOST_STOPS="2"
|
| 17 |
+
BOOST_TOP_MS="1"
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
for BOOST_STOP in $BOOST_STOPS; do
|
| 21 |
+
for BOOST_TOP_M in $BOOST_TOP_MS; do
|
| 22 |
+
ATTEMPT="kurt-boost-${BOOST_STOP}-${BOOST_TOP_M}"
|
| 23 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 24 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 25 |
+
|
| 26 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 27 |
+
|
| 28 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 29 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 30 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 31 |
+
|
| 32 |
+
# MODELS="0"
|
| 33 |
+
EXP_NAME="${ATTEMPT}"
|
| 34 |
+
echo "=========Run perplexity evaluation========="
|
| 35 |
+
python ../src/cli.py llm \
|
| 36 |
+
--task eval_ppl \
|
| 37 |
+
--model $MODELS \
|
| 38 |
+
--algo mxq \
|
| 39 |
+
--weight-algo $weight_algo \
|
| 40 |
+
--boost-stop $BOOST_STOP \
|
| 41 |
+
--top-m-layer $BOOST_TOP_M \
|
| 42 |
+
--config ${BUDGETS} \
|
| 43 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 44 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 45 |
+
--result-dir=$RESULT_DIR \
|
| 46 |
+
2>&1 \
|
| 47 |
+
| tee -a $log_file
|
| 48 |
+
EXIT_CODE=$?
|
| 49 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 50 |
+
echo "Perplexity evaluation failed!"
|
| 51 |
+
exit $EXIT_CODE
|
| 52 |
+
fi
|
| 53 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 54 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 55 |
+
-name "result-*.csv" \
|
| 56 |
+
-printf '%T@ %p\n' \
|
| 57 |
+
| sort -n \
|
| 58 |
+
| tail -1 \
|
| 59 |
+
| cut -d' ' -f2 \
|
| 60 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 61 |
+
|
| 62 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 63 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 64 |
+
python ../src/cli.py dump \
|
| 65 |
+
--type quant_config \
|
| 66 |
+
--model $MODELS \
|
| 67 |
+
--budget ${BUDGETS} \
|
| 68 |
+
--attempt $ATTEMPT \
|
| 69 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 70 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 71 |
+
2>&1 \
|
| 72 |
+
| tee -a $log_file
|
| 73 |
+
|
| 74 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 75 |
+
algo=mxq
|
| 76 |
+
model_ids=$MODELS
|
| 77 |
+
for m in $model_ids; do
|
| 78 |
+
for cfg in ${BUDGETS}; do
|
| 79 |
+
python ../src/cli.py llm \
|
| 80 |
+
--model $m \
|
| 81 |
+
--algo ${algo} \
|
| 82 |
+
--config ${cfg} \
|
| 83 |
+
--task eval_model_storage \
|
| 84 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 85 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 86 |
+
--result-dir=$RESULT_DIR \
|
| 87 |
+
2>&1 \
|
| 88 |
+
| tee -a $log_file
|
| 89 |
+
done
|
| 90 |
+
done
|
| 91 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 92 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 93 |
+
-name "result-*.csv" \
|
| 94 |
+
-printf '%T@ %p\n' \
|
| 95 |
+
| sort -n \
|
| 96 |
+
| tail -1 \
|
| 97 |
+
| cut -d' ' -f2 \
|
| 98 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 99 |
+
|
| 100 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 101 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 102 |
+
|
| 103 |
+
OLD_DIR=$(pwd)
|
| 104 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 105 |
+
if [ ! -d pdfs/allot ]; then
|
| 106 |
+
mkdir -p pdfs/allot
|
| 107 |
+
fi
|
| 108 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 109 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 110 |
+
--mxq_data_dir data
|
| 111 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 112 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 113 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 114 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 115 |
+
pdflatex table.tex
|
| 116 |
+
|
| 117 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 118 |
+
for model in $MODEL_NAMES; do
|
| 119 |
+
for budget in $BUDGETS; do
|
| 120 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 121 |
+
-m $model \
|
| 122 |
+
-b $budget \
|
| 123 |
+
--attempt1 $ATTEMPT \
|
| 124 |
+
--attempt2 mxq1 \
|
| 125 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 126 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 127 |
+
done
|
| 128 |
+
done
|
| 129 |
+
cd $OLD_DIR
|
| 130 |
+
done
|
| 131 |
+
done
|
| 132 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-ablation.sh
ADDED
|
@@ -0,0 +1,133 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=sensi-boost
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# BOOST_STOPS="2 3"
|
| 15 |
+
# BOOST_TOP_MS="1 2 3 0"
|
| 16 |
+
|
| 17 |
+
BOOST_STOPS="3"
|
| 18 |
+
BOOST_TOP_MS="3 0"
|
| 19 |
+
|
| 20 |
+
for BOOST_STOP in $BOOST_STOPS; do
|
| 21 |
+
for BOOST_TOP_M in $BOOST_TOP_MS; do
|
| 22 |
+
ATTEMPT="sensi-abl-${BOOST_STOP}-${BOOST_TOP_M}"
|
| 23 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 24 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 25 |
+
|
| 26 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 27 |
+
|
| 28 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 29 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 30 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 31 |
+
|
| 32 |
+
# MODELS="0"
|
| 33 |
+
EXP_NAME="${ATTEMPT}"
|
| 34 |
+
echo "=========Run perplexity evaluation========="
|
| 35 |
+
python ../src/cli.py llm \
|
| 36 |
+
--task eval_ppl \
|
| 37 |
+
--model $MODELS \
|
| 38 |
+
--algo mxq \
|
| 39 |
+
--weight-algo $weight_algo \
|
| 40 |
+
--boost-stop $BOOST_STOP \
|
| 41 |
+
--top-m-layer $BOOST_TOP_M \
|
| 42 |
+
--ablation \
|
| 43 |
+
--config ${BUDGETS} \
|
| 44 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 45 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 46 |
+
--result-dir=$RESULT_DIR \
|
| 47 |
+
2>&1 \
|
| 48 |
+
| tee -a $log_file
|
| 49 |
+
EXIT_CODE=$?
|
| 50 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 51 |
+
echo "Perplexity evaluation failed!"
|
| 52 |
+
exit $EXIT_CODE
|
| 53 |
+
fi
|
| 54 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 55 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 56 |
+
-name "result-*.csv" \
|
| 57 |
+
-printf '%T@ %p\n' \
|
| 58 |
+
| sort -n \
|
| 59 |
+
| tail -1 \
|
| 60 |
+
| cut -d' ' -f2 \
|
| 61 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 62 |
+
|
| 63 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 64 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 65 |
+
python ../src/cli.py dump \
|
| 66 |
+
--type quant_config \
|
| 67 |
+
--model $MODELS \
|
| 68 |
+
--budget ${BUDGETS} \
|
| 69 |
+
--attempt $ATTEMPT \
|
| 70 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 71 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 72 |
+
2>&1 \
|
| 73 |
+
| tee -a $log_file
|
| 74 |
+
|
| 75 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 76 |
+
algo=mxq
|
| 77 |
+
model_ids=$MODELS
|
| 78 |
+
for m in $model_ids; do
|
| 79 |
+
for cfg in ${BUDGETS}; do
|
| 80 |
+
python ../src/cli.py llm \
|
| 81 |
+
--model $m \
|
| 82 |
+
--algo ${algo} \
|
| 83 |
+
--config ${cfg} \
|
| 84 |
+
--task eval_model_storage \
|
| 85 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 86 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 87 |
+
--result-dir=$RESULT_DIR \
|
| 88 |
+
2>&1 \
|
| 89 |
+
| tee -a $log_file
|
| 90 |
+
done
|
| 91 |
+
done
|
| 92 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 93 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 94 |
+
-name "result-*.csv" \
|
| 95 |
+
-printf '%T@ %p\n' \
|
| 96 |
+
| sort -n \
|
| 97 |
+
| tail -1 \
|
| 98 |
+
| cut -d' ' -f2 \
|
| 99 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 100 |
+
|
| 101 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 102 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 103 |
+
|
| 104 |
+
OLD_DIR=$(pwd)
|
| 105 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 106 |
+
if [ ! -d pdfs/allot ]; then
|
| 107 |
+
mkdir -p pdfs/allot
|
| 108 |
+
fi
|
| 109 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 110 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 111 |
+
--mxq_data_dir data
|
| 112 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 113 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 114 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 115 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 116 |
+
pdflatex table.tex
|
| 117 |
+
|
| 118 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 119 |
+
for model in $MODEL_NAMES; do
|
| 120 |
+
for budget in $BUDGETS; do
|
| 121 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 122 |
+
-m $model \
|
| 123 |
+
-b $budget \
|
| 124 |
+
--attempt1 $ATTEMPT \
|
| 125 |
+
--attempt2 mxq1 \
|
| 126 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 127 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 128 |
+
done
|
| 129 |
+
done
|
| 130 |
+
cd $OLD_DIR
|
| 131 |
+
done
|
| 132 |
+
done
|
| 133 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-boost.sh
ADDED
|
@@ -0,0 +1,133 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=sensi-boost
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# BOOST_STOPS="2 3"
|
| 15 |
+
BOOST_STOPS="3"
|
| 16 |
+
BOOST_TOP_MS="0"
|
| 17 |
+
|
| 18 |
+
for BOOST_STOP in $BOOST_STOPS; do
|
| 19 |
+
for BOOST_TOP_M in $BOOST_TOP_MS; do
|
| 20 |
+
if [[ $BOOST_STOP -eq 2 && $BOOST_TOP_M -eq 1 ]]; then
|
| 21 |
+
continue
|
| 22 |
+
fi
|
| 23 |
+
ATTEMPT="sensi-boost-${BOOST_STOP}-${BOOST_TOP_M}"
|
| 24 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 25 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 26 |
+
|
| 27 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 28 |
+
|
| 29 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 30 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 31 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 32 |
+
|
| 33 |
+
# MODELS="0"
|
| 34 |
+
EXP_NAME="${ATTEMPT}"
|
| 35 |
+
echo "=========Run perplexity evaluation========="
|
| 36 |
+
python ../src/cli.py llm \
|
| 37 |
+
--task eval_ppl \
|
| 38 |
+
--model $MODELS \
|
| 39 |
+
--algo mxq \
|
| 40 |
+
--weight-algo $weight_algo \
|
| 41 |
+
--boost-stop $BOOST_STOP \
|
| 42 |
+
--top-m-layer $BOOST_TOP_M \
|
| 43 |
+
--config ${BUDGETS} \
|
| 44 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 45 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 46 |
+
--result-dir=$RESULT_DIR \
|
| 47 |
+
2>&1 \
|
| 48 |
+
| tee -a $log_file
|
| 49 |
+
EXIT_CODE=$?
|
| 50 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 51 |
+
echo "Perplexity evaluation failed!"
|
| 52 |
+
exit $EXIT_CODE
|
| 53 |
+
fi
|
| 54 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 55 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 56 |
+
-name "result-*.csv" \
|
| 57 |
+
-printf '%T@ %p\n' \
|
| 58 |
+
| sort -n \
|
| 59 |
+
| tail -1 \
|
| 60 |
+
| cut -d' ' -f2 \
|
| 61 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 62 |
+
|
| 63 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 64 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 65 |
+
python ../src/cli.py dump \
|
| 66 |
+
--type quant_config \
|
| 67 |
+
--model $MODELS \
|
| 68 |
+
--budget ${BUDGETS} \
|
| 69 |
+
--attempt $ATTEMPT \
|
| 70 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 71 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 72 |
+
2>&1 \
|
| 73 |
+
| tee -a $log_file
|
| 74 |
+
|
| 75 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 76 |
+
algo=mxq
|
| 77 |
+
model_ids=$MODELS
|
| 78 |
+
for m in $model_ids; do
|
| 79 |
+
for cfg in ${BUDGETS}; do
|
| 80 |
+
python ../src/cli.py llm \
|
| 81 |
+
--model $m \
|
| 82 |
+
--algo ${algo} \
|
| 83 |
+
--config ${cfg} \
|
| 84 |
+
--task eval_model_storage \
|
| 85 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 86 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 87 |
+
--result-dir=$RESULT_DIR \
|
| 88 |
+
2>&1 \
|
| 89 |
+
| tee -a $log_file
|
| 90 |
+
done
|
| 91 |
+
done
|
| 92 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 93 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 94 |
+
-name "result-*.csv" \
|
| 95 |
+
-printf '%T@ %p\n' \
|
| 96 |
+
| sort -n \
|
| 97 |
+
| tail -1 \
|
| 98 |
+
| cut -d' ' -f2 \
|
| 99 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 100 |
+
|
| 101 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 102 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 103 |
+
|
| 104 |
+
OLD_DIR=$(pwd)
|
| 105 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 106 |
+
if [ ! -d pdfs/allot ]; then
|
| 107 |
+
mkdir -p pdfs/allot
|
| 108 |
+
fi
|
| 109 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 110 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 111 |
+
--mxq_data_dir data
|
| 112 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 113 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 114 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 115 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 116 |
+
pdflatex table.tex
|
| 117 |
+
|
| 118 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 119 |
+
for model in $MODEL_NAMES; do
|
| 120 |
+
for budget in $BUDGETS; do
|
| 121 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 122 |
+
-m $model \
|
| 123 |
+
-b $budget \
|
| 124 |
+
--attempt1 $ATTEMPT \
|
| 125 |
+
--attempt2 mxq1 \
|
| 126 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 127 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 128 |
+
done
|
| 129 |
+
done
|
| 130 |
+
cd $OLD_DIR
|
| 131 |
+
done
|
| 132 |
+
done
|
| 133 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-milp-7b.sh
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 7 |
+
|
| 8 |
+
ATTEMPT="llama-sensi-milp-2x"
|
| 9 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 10 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 11 |
+
|
| 12 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 13 |
+
export HF_DATASETS_OFFLINE=1
|
| 14 |
+
|
| 15 |
+
weight_algo=sensi-milp
|
| 16 |
+
|
| 17 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 18 |
+
|
| 19 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 20 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 21 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 22 |
+
|
| 23 |
+
MODELS="0 2"
|
| 24 |
+
EXP_NAME="${ATTEMPT}"
|
| 25 |
+
echo "=========Run perplexity evaluation on Llama-2-7b========="
|
| 26 |
+
python ../src/cli.py llm \
|
| 27 |
+
--task eval_ppl \
|
| 28 |
+
--model $MODELS \
|
| 29 |
+
--algo mxq \
|
| 30 |
+
--weight-algo $weight_algo \
|
| 31 |
+
--config ${BUDGETS} \
|
| 32 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 33 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 34 |
+
--result-dir=$RESULT_DIR \
|
| 35 |
+
2>&1 \
|
| 36 |
+
| tee -a $log_file
|
| 37 |
+
EXIT_CODE=$?
|
| 38 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 39 |
+
echo "Perplexity evaluation failed!"
|
| 40 |
+
exit $EXIT_CODE
|
| 41 |
+
fi
|
| 42 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 43 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 44 |
+
-name "result-*.csv" \
|
| 45 |
+
-printf '%T@ %p\n' \
|
| 46 |
+
| sort -n \
|
| 47 |
+
| tail -1 \
|
| 48 |
+
| cut -d' ' -f2 \
|
| 49 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 50 |
+
|
| 51 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 52 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 53 |
+
python ../src/cli.py dump \
|
| 54 |
+
--type quant_config \
|
| 55 |
+
--model $MODELS \
|
| 56 |
+
--budget ${BUDGETS} \
|
| 57 |
+
--attempt $ATTEMPT \
|
| 58 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 59 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 60 |
+
2>&1 \
|
| 61 |
+
| tee -a $log_file
|
| 62 |
+
|
| 63 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 64 |
+
algo=mxq
|
| 65 |
+
model_ids=$MODELS
|
| 66 |
+
for m in $model_ids; do
|
| 67 |
+
for cfg in ${BUDGETS}; do
|
| 68 |
+
python ../src/cli.py llm \
|
| 69 |
+
--model $m \
|
| 70 |
+
--algo ${algo} \
|
| 71 |
+
--config ${cfg} \
|
| 72 |
+
--task eval_model_storage \
|
| 73 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 74 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 75 |
+
--result-dir=$RESULT_DIR \
|
| 76 |
+
2>&1 \
|
| 77 |
+
| tee -a $log_file
|
| 78 |
+
done
|
| 79 |
+
done
|
| 80 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 81 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 82 |
+
-name "result-*.csv" \
|
| 83 |
+
-printf '%T@ %p\n' \
|
| 84 |
+
| sort -n \
|
| 85 |
+
| tail -1 \
|
| 86 |
+
| cut -d' ' -f2 \
|
| 87 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 88 |
+
|
| 89 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 90 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 91 |
+
|
| 92 |
+
OLD_DIR=$(pwd)
|
| 93 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 94 |
+
if [ ! -d pdfs/allot ]; then
|
| 95 |
+
mkdir -p pdfs/allot
|
| 96 |
+
fi
|
| 97 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 98 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 99 |
+
--mxq_data_dir data
|
| 100 |
+
$OLD_DIR/../data-vis/plot-mxq-paired.R data/combined.csv
|
| 101 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 102 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 103 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R data/combined.csv
|
| 104 |
+
pdflatex table.tex
|
| 105 |
+
|
| 106 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 107 |
+
MODELS="Llama-2-7b-hf Meta-Llama-3-8B"
|
| 108 |
+
BGS="4.13 4.25 4.51"
|
| 109 |
+
for model in $MODELS; do
|
| 110 |
+
for budget in $BGS; do
|
| 111 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 112 |
+
-m $model \
|
| 113 |
+
-b $budget \
|
| 114 |
+
--attempt1 $ATTEMPT \
|
| 115 |
+
--attempt2 mxq1 \
|
| 116 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 117 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 118 |
+
done
|
| 119 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-milp-ablation.sh
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="6.89 5.72 5.02 4.51 4.25 4.21 4.17 4.13 4.11 4.07 3.95 3.87 3.83 3.65 3.51 3.25 3.19 3.15 3.13 3.11 3.07"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=sensi-milp
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# for SensiMiLP ablation test, all topm values are equivalent
|
| 15 |
+
|
| 16 |
+
ATTEMPT="sensi-milp-abl"
|
| 17 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 18 |
+
EXP_NAME="${ATTEMPT}"
|
| 19 |
+
|
| 20 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 21 |
+
|
| 22 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 23 |
+
|
| 24 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 25 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 26 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 27 |
+
|
| 28 |
+
echo "=========Run perplexity evaluation========="
|
| 29 |
+
python ../src/cli.py llm \
|
| 30 |
+
--task eval_ppl \
|
| 31 |
+
--model $MODELS \
|
| 32 |
+
--algo mxq \
|
| 33 |
+
--weight-algo $weight_algo \
|
| 34 |
+
--ablation \
|
| 35 |
+
--config ${BUDGETS} \
|
| 36 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 37 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 38 |
+
--result-dir=$RESULT_DIR \
|
| 39 |
+
2>&1 \
|
| 40 |
+
| tee -a $log_file
|
| 41 |
+
EXIT_CODE=$?
|
| 42 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 43 |
+
echo "Perplexity evaluation failed!"
|
| 44 |
+
exit $EXIT_CODE
|
| 45 |
+
fi
|
| 46 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 47 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 48 |
+
-name "result-*.csv" \
|
| 49 |
+
-printf '%T@ %p\n' \
|
| 50 |
+
| sort -n \
|
| 51 |
+
| tail -1 \
|
| 52 |
+
| cut -d' ' -f2 \
|
| 53 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 54 |
+
|
| 55 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 56 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 57 |
+
python ../src/cli.py dump \
|
| 58 |
+
--type quant_config \
|
| 59 |
+
--model $MODELS \
|
| 60 |
+
--budget ${BUDGETS} \
|
| 61 |
+
--attempt $ATTEMPT \
|
| 62 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 63 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 64 |
+
2>&1 \
|
| 65 |
+
| tee -a $log_file
|
| 66 |
+
|
| 67 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 68 |
+
algo=mxq
|
| 69 |
+
model_ids=$MODELS
|
| 70 |
+
for m in $model_ids; do
|
| 71 |
+
for cfg in ${BUDGETS}; do
|
| 72 |
+
python ../src/cli.py llm \
|
| 73 |
+
--model $m \
|
| 74 |
+
--algo ${algo} \
|
| 75 |
+
--config ${cfg} \
|
| 76 |
+
--task eval_model_storage \
|
| 77 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 78 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 79 |
+
--result-dir=$RESULT_DIR \
|
| 80 |
+
2>&1 \
|
| 81 |
+
| tee -a $log_file
|
| 82 |
+
done
|
| 83 |
+
done
|
| 84 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 85 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 86 |
+
-name "result-*.csv" \
|
| 87 |
+
-printf '%T@ %p\n' \
|
| 88 |
+
| sort -n \
|
| 89 |
+
| tail -1 \
|
| 90 |
+
| cut -d' ' -f2 \
|
| 91 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 92 |
+
|
| 93 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 94 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 95 |
+
OLD_DIR=$(pwd)
|
| 96 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 97 |
+
if [ ! -d pdfs ]; then
|
| 98 |
+
mkdir pdfs
|
| 99 |
+
fi
|
| 100 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 101 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 102 |
+
--mxq_data_dir data
|
| 103 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 104 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 105 |
+
cd pdfs
|
| 106 |
+
pdflatex table.tex
|
| 107 |
+
cd ..
|
| 108 |
+
|
| 109 |
+
cd $OLD_DIR
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama2-13b-boost.sh
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 7 |
+
|
| 8 |
+
MODELS="1"
|
| 9 |
+
ATTEMPT="Llama2-13B-boost"
|
| 10 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 11 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 12 |
+
|
| 13 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 14 |
+
export HF_DATASETS_OFFLINE=1
|
| 15 |
+
|
| 16 |
+
weight_algo=sensi-directive
|
| 17 |
+
boost_layers="3 39"
|
| 18 |
+
EXP_NAME="${ATTEMPT}"
|
| 19 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 20 |
+
|
| 21 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 22 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 23 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 24 |
+
|
| 25 |
+
echo "=========Run perplexity evaluation on batch ${EXP_NAME}========="
|
| 26 |
+
python ../src/cli.py llm \
|
| 27 |
+
--task eval_ppl \
|
| 28 |
+
--model $MODELS \
|
| 29 |
+
--algo mxq \
|
| 30 |
+
--weight-algo $weight_algo \
|
| 31 |
+
--boost-layer $boost_layers \
|
| 32 |
+
--boost-stop 2 \
|
| 33 |
+
--config ${BUDGETS} \
|
| 34 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 35 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 36 |
+
--result-dir=$RESULT_DIR \
|
| 37 |
+
2>&1 \
|
| 38 |
+
| tee -a $log_file
|
| 39 |
+
EXIT_CODE=$?
|
| 40 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 41 |
+
echo "Perplexity evaluation failed!"
|
| 42 |
+
exit $EXIT_CODE
|
| 43 |
+
fi
|
| 44 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 45 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 46 |
+
-name "result-*.csv" \
|
| 47 |
+
-printf '%T@ %p\n' \
|
| 48 |
+
| sort -n \
|
| 49 |
+
| tail -1 \
|
| 50 |
+
| cut -d' ' -f2 \
|
| 51 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 52 |
+
|
| 53 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 54 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 55 |
+
python ../src/cli.py dump \
|
| 56 |
+
--type quant_config \
|
| 57 |
+
--model $MODELS \
|
| 58 |
+
--budget ${BUDGETS} \
|
| 59 |
+
--attempt $ATTEMPT \
|
| 60 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 61 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 62 |
+
2>&1 \
|
| 63 |
+
| tee -a $log_file
|
| 64 |
+
|
| 65 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 66 |
+
algo=mxq
|
| 67 |
+
model_ids=$MODELS
|
| 68 |
+
for m in $model_ids; do
|
| 69 |
+
for cfg in ${BUDGETS}; do
|
| 70 |
+
python ../src/cli.py llm \
|
| 71 |
+
--model $m \
|
| 72 |
+
--algo ${algo} \
|
| 73 |
+
--config ${cfg} \
|
| 74 |
+
--task eval_model_storage \
|
| 75 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 76 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 77 |
+
--result-dir=$RESULT_DIR \
|
| 78 |
+
2>&1 \
|
| 79 |
+
| tee -a $log_file
|
| 80 |
+
done
|
| 81 |
+
done
|
| 82 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 83 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 84 |
+
-name "result-*.csv" \
|
| 85 |
+
-printf '%T@ %p\n' \
|
| 86 |
+
| sort -n \
|
| 87 |
+
| tail -1 \
|
| 88 |
+
| cut -d' ' -f2 \
|
| 89 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 90 |
+
|
| 91 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 92 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 93 |
+
|
| 94 |
+
OLD_DIR=$(pwd)
|
| 95 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 96 |
+
if [ ! -d pdfs/allot ]; then
|
| 97 |
+
mkdir -p pdfs/allot
|
| 98 |
+
fi
|
| 99 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 100 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 101 |
+
--mxq_data_dir data
|
| 102 |
+
$OLD_DIR/../data-vis/plot-mxq-paired.R data/combined.csv
|
| 103 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 104 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 105 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R data/combined.csv
|
| 106 |
+
pdflatex table.tex
|
| 107 |
+
|
| 108 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 109 |
+
MODELS="Llama-2-13b-hf"
|
| 110 |
+
BGS="4.13 4.25 4.51"
|
| 111 |
+
for model in $MODELS; do
|
| 112 |
+
for budget in $BGS; do
|
| 113 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 114 |
+
-m $model \
|
| 115 |
+
-b $budget \
|
| 116 |
+
--attempt1 $ATTEMPT \
|
| 117 |
+
--attempt2 mxq1 \
|
| 118 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 119 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 120 |
+
done
|
| 121 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-sensi-milp-mini-batch.sh
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
# 100%, 99%, 98%, 97%, 96%, 95% of [3.51, 4.25]
|
| 5 |
+
# MXQ2=(minibatch 3.51 3.47 3.44 3.40 3.37 3.33 4.25 4.21 4.17 4.12 4.08 4.04)
|
| 6 |
+
MXQ2=(minibatch 6.89 5.72 5.02 4.51 4.25 4.21 4.17 4.13 4.11 4.07 3.95 3.87 3.83 3.65 3.51 3.25 3.19 3.15 3.13 3.11 3.07)
|
| 7 |
+
MXQ_BATCHES=(MXQ2)
|
| 8 |
+
declare -n MXQ_BATCH
|
| 9 |
+
|
| 10 |
+
ATTEMPT="sensi-milp-mini2"
|
| 11 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 12 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 13 |
+
EXP_BASE_NAME="${ATTEMPT}"
|
| 14 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 15 |
+
# Setup data files directories for reporting
|
| 16 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 17 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 18 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 19 |
+
|
| 20 |
+
weight_algo=sensi-milp
|
| 21 |
+
|
| 22 |
+
for MXQ_BATCH in "${MXQ_BATCHES[@]}"; do
|
| 23 |
+
batch_name=${MXQ_BATCH[@]:0:1}
|
| 24 |
+
EXP_NAME="${EXP_BASE_NAME}-${batch_name}"
|
| 25 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 26 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_stor
|
| 27 |
+
log_file="logs/bench-${EXP_NAME}-$(date +%Y%m%d%H%M%S).log"
|
| 28 |
+
|
| 29 |
+
echo "=========Run perplexity evaluation on batch ${batch_name}========="
|
| 30 |
+
python ../src/cli.py llm \
|
| 31 |
+
--task eval_ppl \
|
| 32 |
+
--model 0 1 2 \
|
| 33 |
+
--algo mxq \
|
| 34 |
+
--weight-algo ${weight_algo} \
|
| 35 |
+
--config ${MXQ_BATCH[@]:1} \
|
| 36 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 37 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 38 |
+
--result-dir=$RESULT_DIR \
|
| 39 |
+
2>&1 \
|
| 40 |
+
| tee -a $log_file
|
| 41 |
+
EXIT_CODE=$?
|
| 42 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 43 |
+
echo "Perplexity evaluation failed!"
|
| 44 |
+
exit $EXIT_CODE
|
| 45 |
+
fi
|
| 46 |
+
echo "=========Collect perplexity evaluation result on batch ${batch_name}========="
|
| 47 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 48 |
+
-name "result-*.csv" \
|
| 49 |
+
-printf '%T@ %p\n' \
|
| 50 |
+
| sort -n \
|
| 51 |
+
| tail -1 \
|
| 52 |
+
| cut -d' ' -f2 \
|
| 53 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 54 |
+
|
| 55 |
+
echo "=========Dump quantization configs on batch ${batch_name}========="
|
| 56 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 57 |
+
python ../src/cli.py dump \
|
| 58 |
+
--type quant_config \
|
| 59 |
+
--model 0 1 2 \
|
| 60 |
+
--budget ${MXQ_BATCH[@]:1} \
|
| 61 |
+
--attempt $ATTEMPT \
|
| 62 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 63 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 64 |
+
2>&1 \
|
| 65 |
+
| tee -a $log_file
|
| 66 |
+
|
| 67 |
+
echo "=========Run memory evaluation on batch ${batch_name}========="
|
| 68 |
+
algo=mxq
|
| 69 |
+
model_ids="0 1 2"
|
| 70 |
+
for m in $model_ids; do
|
| 71 |
+
for cfg in "${MXQ_BATCH[@]:1}"; do
|
| 72 |
+
python ../src/cli.py llm \
|
| 73 |
+
--model $m \
|
| 74 |
+
--algo ${algo} \
|
| 75 |
+
--config ${cfg} \
|
| 76 |
+
--task eval_model_storage \
|
| 77 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 78 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 79 |
+
--result-dir=$RESULT_DIR \
|
| 80 |
+
2>&1 \
|
| 81 |
+
| tee -a $log_file
|
| 82 |
+
done
|
| 83 |
+
done
|
| 84 |
+
echo "=========Collect memory evaluation result on batch ${batch_name}========="
|
| 85 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 86 |
+
-name "result-*.csv" \
|
| 87 |
+
-printf '%T@ %p\n' \
|
| 88 |
+
| sort -n \
|
| 89 |
+
| tail -1 \
|
| 90 |
+
| cut -d' ' -f2 \
|
| 91 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 92 |
+
|
| 93 |
+
|
| 94 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 95 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 96 |
+
|
| 97 |
+
OLD_DIR=$(pwd)
|
| 98 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 99 |
+
if [ ! -d pdfs ]; then
|
| 100 |
+
mkdir pdfs
|
| 101 |
+
fi
|
| 102 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 103 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 104 |
+
--mxq_data_dir data
|
| 105 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 106 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R -d data/combined.csv
|
| 107 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R -d data/combined.csv
|
| 108 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 109 |
+
cd pdfs
|
| 110 |
+
pdflatex table.tex
|
| 111 |
+
cd ..
|
| 112 |
+
|
| 113 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 114 |
+
MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 115 |
+
BUDGETS=${MXQ_BATCH[@]:1}
|
| 116 |
+
for model in $MODELS; do
|
| 117 |
+
for budget in $BUDGETS; do
|
| 118 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 119 |
+
-m $model \
|
| 120 |
+
-b $budget \
|
| 121 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 122 |
+
--attempt1 mxq1 \
|
| 123 |
+
--attempt2 $ATTEMPT \
|
| 124 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 125 |
+
done
|
| 126 |
+
done
|
| 127 |
+
cd $OLD_DIR
|
| 128 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-tail-reduction.sh
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 7 |
+
|
| 8 |
+
EXP_BASE_NAME="tail-reduction"
|
| 9 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 10 |
+
|
| 11 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 12 |
+
export HF_DATASETS_OFFLINE=1
|
| 13 |
+
|
| 14 |
+
weight_algo=tail_boost
|
| 15 |
+
ATTEMPT="${EXP_BASE_NAME}"
|
| 16 |
+
EXP_NAME="${ATTEMPT}"
|
| 17 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 18 |
+
|
| 19 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 20 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 21 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 22 |
+
|
| 23 |
+
echo "=========Run perplexity evaluation on batch ${EXP_NAME}========="
|
| 24 |
+
python ../src/cli.py llm \
|
| 25 |
+
--task eval_ppl \
|
| 26 |
+
--model 0 1 2 \
|
| 27 |
+
--algo mxq \
|
| 28 |
+
--weight-algo $weight_algo \
|
| 29 |
+
--factor -1 \
|
| 30 |
+
--config ${BUDGETS} \
|
| 31 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 32 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 33 |
+
--result-dir=$RESULT_DIR \
|
| 34 |
+
2>&1 \
|
| 35 |
+
| tee -a $log_file
|
| 36 |
+
EXIT_CODE=$?
|
| 37 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 38 |
+
echo "Perplexity evaluation failed!"
|
| 39 |
+
exit $EXIT_CODE
|
| 40 |
+
fi
|
| 41 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 42 |
+
# find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 43 |
+
# -name "result-*.csv" \
|
| 44 |
+
# -printf '%T@ %p\n' \
|
| 45 |
+
# | sort -n \
|
| 46 |
+
# | tail -1 \
|
| 47 |
+
# | cut -d' ' -f2 \
|
| 48 |
+
# | xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 49 |
+
#
|
| 50 |
+
# echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 51 |
+
# mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 52 |
+
# python ../src/cli.py dump \
|
| 53 |
+
# --type quant_config \
|
| 54 |
+
# --model 0 1 2 \
|
| 55 |
+
# --budget ${BUDGETS} \
|
| 56 |
+
# --attempt $ATTEMPT \
|
| 57 |
+
# --quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 58 |
+
# --output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 59 |
+
# 2>&1 \
|
| 60 |
+
# | tee -a $log_file
|
| 61 |
+
#
|
| 62 |
+
# echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 63 |
+
# algo=mxq
|
| 64 |
+
# model_ids="0 1 2"
|
| 65 |
+
# for m in $model_ids; do
|
| 66 |
+
# for cfg in ${BUDGETS}; do
|
| 67 |
+
# python ../src/cli.py llm \
|
| 68 |
+
# --model $m \
|
| 69 |
+
# --algo ${algo} \
|
| 70 |
+
# --config ${cfg} \
|
| 71 |
+
# --task eval_model_storage \
|
| 72 |
+
# --experiment-name "${EXP_NAME}_stor" \
|
| 73 |
+
# --quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 74 |
+
# --result-dir=$RESULT_DIR \
|
| 75 |
+
# 2>&1 \
|
| 76 |
+
# | tee -a $log_file
|
| 77 |
+
# done
|
| 78 |
+
# done
|
| 79 |
+
# echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 80 |
+
# find $RESULT_DIR/${EXP_NAME}_stor \
|
| 81 |
+
# -name "result-*.csv" \
|
| 82 |
+
# -printf '%T@ %p\n' \
|
| 83 |
+
# | sort -n \
|
| 84 |
+
# | tail -1 \
|
| 85 |
+
# | cut -d' ' -f2 \
|
| 86 |
+
# | xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 87 |
+
|
| 88 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 89 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 90 |
+
|
| 91 |
+
OLD_DIR=$(pwd)
|
| 92 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 93 |
+
if [ ! -d pdfs/allot ]; then
|
| 94 |
+
mkdir -p pdfs/allot
|
| 95 |
+
fi
|
| 96 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 97 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 98 |
+
--mxq_data_dir data
|
| 99 |
+
$OLD_DIR/../data-vis/plot-mxq-paired.R data/combined.csv
|
| 100 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 101 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 102 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R data/combined.csv
|
| 103 |
+
pdflatex table.tex
|
| 104 |
+
|
| 105 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 106 |
+
MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 107 |
+
BUDGETS="4.13 4.25 4.51"
|
| 108 |
+
for model in $MODELS; do
|
| 109 |
+
for budget in $BUDGETS; do
|
| 110 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 111 |
+
-m $model \
|
| 112 |
+
-b $budget \
|
| 113 |
+
--attempt1 tail-reduction \
|
| 114 |
+
--attempt2 mxq1 \
|
| 115 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 116 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 117 |
+
done
|
| 118 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-vit-zs-mxq-kurt-boost.sh
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
if [ ! -d logs ]; then
|
| 4 |
+
mkdir logs
|
| 5 |
+
fi
|
| 6 |
+
|
| 7 |
+
# python ../src/cli.py vit \
|
| 8 |
+
# --task eval_zeroshot_cls \
|
| 9 |
+
# --model 0 1 \
|
| 10 |
+
# --config 4.51 4.25 4.13 3.51 3.25 3.13\
|
| 11 |
+
# --algo mxq \
|
| 12 |
+
# --weight-algo kurt-boost \
|
| 13 |
+
# --boost-stop 2 \
|
| 14 |
+
# --top-m-layer 1 \
|
| 15 |
+
# --experiment-name eval_zs_BH_mxq_kurt_boost \
|
| 16 |
+
# --quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 17 |
+
# --result-dir="/fdata/llm/mxq/results" \
|
| 18 |
+
# 2>&1 \
|
| 19 |
+
# | tee logs/bench-vit-$(date +%Y%m%d%H%M%S).log
|
| 20 |
+
|
| 21 |
+
python ../src/cli.py vit \
|
| 22 |
+
--task eval_zeroshot_cls \
|
| 23 |
+
--model 0 1 \
|
| 24 |
+
--config 4.51 4.25 4.13 3.51 3.25 3.13\
|
| 25 |
+
--algo mxq \
|
| 26 |
+
--weight-algo kurt-boost \
|
| 27 |
+
--boost-stop 2 \
|
| 28 |
+
--top-m-layer 2 \
|
| 29 |
+
--experiment-name eval_zs_BH_mxq_kurt_boost_22 \
|
| 30 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 31 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 32 |
+
2>&1 \
|
| 33 |
+
| tee logs/bench-vit-$(date +%Y%m%d%H%M%S).log
|
| 34 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-3.25-llama-7b-sensi-boost.sh
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="3.25"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=sensi-boost
|
| 10 |
+
MODELS="0"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# BOOST_STOPS="2 3"
|
| 15 |
+
BOOST_STOPS="3"
|
| 16 |
+
BOOST_TOP_MS="3"
|
| 17 |
+
|
| 18 |
+
for BOOST_STOP in $BOOST_STOPS; do
|
| 19 |
+
for BOOST_TOP_M in $BOOST_TOP_MS; do
|
| 20 |
+
if [[ $BOOST_STOP -eq 2 && $BOOST_TOP_M -eq 1 ]]; then
|
| 21 |
+
continue
|
| 22 |
+
fi
|
| 23 |
+
ATTEMPT="sb-3257_2-fix-${BOOST_STOP}-${BOOST_TOP_M}"
|
| 24 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 25 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 26 |
+
|
| 27 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 28 |
+
|
| 29 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 30 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 31 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 32 |
+
|
| 33 |
+
# MODELS="0"
|
| 34 |
+
EXP_NAME="${ATTEMPT}"
|
| 35 |
+
echo "=========Run perplexity evaluation========="
|
| 36 |
+
python ../src/cli.py llm \
|
| 37 |
+
--task eval_ppl \
|
| 38 |
+
--model $MODELS \
|
| 39 |
+
--algo mxq \
|
| 40 |
+
--weight-algo $weight_algo \
|
| 41 |
+
--boost-stop $BOOST_STOP \
|
| 42 |
+
--top-m-layer $BOOST_TOP_M \
|
| 43 |
+
--config ${BUDGETS} \
|
| 44 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 45 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 46 |
+
--result-dir=$RESULT_DIR \
|
| 47 |
+
2>&1 \
|
| 48 |
+
| tee -a $log_file
|
| 49 |
+
EXIT_CODE=$?
|
| 50 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 51 |
+
echo "Perplexity evaluation failed!"
|
| 52 |
+
exit $EXIT_CODE
|
| 53 |
+
fi
|
| 54 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 55 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 56 |
+
-name "result-*.csv" \
|
| 57 |
+
-printf '%T@ %p\n' \
|
| 58 |
+
| sort -n \
|
| 59 |
+
| tail -1 \
|
| 60 |
+
| cut -d' ' -f2 \
|
| 61 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 62 |
+
|
| 63 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 64 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 65 |
+
python ../src/cli.py dump \
|
| 66 |
+
--type quant_config \
|
| 67 |
+
--model $MODELS \
|
| 68 |
+
--budget ${BUDGETS} \
|
| 69 |
+
--attempt $ATTEMPT \
|
| 70 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 71 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 72 |
+
2>&1 \
|
| 73 |
+
| tee -a $log_file
|
| 74 |
+
|
| 75 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 76 |
+
algo=mxq
|
| 77 |
+
model_ids=$MODELS
|
| 78 |
+
for m in $model_ids; do
|
| 79 |
+
for cfg in ${BUDGETS}; do
|
| 80 |
+
python ../src/cli.py llm \
|
| 81 |
+
--model $m \
|
| 82 |
+
--algo ${algo} \
|
| 83 |
+
--config ${cfg} \
|
| 84 |
+
--task eval_model_storage \
|
| 85 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 86 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 87 |
+
--result-dir=$RESULT_DIR \
|
| 88 |
+
2>&1 \
|
| 89 |
+
| tee -a $log_file
|
| 90 |
+
done
|
| 91 |
+
done
|
| 92 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 93 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 94 |
+
-name "result-*.csv" \
|
| 95 |
+
-printf '%T@ %p\n' \
|
| 96 |
+
| sort -n \
|
| 97 |
+
| tail -1 \
|
| 98 |
+
| cut -d' ' -f2 \
|
| 99 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 100 |
+
|
| 101 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 102 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 103 |
+
|
| 104 |
+
OLD_DIR=$(pwd)
|
| 105 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 106 |
+
if [ ! -d pdfs/allot ]; then
|
| 107 |
+
mkdir -p pdfs/allot
|
| 108 |
+
fi
|
| 109 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 110 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 111 |
+
--mxq_data_dir data
|
| 112 |
+
|
| 113 |
+
cd $OLD_DIR
|
| 114 |
+
done
|
| 115 |
+
done
|
| 116 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-experiment-llama-kurt-milp-ablation.sh
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="6.89 5.72 5.02 4.51 4.25 4.21 4.17 4.13 4.11 4.07 3.95 3.87 3.83 3.65 3.51 3.25 3.19 3.15 3.13 3.11 3.07"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=kurt-milp
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# for SensiMiLP ablation test, all topm values are equivalent
|
| 15 |
+
|
| 16 |
+
ATTEMPT="kurt-milp-abl"
|
| 17 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 18 |
+
EXP_NAME="${ATTEMPT}"
|
| 19 |
+
|
| 20 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 21 |
+
|
| 22 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 23 |
+
|
| 24 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 25 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 26 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 27 |
+
|
| 28 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 29 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 30 |
+
python ../src/cli.py dump \
|
| 31 |
+
--type quant_config \
|
| 32 |
+
--model $MODELS \
|
| 33 |
+
--budget ${BUDGETS} \
|
| 34 |
+
--attempt $ATTEMPT \
|
| 35 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 36 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 37 |
+
2>&1 \
|
| 38 |
+
| tee -a $log_file
|
| 39 |
+
|
| 40 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 41 |
+
algo=mxq
|
| 42 |
+
model_ids=$MODELS
|
| 43 |
+
for m in $model_ids; do
|
| 44 |
+
for cfg in ${BUDGETS}; do
|
| 45 |
+
python ../src/cli.py llm \
|
| 46 |
+
--model $m \
|
| 47 |
+
--algo ${algo} \
|
| 48 |
+
--config ${cfg} \
|
| 49 |
+
--task eval_model_storage \
|
| 50 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 51 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 52 |
+
--result-dir=$RESULT_DIR \
|
| 53 |
+
2>&1 \
|
| 54 |
+
| tee -a $log_file
|
| 55 |
+
done
|
| 56 |
+
done
|
| 57 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 58 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 59 |
+
-name "result-*.csv" \
|
| 60 |
+
-printf '%T@ %p\n' \
|
| 61 |
+
| sort -n \
|
| 62 |
+
| tail -1 \
|
| 63 |
+
| cut -d' ' -f2 \
|
| 64 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 65 |
+
|
| 66 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 67 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 68 |
+
OLD_DIR=$(pwd)
|
| 69 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 70 |
+
if [ ! -d pdfs ]; then
|
| 71 |
+
mkdir pdfs
|
| 72 |
+
fi
|
| 73 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 74 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 75 |
+
--mxq_data_dir data
|
| 76 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 77 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 78 |
+
cd pdfs
|
| 79 |
+
pdflatex table.tex
|
| 80 |
+
cd ..
|
| 81 |
+
|
| 82 |
+
cd $OLD_DIR
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-llama-sensi-milp.sh
ADDED
|
@@ -0,0 +1,129 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="6.89 5.72 5.02 4.51 4.25 4.21 4.17 4.13 4.11 4.07 3.95 3.87 3.83 3.65 3.51 3.25 3.19 3.15 3.13 3.11 3.07"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=sensi-milp
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
BOOST_TOP_MS="3"
|
| 15 |
+
|
| 16 |
+
for BOOST_TOP_M in $BOOST_TOP_MS; do
|
| 17 |
+
ATTEMPT="sensi-milp-${BOOST_TOP_M}"
|
| 18 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 19 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 20 |
+
|
| 21 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 22 |
+
|
| 23 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 24 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 25 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 26 |
+
|
| 27 |
+
# MODELS="0"
|
| 28 |
+
EXP_NAME="${ATTEMPT}"
|
| 29 |
+
echo "=========Run perplexity evaluation========="
|
| 30 |
+
python ../src/cli.py llm \
|
| 31 |
+
--task eval_ppl \
|
| 32 |
+
--model $MODELS \
|
| 33 |
+
--algo mxq \
|
| 34 |
+
--weight-algo $weight_algo \
|
| 35 |
+
--top-m-layer $BOOST_TOP_M \
|
| 36 |
+
--config ${BUDGETS} \
|
| 37 |
+
--experiment-name "${EXP_NAME}_ppl" \
|
| 38 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 39 |
+
--result-dir=$RESULT_DIR \
|
| 40 |
+
2>&1 \
|
| 41 |
+
| tee -a $log_file
|
| 42 |
+
EXIT_CODE=$?
|
| 43 |
+
if [ $EXIT_CODE -ne 0 ]; then
|
| 44 |
+
echo "Perplexity evaluation failed!"
|
| 45 |
+
exit $EXIT_CODE
|
| 46 |
+
fi
|
| 47 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 48 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 49 |
+
-name "result-*.csv" \
|
| 50 |
+
-printf '%T@ %p\n' \
|
| 51 |
+
| sort -n \
|
| 52 |
+
| tail -1 \
|
| 53 |
+
| cut -d' ' -f2 \
|
| 54 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 55 |
+
|
| 56 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 57 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 58 |
+
python ../src/cli.py dump \
|
| 59 |
+
--type quant_config \
|
| 60 |
+
--model $MODELS \
|
| 61 |
+
--budget ${BUDGETS} \
|
| 62 |
+
--attempt $ATTEMPT \
|
| 63 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 64 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 65 |
+
2>&1 \
|
| 66 |
+
| tee -a $log_file
|
| 67 |
+
|
| 68 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 69 |
+
algo=mxq
|
| 70 |
+
model_ids=$MODELS
|
| 71 |
+
for m in $model_ids; do
|
| 72 |
+
for cfg in ${BUDGETS}; do
|
| 73 |
+
python ../src/cli.py llm \
|
| 74 |
+
--model $m \
|
| 75 |
+
--algo ${algo} \
|
| 76 |
+
--config ${cfg} \
|
| 77 |
+
--task eval_model_storage \
|
| 78 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 79 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 80 |
+
--result-dir=$RESULT_DIR \
|
| 81 |
+
2>&1 \
|
| 82 |
+
| tee -a $log_file
|
| 83 |
+
done
|
| 84 |
+
done
|
| 85 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 86 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 87 |
+
-name "result-*.csv" \
|
| 88 |
+
-printf '%T@ %p\n' \
|
| 89 |
+
| sort -n \
|
| 90 |
+
| tail -1 \
|
| 91 |
+
| cut -d' ' -f2 \
|
| 92 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 93 |
+
|
| 94 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 95 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 96 |
+
OLD_DIR=$(pwd)
|
| 97 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 98 |
+
if [ ! -d pdfs ]; then
|
| 99 |
+
mkdir pdfs
|
| 100 |
+
fi
|
| 101 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 102 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 103 |
+
--mxq_data_dir data
|
| 104 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 105 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R -d data/combined.csv
|
| 106 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R -d data/combined.csv
|
| 107 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 108 |
+
cd pdfs
|
| 109 |
+
pdflatex table.tex
|
| 110 |
+
cd ..
|
| 111 |
+
|
| 112 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 113 |
+
MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 114 |
+
BUDGETS=${MXQ_BATCH[@]:1}
|
| 115 |
+
for model in $MODELS; do
|
| 116 |
+
for budget in $BUDGETS; do
|
| 117 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 118 |
+
-m $model \
|
| 119 |
+
-b $budget \
|
| 120 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 121 |
+
--attempt1 mxq1 \
|
| 122 |
+
--attempt2 $ATTEMPT \
|
| 123 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 124 |
+
done
|
| 125 |
+
done
|
| 126 |
+
cd $OLD_DIR
|
| 127 |
+
|
| 128 |
+
done
|
| 129 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix_experiment-llama-kurt-milp.sh
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="6.89 5.72 5.02 4.51 4.25 4.21 4.17 4.13 4.11 4.07 3.95 3.87 3.83 3.65 3.51 3.25 3.19 3.15 3.13 3.11 3.07"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 8 |
+
export HF_DATASETS_OFFLINE=1
|
| 9 |
+
weight_algo=kurt-milp
|
| 10 |
+
MODELS="0 1 2"
|
| 11 |
+
MODEL_NAMES="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
BOOST_TOP_MS="1"
|
| 15 |
+
|
| 16 |
+
for BOOST_TOP_M in $BOOST_TOP_MS; do
|
| 17 |
+
ATTEMPT="kurt-milp-${BOOST_TOP_M}"
|
| 18 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 19 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 20 |
+
|
| 21 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 22 |
+
|
| 23 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 24 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 25 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 26 |
+
|
| 27 |
+
# MODELS="0"
|
| 28 |
+
EXP_NAME="${ATTEMPT}"
|
| 29 |
+
|
| 30 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 31 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 32 |
+
python ../src/cli.py dump \
|
| 33 |
+
--type quant_config \
|
| 34 |
+
--model $MODELS \
|
| 35 |
+
--budget ${BUDGETS} \
|
| 36 |
+
--attempt $ATTEMPT \
|
| 37 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 38 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 39 |
+
2>&1 \
|
| 40 |
+
| tee -a $log_file
|
| 41 |
+
|
| 42 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 43 |
+
algo=mxq
|
| 44 |
+
model_ids=$MODELS
|
| 45 |
+
for m in $model_ids; do
|
| 46 |
+
for cfg in ${BUDGETS}; do
|
| 47 |
+
python ../src/cli.py llm \
|
| 48 |
+
--model $m \
|
| 49 |
+
--algo ${algo} \
|
| 50 |
+
--config ${cfg} \
|
| 51 |
+
--task eval_model_storage \
|
| 52 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 53 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 54 |
+
--result-dir=$RESULT_DIR \
|
| 55 |
+
2>&1 \
|
| 56 |
+
| tee -a $log_file
|
| 57 |
+
done
|
| 58 |
+
done
|
| 59 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 60 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 61 |
+
-name "result-*.csv" \
|
| 62 |
+
-printf '%T@ %p\n' \
|
| 63 |
+
| sort -n \
|
| 64 |
+
| tail -1 \
|
| 65 |
+
| cut -d' ' -f2 \
|
| 66 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 67 |
+
|
| 68 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 69 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 70 |
+
OLD_DIR=$(pwd)
|
| 71 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 72 |
+
if [ ! -d pdfs ]; then
|
| 73 |
+
mkdir pdfs
|
| 74 |
+
fi
|
| 75 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 76 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 77 |
+
--mxq_data_dir data
|
| 78 |
+
$OLD_DIR/../data-vis/plot-ppl-mem.R -d data/combined.csv
|
| 79 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 80 |
+
cd pdfs
|
| 81 |
+
pdflatex table.tex
|
| 82 |
+
cd ..
|
| 83 |
+
|
| 84 |
+
cd $OLD_DIR
|
| 85 |
+
|
| 86 |
+
done
|
| 87 |
+
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-allot-kurt-scaled-dense.sh
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# MXQ1=(2bit 2.13 2.15 2.17 2.19 2.21 2.23 2.25 2.27 2.29 2.31 2.45 2.47 2.49 2.51 2.53 2.55 2.57)
|
| 4 |
+
# MXQ2=(3bit 3.07 3.09 3.11 3.13 3.15 3.17 3.19 3.21 3.23 3.25 3.27 3.29 3.31 3.33 3.35 3.37 3.39 3.41 3.42 3.43 3.45 3.47 3.49 3.51 3.53 3.55 3.57 3.59 3.61 3.63 3.65 3.67 3.69 3.71 3.73 3.75 3.77 3.79 3.81 3.83 3.85 3.87 3.89 3.91 3.93 3.95 3.97 3.99)
|
| 5 |
+
# Removed 4.99 which is unsolvable with kurt-scaled scheme
|
| 6 |
+
MXQ4=(4bit 4.01 4.03 4.05 4.07 4.09 4.11 4.13 4.15 4.17 4.19 4.21 4.23 4.25 4.27 4.29 4.31 4.33 4.35 4.37 4.39 4.41 4.43 4.45 4.47 4.49 4.51 4.53 4.55 4.57 4.59 4.61 4.63 4.65 4.67 4.69 4.71 4.73 4.75 4.77 4.79 4.81 4.83 4.85 4.87 4.89 4.91 4.93 4.95 4.97)
|
| 7 |
+
# Remove 5.01 5.02, 5.04 5.10 5.32 which is unsolvable with kurt-scaled scheme
|
| 8 |
+
#MXQ5=(5bit 5.00 5.03 5.06 5.08 5.09 5.12 5.14 5.16 5.18 5.20 5.22 5.24 5.26 5.28 5.30 5.33 5.34 5.36 5.38 5.40 5.42 5.44 5.46 5.48 5.50 5.52 5.54 5.56 5.58 5.60 5.62 5.64 5.66 5.68 5.70 5.72 5.74 5.76 5.78 5.80 5.82 5.84 5.86 5.88 5.90 5.92 5.94 5.96 5.98)
|
| 9 |
+
#MXQ6=(6bit 6.00 6.02 6.03 6.04 6.05 6.06 6.07 6.09 6.11 6.13 6.15 6.17 6.19 6.21 6.23 6.25 6.27 6.29 6.31 6.33 6.35 6.37 6.39 6.41 6.43 6.45 6.47 6.49 6.51 6.53 6.55 6.57 6.59 6.61 6.63 6.65 6.68 6.69 6.71 6.72 6.75 6.77 6.78 6.81 6.83 6.86 6.87 6.89 6.92 6.95 6.96 6.98)
|
| 10 |
+
# MXQ7=(78bit 7.01 7.02 7.04 7.06 7.08 7.10 7.13 7.14 7.16 7.19 7.20 7.22 7.24 7.26 7.29 7.30 7.32 7.34 7.36 7.38 7.41 7.42 7.44 7.47 7.48 7.50 7.53 7.54 7.56 7.57 7.60 7.62 7.63 7.66 7.68 7.70 7.72 7.74 7.76 8.13 8.25 8.51)
|
| 11 |
+
MXQ_BATCHES=(MXQ4)
|
| 12 |
+
declare -n MXQ_BATCH
|
| 13 |
+
|
| 14 |
+
ATTEMPT="kurt-scaled"
|
| 15 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 16 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 17 |
+
EXP_BASE_NAME="${ATTEMPT}-dense"
|
| 18 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 19 |
+
# Setup data files directories for reporting
|
| 20 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 21 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 22 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 23 |
+
|
| 24 |
+
|
| 25 |
+
OLD_DIR=$(pwd)
|
| 26 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 27 |
+
if [ ! -d pdfs ]; then
|
| 28 |
+
mkdir pdfs
|
| 29 |
+
fi
|
| 30 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 31 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 32 |
+
--mxq_data_dir data
|
| 33 |
+
|
| 34 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 35 |
+
# MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 36 |
+
MODELS="Llama-2-7b-hf"
|
| 37 |
+
BUDGETS="4.13 4.25 4.51"
|
| 38 |
+
for model in $MODELS; do
|
| 39 |
+
for budget in $BUDGETS; do
|
| 40 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R -m $model -b $budget \
|
| 41 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 42 |
+
--attempt1 mxq1 \
|
| 43 |
+
--attempt2 $ATTEMPT \
|
| 44 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 45 |
+
done
|
| 46 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-llama-sensi.sh
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 7 |
+
|
| 8 |
+
ATTEMPT="llama-sensi"
|
| 9 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 10 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 11 |
+
|
| 12 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 13 |
+
export HF_DATASETS_OFFLINE=1
|
| 14 |
+
|
| 15 |
+
weight_algo=sensi-directive
|
| 16 |
+
|
| 17 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 18 |
+
|
| 19 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 20 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 21 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 22 |
+
|
| 23 |
+
OLD_DIR=$(pwd)
|
| 24 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 25 |
+
if [ ! -d pdfs/allot ]; then
|
| 26 |
+
mkdir -p pdfs/allot
|
| 27 |
+
fi
|
| 28 |
+
|
| 29 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 30 |
+
MODELS="Llama-2-7b-hf"
|
| 31 |
+
BGS="4.13 4.25 4.51"
|
| 32 |
+
for model in $MODELS; do
|
| 33 |
+
for budget in $BGS; do
|
| 34 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 35 |
+
-m $model \
|
| 36 |
+
-b $budget \
|
| 37 |
+
--fnorm FALSE \
|
| 38 |
+
--attempt1 $ATTEMPT \
|
| 39 |
+
--attempt2 mxq1 \
|
| 40 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 41 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 42 |
+
done
|
| 43 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-milp-low-bit.sh
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
BUDGETS="4.25"
|
| 4 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 5 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 6 |
+
|
| 7 |
+
FACTOR=2
|
| 8 |
+
ATTEMPT="sensi-milp-debug-lowbits9"
|
| 9 |
+
EXP_BASE_NAME=$ATTEMPT
|
| 10 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 11 |
+
|
| 12 |
+
# Use cached dataset to speedup wikitext, c4 ppl evaluation
|
| 13 |
+
export HF_DATASETS_OFFLINE=1
|
| 14 |
+
|
| 15 |
+
weight_algo=sensi-milp
|
| 16 |
+
|
| 17 |
+
log_file="logs/bench-${ATTEMPT}-$(date +%Y%m%d%H%M%S).log"
|
| 18 |
+
|
| 19 |
+
# MODELS="0 1 2"
|
| 20 |
+
MODELS="0"
|
| 21 |
+
EXP_NAME="${ATTEMPT}"
|
| 22 |
+
|
| 23 |
+
echo "=========Collect perplexity evaluation result on batch ${EXP_NAME}========="
|
| 24 |
+
find $RESULT_DIR/${EXP_NAME}_ppl \
|
| 25 |
+
-name "result-*.csv" \
|
| 26 |
+
-printf '%T@ %p\n' \
|
| 27 |
+
| sort -n \
|
| 28 |
+
| tail -1 \
|
| 29 |
+
| cut -d' ' -f2 \
|
| 30 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/ppl/mxq/$ATTEMPT
|
| 31 |
+
|
| 32 |
+
echo "=========Dump quantization configs on batch ${EXP_NAME}========="
|
| 33 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 34 |
+
python ../src/cli.py dump \
|
| 35 |
+
--type quant_config \
|
| 36 |
+
--model $MODELS \
|
| 37 |
+
--budget ${BUDGETS} \
|
| 38 |
+
--attempt $ATTEMPT \
|
| 39 |
+
--quant-snapshot-dir=$QUANT_SNAPSHOT_DIR \
|
| 40 |
+
--output-file "$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/quant-allot-${EXP_NAME}.csv" \
|
| 41 |
+
2>&1 \
|
| 42 |
+
| tee -a $log_file
|
| 43 |
+
|
| 44 |
+
echo "=========Run memory evaluation on batch ${EXP_NAME}========="
|
| 45 |
+
algo=mxq
|
| 46 |
+
model_ids=$MODELS
|
| 47 |
+
for m in $model_ids; do
|
| 48 |
+
for cfg in ${BUDGETS}; do
|
| 49 |
+
python ../src/cli.py llm \
|
| 50 |
+
--model $m \
|
| 51 |
+
--algo ${algo} \
|
| 52 |
+
--config ${cfg} \
|
| 53 |
+
--task eval_model_storage \
|
| 54 |
+
--experiment-name "${EXP_NAME}_stor" \
|
| 55 |
+
--quant-snapshot-dir="$QUANT_SNAPSHOT_DIR/$ATTEMPT" \
|
| 56 |
+
--result-dir=$RESULT_DIR \
|
| 57 |
+
2>&1 \
|
| 58 |
+
| tee -a $log_file
|
| 59 |
+
done
|
| 60 |
+
done
|
| 61 |
+
echo "=========Collect memory evaluation result on batch ${EXP_NAME}========="
|
| 62 |
+
find $RESULT_DIR/${EXP_NAME}_stor \
|
| 63 |
+
-name "result-*.csv" \
|
| 64 |
+
-printf '%T@ %p\n' \
|
| 65 |
+
| sort -n \
|
| 66 |
+
| tail -1 \
|
| 67 |
+
| cut -d' ' -f2 \
|
| 68 |
+
| xargs -i cp {} $RESULT_DIR/$EXP_BASE_NAME/data/stor/mxq/$ATTEMPT
|
| 69 |
+
|
| 70 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 71 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 72 |
+
|
| 73 |
+
OLD_DIR=$(pwd)
|
| 74 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 75 |
+
if [ ! -d pdfs/allot ]; then
|
| 76 |
+
mkdir -p pdfs/allot
|
| 77 |
+
fi
|
| 78 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 79 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 80 |
+
--mxq_data_dir data
|
| 81 |
+
$OLD_DIR/../data-vis/plot-mxq-paired.R data/combined.csv
|
| 82 |
+
$OLD_DIR/../data-vis/plot-mem-consumption.R data/combined.csv
|
| 83 |
+
$OLD_DIR/../data-vis/plot-quant-speed.R data/combined.csv
|
| 84 |
+
$OLD_DIR/../data-vis/gen-table-mxq-llm.R --csv_file data/combined.csv --attempt $ATTEMPT
|
| 85 |
+
pdflatex table.tex
|
| 86 |
+
|
| 87 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 88 |
+
MODELS="Llama-2-7b-hf"
|
| 89 |
+
for model in $MODELS; do
|
| 90 |
+
for budget in $BUDGETS; do
|
| 91 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 92 |
+
-m $model \
|
| 93 |
+
-b $budget \
|
| 94 |
+
--attempt1 $ATTEMPT \
|
| 95 |
+
--attempt2 mxq1 \
|
| 96 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 97 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 98 |
+
done
|
| 99 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-qwen-sensi-metrics.sh
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
RESULT_BASE_DIR="/fdata/llm/mxq/results"
|
| 4 |
+
CALIB_DATASETS="bos pileval wikitext c4"
|
| 5 |
+
CONFIGS="b2g128 b2g64 b2g32 b3g128 b3g64 b3g32 b4g128 b4g64 b4g32 b8g128 b8g64 b8g32"
|
| 6 |
+
MODELS="Qwen/Qwen2.5-7B Qwen/Qwen2.5-Coder-7B Qwen/Qwen2.5-Coder-7B-Instruct Qwen/Qwen2.5-Math-7B"
|
| 7 |
+
|
| 8 |
+
EXP_NAME=sensi_qwen25
|
| 9 |
+
RESULT_DIR=$RESULT_BASE_DIR/$EXP_NAME
|
| 10 |
+
mkdir -p $RESULT_DIR/data
|
| 11 |
+
|
| 12 |
+
OLD_DIR=$(pwd)
|
| 13 |
+
cd $RESULT_DIR
|
| 14 |
+
if [ ! -d pdfs ]; then
|
| 15 |
+
mkdir -p pdfs
|
| 16 |
+
fi
|
| 17 |
+
$OLD_DIR/../data-vis/plot-variant-sensi.R data/
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-sensi-milp-mini-batch.sh
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
# 100%, 99%, 98%, 97%, 96%, 95% of [3.51, 4.25]
|
| 5 |
+
# MXQ2=(minibatch 3.51 3.47 3.44 3.40 3.37 3.33 4.25 4.21 4.17 4.12 4.08 4.04)
|
| 6 |
+
MXQ2=(minibatch 6.89 5.72 5.02 4.51 4.25 4.21 4.17 4.13 4.11 4.07 3.95 3.87 3.83 3.65 3.51 3.25 3.19 3.15 3.13 3.11 3.07)
|
| 7 |
+
MXQ_BATCHES=(MXQ2)
|
| 8 |
+
declare -n MXQ_BATCH
|
| 9 |
+
|
| 10 |
+
ATTEMPT="sensi-milp-mini2"
|
| 11 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 12 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 13 |
+
EXP_BASE_NAME="${ATTEMPT}"
|
| 14 |
+
QUANT_SNAPSHOT_DIR="/fdata/llm/mxq/snapshots"
|
| 15 |
+
# Setup data files directories for reporting
|
| 16 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,qnt,stor}
|
| 17 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/{ppl,stor}/mxq/$ATTEMPT
|
| 18 |
+
mkdir -p $QUANT_SNAPSHOT_DIR/$ATTEMPT
|
| 19 |
+
|
| 20 |
+
weight_algo=sensi-milp
|
| 21 |
+
|
| 22 |
+
for MXQ_BATCH in "${MXQ_BATCHES[@]}"; do
|
| 23 |
+
batch_name=${MXQ_BATCH[@]:0:1}
|
| 24 |
+
EXP_NAME="${EXP_BASE_NAME}-${batch_name}"
|
| 25 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 26 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_stor
|
| 27 |
+
log_file="logs/bench-${EXP_NAME}-$(date +%Y%m%d%H%M%S).log"
|
| 28 |
+
|
| 29 |
+
# echo "=========Delete quantized models of batch ${batch_name}========="
|
| 30 |
+
# find $QUANT_SNAPSHOT_DIR/$ATTEMPT -maxdepth 1 -type d | xargs rm -fr
|
| 31 |
+
|
| 32 |
+
OLD_DIR=$(pwd)
|
| 33 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 34 |
+
if [ ! -d pdfs ]; then
|
| 35 |
+
mkdir pdfs
|
| 36 |
+
fi
|
| 37 |
+
|
| 38 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 39 |
+
MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 40 |
+
BUDGETS=${MXQ_BATCH[@]:1}
|
| 41 |
+
for model in $MODELS; do
|
| 42 |
+
for budget in $BUDGETS; do
|
| 43 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 44 |
+
-m $model \
|
| 45 |
+
-b $budget \
|
| 46 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 47 |
+
--attempt1 mxq1 \
|
| 48 |
+
--attempt2 $ATTEMPT \
|
| 49 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 50 |
+
done
|
| 51 |
+
done
|
| 52 |
+
cd $OLD_DIR
|
| 53 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-13b-awq.sh
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
if [ ! -d logs ]; then
|
| 4 |
+
mkdir logs
|
| 5 |
+
fi
|
| 6 |
+
|
| 7 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 8 |
+
|
| 9 |
+
python ../src/cli.py llm \
|
| 10 |
+
--task quant \
|
| 11 |
+
--model 1 \
|
| 12 |
+
--algo awq \
|
| 13 |
+
--config b4g32 b4g64 b4g128 \
|
| 14 |
+
--experiment-name quant_llm_13B-awq2 \
|
| 15 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 16 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 17 |
+
2>&1 \
|
| 18 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-2bit-dense1-mxq.sh
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 1 2 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--config 2.57 2.55 2.53 2.51 2.49 2.47 2.45 2.31 2.29 2.27 2.25 2.23 2.21 2.19 2.17 2.15 2.13 \
|
| 17 |
+
--experiment-name quant_llm_2bit_dense1-mxq \
|
| 18 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 19 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 20 |
+
2>&1 \
|
| 21 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-3bit-dense1-mxq.sh
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 1 2 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--config 3.57 3.55 3.53 3.51 3.49 3.47 3.45 3.31 3.29 3.27 3.25 3.23 3.21 3.19 3.17 3.15 3.13 3.11 3.09 3.07 \
|
| 17 |
+
--experiment-name quant_llm_3bit_dense1-mxq \
|
| 18 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 19 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 20 |
+
2>&1 \
|
| 21 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-4_51-mxq.sh
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--config 4.51 \
|
| 17 |
+
--experiment-name quant_llm_4_51-mxq \
|
| 18 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 19 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 20 |
+
2>&1 \
|
| 21 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-4bit-dense1-mxq.sh
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 1 2 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--config 4.61 4.59 4.57 4.55 4.53 4.51 4.49 4.47 4.45 4.43 4.41 4.35 4.33 4.31 4.29 4.27 4.25 4.23 4.21 4.19 4.17 4.15 4.13 4.11 4.09 4.07 4.05 4.03 \
|
| 17 |
+
--experiment-name quant_llm_4bit_dense1-mxq \
|
| 18 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 19 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 20 |
+
2>&1 \
|
| 21 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-8bit-gptq.sh
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
if [ ! -d logs ]; then
|
| 4 |
+
mkdir logs
|
| 5 |
+
fi
|
| 6 |
+
|
| 7 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 8 |
+
|
| 9 |
+
python ../src/cli.py llm \
|
| 10 |
+
--task quant \
|
| 11 |
+
--model 0 1 2 \
|
| 12 |
+
--algo gptq \
|
| 13 |
+
--config b8g32 b8g64 b8g128 \
|
| 14 |
+
--experiment-name quant_llm-8bit-gptq \
|
| 15 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 16 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 17 |
+
2>&1 \
|
| 18 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-awq.sh
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
if [ ! -d logs ]; then
|
| 4 |
+
mkdir logs
|
| 5 |
+
fi
|
| 6 |
+
|
| 7 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 8 |
+
|
| 9 |
+
python ../src/cli.py llm \
|
| 10 |
+
--task quant \
|
| 11 |
+
--model 1 \
|
| 12 |
+
--algo awq \
|
| 13 |
+
--config b4g32 b4g64 b4g128 \
|
| 14 |
+
--experiment-name quant_llm_13B-awq \
|
| 15 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 16 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 17 |
+
2>&1 \
|
| 18 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-b4-mxq.sh
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 1 2 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--config 4.51 4.25 4.13 \
|
| 17 |
+
--experiment-name quant_llm_b4-mxq2 \
|
| 18 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 19 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 20 |
+
2>&1 \
|
| 21 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-gptq.sh
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
if [ ! -d logs ]; then
|
| 4 |
+
mkdir logs
|
| 5 |
+
fi
|
| 6 |
+
|
| 7 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 8 |
+
|
| 9 |
+
python ../src/lm-quant-toolkit/src/cli.py llm \
|
| 10 |
+
--task quant \
|
| 11 |
+
--model 0 1 2 \
|
| 12 |
+
--algo gptq \
|
| 13 |
+
--experiment-name quant_llm-gptq \
|
| 14 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 15 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 16 |
+
2>&1 \
|
| 17 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-hqq.sh
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 1 2 \
|
| 15 |
+
--algo hqq \
|
| 16 |
+
--experiment-name quant_llm-hqq \
|
| 17 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 18 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 19 |
+
2>&1 \
|
| 20 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-kurt-13b-mxq.sh
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 1 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--config 4.51 4.25 4.13 \
|
| 17 |
+
--experiment-name quant_llm-weighted-113b-mxq \
|
| 18 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots-kurt" \
|
| 19 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 20 |
+
2>&1 \
|
| 21 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-mxq.sh
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# export HF_HOME=/data/hugginface
|
| 4 |
+
# conda activate quant-eval
|
| 5 |
+
|
| 6 |
+
if [ ! -d logs ]; then
|
| 7 |
+
mkdir logs
|
| 8 |
+
fi
|
| 9 |
+
|
| 10 |
+
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
| 11 |
+
|
| 12 |
+
python ../src/cli.py llm \
|
| 13 |
+
--task quant \
|
| 14 |
+
--model 0 1 2 \
|
| 15 |
+
--algo mxq \
|
| 16 |
+
--experiment-name quant_llm-mxq \
|
| 17 |
+
--quant-snapshot-dir="/fdata/llm/mxq/snapshots" \
|
| 18 |
+
--result-dir="/fdata/llm/mxq/results" \
|
| 19 |
+
2>&1 \
|
| 20 |
+
| tee logs/bench-$(date +%Y%m%d%H%M%S).log
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-quant-allot.sh
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
|
| 7 |
+
TAILS=(tail-prioritized 2.00 4.00)
|
| 8 |
+
# MXQ_BATCHES=(HEADS TAILS)
|
| 9 |
+
MXQ_BATCHES=(TAILS)
|
| 10 |
+
declare -n MXQ_BATCH
|
| 11 |
+
|
| 12 |
+
EXP_BASE_NAME="tail-factor-search"
|
| 13 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME
|
| 14 |
+
|
| 15 |
+
for MXQ_BATCH in "${MXQ_BATCHES[@]}"; do
|
| 16 |
+
weight_algo=${MXQ_BATCH[@]:0:1}
|
| 17 |
+
for factor in ${MXQ_BATCH[@]:1}; do
|
| 18 |
+
ATTEMPT="${weight_algo}_${factor/./_}"
|
| 19 |
+
EXP_NAME="${ATTEMPT}"
|
| 20 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 21 |
+
|
| 22 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 23 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 24 |
+
|
| 25 |
+
# python -m pdb ../src/cli.py dump \
|
| 26 |
+
python ../src/cli.py dump \
|
| 27 |
+
--type quant_config_sim \
|
| 28 |
+
--model 0 1 2 \
|
| 29 |
+
--weight-algo $weight_algo \
|
| 30 |
+
--factor $factor \
|
| 31 |
+
--budget ${BUDGETS} \
|
| 32 |
+
--output-file="$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/${EXP_NAME}.csv"\
|
| 33 |
+
2>&1 \
|
| 34 |
+
| tee -a $log_file
|
| 35 |
+
|
| 36 |
+
done
|
| 37 |
+
|
| 38 |
+
done
|
| 39 |
+
|
| 40 |
+
OLD_DIR=$(pwd)
|
| 41 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 42 |
+
if [ ! -d pdfs/allot ]; then
|
| 43 |
+
mkdir -p pdfs/allot
|
| 44 |
+
fi
|
| 45 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 46 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 47 |
+
--mxq_data_dir data
|
| 48 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 49 |
+
MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 50 |
+
for model in $MODELS; do
|
| 51 |
+
for budget in $BUDGETS; do
|
| 52 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 53 |
+
-m $model \
|
| 54 |
+
-b $budget \
|
| 55 |
+
--attempt1 tail-prioritized_2_00 \
|
| 56 |
+
--attempt2 tail-prioritized_4_00 \
|
| 57 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 58 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 59 |
+
done
|
| 60 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-quant-milp.sh
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# python ../src/lm_quant_toolkit/eval/common.py > 2-8-quant-bits.txt
|
| 4 |
+
python ../src/lm_quant_toolkit/eval/common.py > 2-8-quant-bits-sensi.txt
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-tail-boost-quant-allot.sh
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/bin/bash
|
| 2 |
+
|
| 3 |
+
# BUDGETS="2.13 2.25 2.51 3.13 3.25 3.51 4.13 4.25 4.51"
|
| 4 |
+
BUDGETS="4.13 4.25 4.51"
|
| 5 |
+
RESULT_DIR="/fdata/llm/mxq/results"
|
| 6 |
+
weight_algo="tail_boost"
|
| 7 |
+
EXP_BASE_NAME="$weight_algo"
|
| 8 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME
|
| 9 |
+
|
| 10 |
+
ATTEMPT="$weight_algo"
|
| 11 |
+
EXP_NAME="${ATTEMPT}"
|
| 12 |
+
log_file="logs/bench-$(date +%Y%m%d%H%M%S).log"
|
| 13 |
+
|
| 14 |
+
mkdir -p $RESULT_DIR/${EXP_NAME}_ppl
|
| 15 |
+
mkdir -p $RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT
|
| 16 |
+
|
| 17 |
+
# python -m pdb ../src/cli.py dump \
|
| 18 |
+
python ../src/cli.py dump \
|
| 19 |
+
--type quant_config_sim \
|
| 20 |
+
--model 0 1 2 \
|
| 21 |
+
--weight-algo $weight_algo \
|
| 22 |
+
--budget ${BUDGETS} \
|
| 23 |
+
--output-file="$RESULT_DIR/$EXP_BASE_NAME/data/allot/mxq/$ATTEMPT/${EXP_NAME}.csv"\
|
| 24 |
+
2>&1 \
|
| 25 |
+
| tee -a $log_file
|
| 26 |
+
|
| 27 |
+
|
| 28 |
+
OLD_DIR=$(pwd)
|
| 29 |
+
cd $RESULT_DIR/$EXP_BASE_NAME
|
| 30 |
+
if [ ! -d pdfs/allot ]; then
|
| 31 |
+
mkdir -p pdfs/allot
|
| 32 |
+
fi
|
| 33 |
+
$OLD_DIR/../data-vis/combine.R \
|
| 34 |
+
--baseline_data_dir $OLD_DIR/../data-vis/data \
|
| 35 |
+
--mxq_data_dir data
|
| 36 |
+
# plot configuration allocations for 3 * 12 MXQ combinations
|
| 37 |
+
MODELS="Llama-2-7b-hf Llama-2-13b-hf Meta-Llama-3-8B"
|
| 38 |
+
for model in $MODELS; do
|
| 39 |
+
for budget in $BUDGETS; do
|
| 40 |
+
$OLD_DIR/../data-vis/plot-mxq-allocation.R \
|
| 41 |
+
-m $model \
|
| 42 |
+
-b $budget \
|
| 43 |
+
--attempt1 $weight_algo \
|
| 44 |
+
--attempt2 mxq1 \
|
| 45 |
+
--fnorm_data_dir $OLD_DIR/../src/data \
|
| 46 |
+
--quant_cfg_allot_file data/quant-cfg-allocation.csv
|
| 47 |
+
done
|
| 48 |
+
done
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-CLIP-ViT-B-32-laion2B-s34B-b79K.csv
ADDED
|
@@ -0,0 +1,577 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
layer,module,nbit1,gsize1,nbit2,gsize2,fnorm,memmb,params,kurtosis
|
| 2 |
+
0,vision.mlp.c_fc,2,32,8,128,9.128504753112791,0.705322265625,2359296,7.5647333557116845
|
| 3 |
+
0,vision.mlp.c_fc,2,64,8,128,10.76142692565918,0.6339111328125,2359296,7.5647333557116845
|
| 4 |
+
0,vision.mlp.c_fc,2,128,8,128,12.15142059326172,0.59820556640625,2359296,7.5647333557116845
|
| 5 |
+
0,vision.mlp.c_fc,3,32,8,128,4.122710227966309,0.986572265625,2359296,7.5647333557116845
|
| 6 |
+
0,vision.mlp.c_fc,3,64,8,128,5.038382530212402,0.9151611328125,2359296,7.5647333557116845
|
| 7 |
+
0,vision.mlp.c_fc,3,128,8,128,5.910652160644531,0.87945556640625,2359296,7.5647333557116845
|
| 8 |
+
0,vision.mlp.c_fc,4,32,8,128,1.938106060028076,1.267822265625,2359296,7.5647333557116845
|
| 9 |
+
0,vision.mlp.c_fc,4,64,8,128,2.3859243392944336,1.1964111328125,2359296,7.5647333557116845
|
| 10 |
+
0,vision.mlp.c_fc,4,128,8,128,2.824324131011963,1.16070556640625,2359296,7.5647333557116845
|
| 11 |
+
0,vision.mlp.c_fc,8,32,8,128,0.11737483739852904,2.392822265625,2359296,7.5647333557116845
|
| 12 |
+
0,vision.mlp.c_fc,8,64,8,128,0.14461086690425873,2.3214111328125,2359296,7.5647333557116845
|
| 13 |
+
0,vision.mlp.c_fc,8,128,8,128,0.171279177069664,2.28570556640625,2359296,7.5647333557116845
|
| 14 |
+
0,vision.mlp.c_proj,2,32,8,128,6.839951992034912,0.705322265625,2359296,8.024042788345657
|
| 15 |
+
0,vision.mlp.c_proj,2,64,8,128,8.144723892211914,0.6339111328125,2359296,8.024042788345657
|
| 16 |
+
0,vision.mlp.c_proj,2,128,8,128,9.282066345214844,0.59820556640625,2359296,8.024042788345657
|
| 17 |
+
0,vision.mlp.c_proj,3,32,8,128,2.976739406585694,0.986572265625,2359296,8.024042788345657
|
| 18 |
+
0,vision.mlp.c_proj,3,64,8,128,3.607946395874023,0.9151611328125,2359296,8.024042788345657
|
| 19 |
+
0,vision.mlp.c_proj,3,128,8,128,4.226345539093018,0.87945556640625,2359296,8.024042788345657
|
| 20 |
+
0,vision.mlp.c_proj,4,32,8,128,1.3918942213058472,1.267822265625,2359296,8.024042788345657
|
| 21 |
+
0,vision.mlp.c_proj,4,64,8,128,1.6903578042984009,1.1964111328125,2359296,8.024042788345657
|
| 22 |
+
0,vision.mlp.c_proj,4,128,8,128,1.9883592128753664,1.16070556640625,2359296,8.024042788345657
|
| 23 |
+
0,vision.mlp.c_proj,8,32,8,128,0.0842554122209549,2.392822265625,2359296,8.024042788345657
|
| 24 |
+
0,vision.mlp.c_proj,8,64,8,128,0.10231027752161026,2.3214111328125,2359296,8.024042788345657
|
| 25 |
+
0,vision.mlp.c_proj,8,128,8,128,0.11994849145412444,2.28570556640625,2359296,8.024042788345657
|
| 26 |
+
1,vision.mlp.c_fc,2,32,8,128,9.103703498840332,0.705322265625,2359296,5.556482388585281
|
| 27 |
+
1,vision.mlp.c_fc,2,64,8,128,10.854814529418944,0.6339111328125,2359296,5.556482388585281
|
| 28 |
+
1,vision.mlp.c_fc,2,128,8,128,12.433868408203123,0.59820556640625,2359296,5.556482388585281
|
| 29 |
+
1,vision.mlp.c_fc,3,32,8,128,4.004519939422607,0.986572265625,2359296,5.556482388585281
|
| 30 |
+
1,vision.mlp.c_fc,3,64,8,128,4.869235992431641,0.9151611328125,2359296,5.556482388585281
|
| 31 |
+
1,vision.mlp.c_fc,3,128,8,128,5.696018218994141,0.87945556640625,2359296,5.556482388585281
|
| 32 |
+
1,vision.mlp.c_fc,4,32,8,128,1.875130295753479,1.267822265625,2359296,5.556482388585281
|
| 33 |
+
1,vision.mlp.c_fc,4,64,8,128,2.288634777069092,1.1964111328125,2359296,5.556482388585281
|
| 34 |
+
1,vision.mlp.c_fc,4,128,8,128,2.692777395248413,1.16070556640625,2359296,5.556482388585281
|
| 35 |
+
1,vision.mlp.c_fc,8,32,8,128,0.1136341467499733,2.392822265625,2359296,5.556482388585281
|
| 36 |
+
1,vision.mlp.c_fc,8,64,8,128,0.13860879838466644,2.3214111328125,2359296,5.556482388585281
|
| 37 |
+
1,vision.mlp.c_fc,8,128,8,128,0.16262513399124146,2.28570556640625,2359296,5.556482388585281
|
| 38 |
+
1,vision.mlp.c_proj,2,32,8,128,6.911839962005615,0.705322265625,2359296,10.127617353490804
|
| 39 |
+
1,vision.mlp.c_proj,2,64,8,128,8.261187553405762,0.6339111328125,2359296,10.127617353490804
|
| 40 |
+
1,vision.mlp.c_proj,2,128,8,128,9.480621337890623,0.59820556640625,2359296,10.127617353490804
|
| 41 |
+
1,vision.mlp.c_proj,3,32,8,128,2.991220712661743,0.986572265625,2359296,10.127617353490804
|
| 42 |
+
1,vision.mlp.c_proj,3,64,8,128,3.6111984252929688,0.9151611328125,2359296,10.127617353490804
|
| 43 |
+
1,vision.mlp.c_proj,3,128,8,128,4.218574523925781,0.87945556640625,2359296,10.127617353490804
|
| 44 |
+
1,vision.mlp.c_proj,4,32,8,128,1.3967558145523071,1.267822265625,2359296,10.127617353490804
|
| 45 |
+
1,vision.mlp.c_proj,4,64,8,128,1.6911554336547852,1.1964111328125,2359296,10.127617353490804
|
| 46 |
+
1,vision.mlp.c_proj,4,128,8,128,1.983748197555542,1.16070556640625,2359296,10.127617353490804
|
| 47 |
+
1,vision.mlp.c_proj,8,32,8,128,0.08465902507305145,2.392822265625,2359296,10.127617353490804
|
| 48 |
+
1,vision.mlp.c_proj,8,64,8,128,0.10233005881309508,2.3214111328125,2359296,10.127617353490804
|
| 49 |
+
1,vision.mlp.c_proj,8,128,8,128,0.11965607851743698,2.28570556640625,2359296,10.127617353490804
|
| 50 |
+
2,vision.mlp.c_fc,2,32,8,128,8.82172966003418,0.705322265625,2359296,4.752866879979445
|
| 51 |
+
2,vision.mlp.c_fc,2,64,8,128,10.50925350189209,0.6339111328125,2359296,4.752866879979445
|
| 52 |
+
2,vision.mlp.c_fc,2,128,8,128,12.03489589691162,0.59820556640625,2359296,4.752866879979445
|
| 53 |
+
2,vision.mlp.c_fc,3,32,8,128,3.823518753051758,0.986572265625,2359296,4.752866879979445
|
| 54 |
+
2,vision.mlp.c_fc,3,64,8,128,4.6140289306640625,0.9151611328125,2359296,4.752866879979445
|
| 55 |
+
2,vision.mlp.c_fc,3,128,8,128,5.374442100524902,0.87945556640625,2359296,4.752866879979445
|
| 56 |
+
2,vision.mlp.c_fc,4,32,8,128,1.785937786102295,1.267822265625,2359296,4.752866879979445
|
| 57 |
+
2,vision.mlp.c_fc,4,64,8,128,2.158376693725586,1.1964111328125,2359296,4.752866879979445
|
| 58 |
+
2,vision.mlp.c_fc,4,128,8,128,2.523719310760498,1.16070556640625,2359296,4.752866879979445
|
| 59 |
+
2,vision.mlp.c_fc,8,32,8,128,0.10810095071792604,2.392822265625,2359296,4.752866879979445
|
| 60 |
+
2,vision.mlp.c_fc,8,64,8,128,0.13063114881515503,2.3214111328125,2359296,4.752866879979445
|
| 61 |
+
2,vision.mlp.c_fc,8,128,8,128,0.15222015976905823,2.28570556640625,2359296,4.752866879979445
|
| 62 |
+
2,vision.mlp.c_proj,2,32,8,128,6.639797687530518,0.705322265625,2359296,5.964957611759415
|
| 63 |
+
2,vision.mlp.c_proj,2,64,8,128,7.880718231201172,0.6339111328125,2359296,5.964957611759415
|
| 64 |
+
2,vision.mlp.c_proj,2,128,8,128,9.019220352172852,0.59820556640625,2359296,5.964957611759415
|
| 65 |
+
2,vision.mlp.c_proj,3,32,8,128,2.859175443649292,0.986572265625,2359296,5.964957611759415
|
| 66 |
+
2,vision.mlp.c_proj,3,64,8,128,3.413665294647217,0.9151611328125,2359296,5.964957611759415
|
| 67 |
+
2,vision.mlp.c_proj,3,128,8,128,3.95273756980896,0.87945556640625,2359296,5.964957611759415
|
| 68 |
+
2,vision.mlp.c_proj,4,32,8,128,1.333265781402588,1.267822265625,2359296,5.964957611759415
|
| 69 |
+
2,vision.mlp.c_proj,4,64,8,128,1.5933430194854736,1.1964111328125,2359296,5.964957611759415
|
| 70 |
+
2,vision.mlp.c_proj,4,128,8,128,1.8488850593566897,1.16070556640625,2359296,5.964957611759415
|
| 71 |
+
2,vision.mlp.c_proj,8,32,8,128,0.08075807988643646,2.392822265625,2359296,5.964957611759415
|
| 72 |
+
2,vision.mlp.c_proj,8,64,8,128,0.09648673981428146,2.3214111328125,2359296,5.964957611759415
|
| 73 |
+
2,vision.mlp.c_proj,8,128,8,128,0.11135073751211166,2.28570556640625,2359296,5.964957611759415
|
| 74 |
+
3,vision.mlp.c_fc,2,32,8,128,8.47494125366211,0.705322265625,2359296,4.378746321591061
|
| 75 |
+
3,vision.mlp.c_fc,2,64,8,128,10.082805633544922,0.6339111328125,2359296,4.378746321591061
|
| 76 |
+
3,vision.mlp.c_fc,2,128,8,128,11.549962043762209,0.59820556640625,2359296,4.378746321591061
|
| 77 |
+
3,vision.mlp.c_fc,3,32,8,128,3.6546263694763184,0.986572265625,2359296,4.378746321591061
|
| 78 |
+
3,vision.mlp.c_fc,3,64,8,128,4.391681671142578,0.9151611328125,2359296,4.378746321591061
|
| 79 |
+
3,vision.mlp.c_fc,3,128,8,128,5.095606327056885,0.87945556640625,2359296,4.378746321591061
|
| 80 |
+
3,vision.mlp.c_fc,4,32,8,128,1.706535577774048,1.267822265625,2359296,4.378746321591061
|
| 81 |
+
3,vision.mlp.c_fc,4,64,8,128,2.050750970840454,1.1964111328125,2359296,4.378746321591061
|
| 82 |
+
3,vision.mlp.c_fc,4,128,8,128,2.3856451511383057,1.16070556640625,2359296,4.378746321591061
|
| 83 |
+
3,vision.mlp.c_fc,8,32,8,128,0.10344040393829346,2.392822265625,2359296,4.378746321591061
|
| 84 |
+
3,vision.mlp.c_fc,8,64,8,128,0.12399496138095856,2.3214111328125,2359296,4.378746321591061
|
| 85 |
+
3,vision.mlp.c_fc,8,128,8,128,0.1439141482114792,2.28570556640625,2359296,4.378746321591061
|
| 86 |
+
3,vision.mlp.c_proj,2,32,8,128,6.277030944824219,0.705322265625,2359296,5.006922011163274
|
| 87 |
+
3,vision.mlp.c_proj,2,64,8,128,7.414824485778809,0.6339111328125,2359296,5.006922011163274
|
| 88 |
+
3,vision.mlp.c_proj,2,128,8,128,8.46260929107666,0.59820556640625,2359296,5.006922011163274
|
| 89 |
+
3,vision.mlp.c_proj,3,32,8,128,2.693903923034668,0.986572265625,2359296,5.006922011163274
|
| 90 |
+
3,vision.mlp.c_proj,3,64,8,128,3.1912341117858887,0.9151611328125,2359296,5.006922011163274
|
| 91 |
+
3,vision.mlp.c_proj,3,128,8,128,3.6711747646331783,0.87945556640625,2359296,5.006922011163274
|
| 92 |
+
3,vision.mlp.c_proj,4,32,8,128,1.256372094154358,1.267822265625,2359296,5.006922011163274
|
| 93 |
+
3,vision.mlp.c_proj,4,64,8,128,1.489571452140808,1.1964111328125,2359296,5.006922011163274
|
| 94 |
+
3,vision.mlp.c_proj,4,128,8,128,1.7132800817489624,1.16070556640625,2359296,5.006922011163274
|
| 95 |
+
3,vision.mlp.c_proj,8,32,8,128,0.0760984867811203,2.392822265625,2359296,5.006922011163274
|
| 96 |
+
3,vision.mlp.c_proj,8,64,8,128,0.09016053378582,2.3214111328125,2359296,5.006922011163274
|
| 97 |
+
3,vision.mlp.c_proj,8,128,8,128,0.10330581665039062,2.28570556640625,2359296,5.006922011163274
|
| 98 |
+
4,vision.mlp.c_fc,2,32,8,128,8.274068832397461,0.705322265625,2359296,3.918504223899523
|
| 99 |
+
4,vision.mlp.c_fc,2,64,8,128,9.78947639465332,0.6339111328125,2359296,3.918504223899523
|
| 100 |
+
4,vision.mlp.c_fc,2,128,8,128,11.202027320861816,0.59820556640625,2359296,3.918504223899523
|
| 101 |
+
4,vision.mlp.c_fc,3,32,8,128,3.5570082664489746,0.986572265625,2359296,3.918504223899523
|
| 102 |
+
4,vision.mlp.c_fc,3,64,8,128,4.2356367111206055,0.9151611328125,2359296,3.918504223899523
|
| 103 |
+
4,vision.mlp.c_fc,3,128,8,128,4.884209632873535,0.87945556640625,2359296,3.918504223899523
|
| 104 |
+
4,vision.mlp.c_fc,4,32,8,128,1.6616051197052002,1.267822265625,2359296,3.918504223899523
|
| 105 |
+
4,vision.mlp.c_fc,4,64,8,128,1.979529857635498,1.1964111328125,2359296,3.918504223899523
|
| 106 |
+
4,vision.mlp.c_fc,4,128,8,128,2.284747838973999,1.16070556640625,2359296,3.918504223899523
|
| 107 |
+
4,vision.mlp.c_fc,8,32,8,128,0.10057099163532256,2.392822265625,2359296,3.918504223899523
|
| 108 |
+
4,vision.mlp.c_fc,8,64,8,128,0.11972232908010484,2.3214111328125,2359296,3.918504223899523
|
| 109 |
+
4,vision.mlp.c_fc,8,128,8,128,0.13779735565185547,2.28570556640625,2359296,3.918504223899523
|
| 110 |
+
4,vision.mlp.c_proj,2,32,8,128,6.439798831939697,0.705322265625,2359296,4.362240481953023
|
| 111 |
+
4,vision.mlp.c_proj,2,64,8,128,7.564638137817383,0.6339111328125,2359296,4.362240481953023
|
| 112 |
+
4,vision.mlp.c_proj,2,128,8,128,8.594568252563477,0.59820556640625,2359296,4.362240481953023
|
| 113 |
+
4,vision.mlp.c_proj,3,32,8,128,2.7584915161132812,0.986572265625,2359296,4.362240481953023
|
| 114 |
+
4,vision.mlp.c_proj,3,64,8,128,3.251418113708496,0.9151611328125,2359296,4.362240481953023
|
| 115 |
+
4,vision.mlp.c_proj,3,128,8,128,3.716466665267944,0.87945556640625,2359296,4.362240481953023
|
| 116 |
+
4,vision.mlp.c_proj,4,32,8,128,1.2862253189086914,1.267822265625,2359296,4.362240481953023
|
| 117 |
+
4,vision.mlp.c_proj,4,64,8,128,1.516956448554993,1.1964111328125,2359296,4.362240481953023
|
| 118 |
+
4,vision.mlp.c_proj,4,128,8,128,1.7344794273376465,1.16070556640625,2359296,4.362240481953023
|
| 119 |
+
4,vision.mlp.c_proj,8,32,8,128,0.07793856412172318,2.392822265625,2359296,4.362240481953023
|
| 120 |
+
4,vision.mlp.c_proj,8,64,8,128,0.0918104276061058,2.3214111328125,2359296,4.362240481953023
|
| 121 |
+
4,vision.mlp.c_proj,8,128,8,128,0.10458982735872269,2.28570556640625,2359296,4.362240481953023
|
| 122 |
+
5,vision.mlp.c_fc,2,32,8,128,8.392443656921387,0.705322265625,2359296,3.714197056179566
|
| 123 |
+
5,vision.mlp.c_fc,2,64,8,128,9.947240829467772,0.6339111328125,2359296,3.714197056179566
|
| 124 |
+
5,vision.mlp.c_fc,2,128,8,128,11.396702766418455,0.59820556640625,2359296,3.714197056179566
|
| 125 |
+
5,vision.mlp.c_fc,3,32,8,128,3.599330425262451,0.986572265625,2359296,3.714197056179566
|
| 126 |
+
5,vision.mlp.c_fc,3,64,8,128,4.279275417327881,0.9151611328125,2359296,3.714197056179566
|
| 127 |
+
5,vision.mlp.c_fc,3,128,8,128,4.932392597198486,0.87945556640625,2359296,3.714197056179566
|
| 128 |
+
5,vision.mlp.c_fc,4,32,8,128,1.6796408891677856,1.267822265625,2359296,3.714197056179566
|
| 129 |
+
5,vision.mlp.c_fc,4,64,8,128,1.997564435005188,1.1964111328125,2359296,3.714197056179566
|
| 130 |
+
5,vision.mlp.c_fc,4,128,8,128,2.30387020111084,1.16070556640625,2359296,3.714197056179566
|
| 131 |
+
5,vision.mlp.c_fc,8,32,8,128,0.10184947401285172,2.392822265625,2359296,3.714197056179566
|
| 132 |
+
5,vision.mlp.c_fc,8,64,8,128,0.12093502283096312,2.3214111328125,2359296,3.714197056179566
|
| 133 |
+
5,vision.mlp.c_fc,8,128,8,128,0.13896310329437256,2.28570556640625,2359296,3.714197056179566
|
| 134 |
+
5,vision.mlp.c_proj,2,32,8,128,6.786053657531738,0.705322265625,2359296,4.504410342372665
|
| 135 |
+
5,vision.mlp.c_proj,2,64,8,128,7.957103252410889,0.6339111328125,2359296,4.504410342372665
|
| 136 |
+
5,vision.mlp.c_proj,2,128,8,128,9.033921241760254,0.59820556640625,2359296,4.504410342372665
|
| 137 |
+
5,vision.mlp.c_proj,3,32,8,128,2.905226469039917,0.986572265625,2359296,4.504410342372665
|
| 138 |
+
5,vision.mlp.c_proj,3,64,8,128,3.4214489459991455,0.9151611328125,2359296,4.504410342372665
|
| 139 |
+
5,vision.mlp.c_proj,3,128,8,128,3.9075539112091064,0.87945556640625,2359296,4.504410342372665
|
| 140 |
+
5,vision.mlp.c_proj,4,32,8,128,1.355237364768982,1.267822265625,2359296,4.504410342372665
|
| 141 |
+
5,vision.mlp.c_proj,4,64,8,128,1.5957733392715454,1.1964111328125,2359296,4.504410342372665
|
| 142 |
+
5,vision.mlp.c_proj,4,128,8,128,1.8257287740707395,1.16070556640625,2359296,4.504410342372665
|
| 143 |
+
5,vision.mlp.c_proj,8,32,8,128,0.0820372924208641,2.392822265625,2359296,4.504410342372665
|
| 144 |
+
5,vision.mlp.c_proj,8,64,8,128,0.09651072323322296,2.3214111328125,2359296,4.504410342372665
|
| 145 |
+
5,vision.mlp.c_proj,8,128,8,128,0.10990241914987564,2.28570556640625,2359296,4.504410342372665
|
| 146 |
+
6,vision.mlp.c_fc,2,32,8,128,8.521951675415039,0.705322265625,2359296,3.614600960861904
|
| 147 |
+
6,vision.mlp.c_fc,2,64,8,128,10.0691499710083,0.6339111328125,2359296,3.614600960861904
|
| 148 |
+
6,vision.mlp.c_fc,2,128,8,128,11.54863739013672,0.59820556640625,2359296,3.614600960861904
|
| 149 |
+
6,vision.mlp.c_fc,3,32,8,128,3.649571895599365,0.986572265625,2359296,3.614600960861904
|
| 150 |
+
6,vision.mlp.c_fc,3,64,8,128,4.324981689453125,0.9151611328125,2359296,3.614600960861904
|
| 151 |
+
6,vision.mlp.c_fc,3,128,8,128,4.97314977645874,0.87945556640625,2359296,3.614600960861904
|
| 152 |
+
6,vision.mlp.c_fc,4,32,8,128,1.7034014463424685,1.267822265625,2359296,3.614600960861904
|
| 153 |
+
6,vision.mlp.c_fc,4,64,8,128,2.0181891918182373,1.1964111328125,2359296,3.614600960861904
|
| 154 |
+
6,vision.mlp.c_fc,4,128,8,128,2.3228890895843506,1.16070556640625,2359296,3.614600960861904
|
| 155 |
+
6,vision.mlp.c_fc,8,32,8,128,0.10322079807519911,2.392822265625,2359296,3.614600960861904
|
| 156 |
+
6,vision.mlp.c_fc,8,64,8,128,0.12220923602581024,2.3214111328125,2359296,3.614600960861904
|
| 157 |
+
6,vision.mlp.c_fc,8,128,8,128,0.14006850123405457,2.28570556640625,2359296,3.614600960861904
|
| 158 |
+
6,vision.mlp.c_proj,2,32,8,128,7.034173488616943,0.705322265625,2359296,3.703802696792269
|
| 159 |
+
6,vision.mlp.c_proj,2,64,8,128,8.234294891357422,0.6339111328125,2359296,3.703802696792269
|
| 160 |
+
6,vision.mlp.c_proj,2,128,8,128,9.333321571350098,0.59820556640625,2359296,3.703802696792269
|
| 161 |
+
6,vision.mlp.c_proj,3,32,8,128,3.009636878967285,0.986572265625,2359296,3.703802696792269
|
| 162 |
+
6,vision.mlp.c_proj,3,64,8,128,3.5273571014404297,0.9151611328125,2359296,3.703802696792269
|
| 163 |
+
6,vision.mlp.c_proj,3,128,8,128,4.010415077209473,0.87945556640625,2359296,3.703802696792269
|
| 164 |
+
6,vision.mlp.c_proj,4,32,8,128,1.404062271118164,1.267822265625,2359296,3.703802696792269
|
| 165 |
+
6,vision.mlp.c_proj,4,64,8,128,1.6456388235092163,1.1964111328125,2359296,3.703802696792269
|
| 166 |
+
6,vision.mlp.c_proj,4,128,8,128,1.8724839687347412,1.16070556640625,2359296,3.703802696792269
|
| 167 |
+
6,vision.mlp.c_proj,8,32,8,128,0.08510661125183105,2.392822265625,2359296,3.703802696792269
|
| 168 |
+
6,vision.mlp.c_proj,8,64,8,128,0.09971028566360474,2.3214111328125,2359296,3.703802696792269
|
| 169 |
+
6,vision.mlp.c_proj,8,128,8,128,0.1129401922225952,2.28570556640625,2359296,3.703802696792269
|
| 170 |
+
7,vision.mlp.c_fc,2,32,8,128,8.388879776000977,0.705322265625,2359296,3.4103181441120247
|
| 171 |
+
7,vision.mlp.c_fc,2,64,8,128,9.876380920410156,0.6339111328125,2359296,3.4103181441120247
|
| 172 |
+
7,vision.mlp.c_fc,2,128,8,128,11.25124740600586,0.59820556640625,2359296,3.4103181441120247
|
| 173 |
+
7,vision.mlp.c_fc,3,32,8,128,3.5898404121398926,0.986572265625,2359296,3.4103181441120247
|
| 174 |
+
7,vision.mlp.c_fc,3,64,8,128,4.232213020324707,0.9151611328125,2359296,3.4103181441120247
|
| 175 |
+
7,vision.mlp.c_fc,3,128,8,128,4.836949348449707,0.87945556640625,2359296,3.4103181441120247
|
| 176 |
+
7,vision.mlp.c_fc,4,32,8,128,1.674543380737305,1.267822265625,2359296,3.4103181441120247
|
| 177 |
+
7,vision.mlp.c_fc,4,64,8,128,1.9748677015304563,1.1964111328125,2359296,3.4103181441120247
|
| 178 |
+
7,vision.mlp.c_fc,4,128,8,128,2.2568445205688477,1.16070556640625,2359296,3.4103181441120247
|
| 179 |
+
7,vision.mlp.c_fc,8,32,8,128,0.10150232911109924,2.392822265625,2359296,3.4103181441120247
|
| 180 |
+
7,vision.mlp.c_fc,8,64,8,128,0.11956389248371124,2.3214111328125,2359296,3.4103181441120247
|
| 181 |
+
7,vision.mlp.c_fc,8,128,8,128,0.1361236423254013,2.28570556640625,2359296,3.4103181441120247
|
| 182 |
+
7,vision.mlp.c_proj,2,32,8,128,7.932621479034424,0.705322265625,2359296,3.7265741474392886
|
| 183 |
+
7,vision.mlp.c_proj,2,64,8,128,9.285072326660156,0.6339111328125,2359296,3.7265741474392886
|
| 184 |
+
7,vision.mlp.c_proj,2,128,8,128,10.539323806762695,0.59820556640625,2359296,3.7265741474392886
|
| 185 |
+
7,vision.mlp.c_proj,3,32,8,128,3.394057273864746,0.986572265625,2359296,3.7265741474392886
|
| 186 |
+
7,vision.mlp.c_proj,3,64,8,128,3.9794647693634033,0.9151611328125,2359296,3.7265741474392886
|
| 187 |
+
7,vision.mlp.c_proj,3,128,8,128,4.525967597961426,0.87945556640625,2359296,3.7265741474392886
|
| 188 |
+
7,vision.mlp.c_proj,4,32,8,128,1.583614945411682,1.267822265625,2359296,3.7265741474392886
|
| 189 |
+
7,vision.mlp.c_proj,4,64,8,128,1.8572959899902344,1.1964111328125,2359296,3.7265741474392886
|
| 190 |
+
7,vision.mlp.c_proj,4,128,8,128,2.113091468811035,1.16070556640625,2359296,3.7265741474392886
|
| 191 |
+
7,vision.mlp.c_proj,8,32,8,128,0.09593687206506728,2.392822265625,2359296,3.7265741474392886
|
| 192 |
+
7,vision.mlp.c_proj,8,64,8,128,0.11239387094974518,2.3214111328125,2359296,3.7265741474392886
|
| 193 |
+
7,vision.mlp.c_proj,8,128,8,128,0.12745003402233124,2.28570556640625,2359296,3.7265741474392886
|
| 194 |
+
8,vision.mlp.c_fc,2,32,8,128,8.285651206970215,0.705322265625,2359296,3.734153132112317
|
| 195 |
+
8,vision.mlp.c_fc,2,64,8,128,9.778728485107422,0.6339111328125,2359296,3.734153132112317
|
| 196 |
+
8,vision.mlp.c_fc,2,128,8,128,11.152859687805176,0.59820556640625,2359296,3.734153132112317
|
| 197 |
+
8,vision.mlp.c_fc,3,32,8,128,3.547513008117676,0.986572265625,2359296,3.734153132112317
|
| 198 |
+
8,vision.mlp.c_fc,3,64,8,128,4.191949367523193,0.9151611328125,2359296,3.734153132112317
|
| 199 |
+
8,vision.mlp.c_fc,3,128,8,128,4.793965816497803,0.87945556640625,2359296,3.734153132112317
|
| 200 |
+
8,vision.mlp.c_fc,4,32,8,128,1.6551411151885986,1.267822265625,2359296,3.734153132112317
|
| 201 |
+
8,vision.mlp.c_fc,4,64,8,128,1.956448316574097,1.1964111328125,2359296,3.734153132112317
|
| 202 |
+
8,vision.mlp.c_fc,4,128,8,128,2.2382309436798096,1.16070556640625,2359296,3.734153132112317
|
| 203 |
+
8,vision.mlp.c_fc,8,32,8,128,0.100438229739666,2.392822265625,2359296,3.734153132112317
|
| 204 |
+
8,vision.mlp.c_fc,8,64,8,128,0.11862816661596298,2.3214111328125,2359296,3.734153132112317
|
| 205 |
+
8,vision.mlp.c_fc,8,128,8,128,0.13508424162864685,2.28570556640625,2359296,3.734153132112317
|
| 206 |
+
8,vision.mlp.c_proj,2,32,8,128,8.032468795776367,0.705322265625,2359296,3.770444941283215
|
| 207 |
+
8,vision.mlp.c_proj,2,64,8,128,9.38332176208496,0.6339111328125,2359296,3.770444941283215
|
| 208 |
+
8,vision.mlp.c_proj,2,128,8,128,10.626753807067873,0.59820556640625,2359296,3.770444941283215
|
| 209 |
+
8,vision.mlp.c_proj,3,32,8,128,3.433583498001098,0.986572265625,2359296,3.770444941283215
|
| 210 |
+
8,vision.mlp.c_proj,3,64,8,128,4.0180745124816895,0.9151611328125,2359296,3.770444941283215
|
| 211 |
+
8,vision.mlp.c_proj,3,128,8,128,4.556089878082275,0.87945556640625,2359296,3.770444941283215
|
| 212 |
+
8,vision.mlp.c_proj,4,32,8,128,1.602971076965332,1.267822265625,2359296,3.770444941283215
|
| 213 |
+
8,vision.mlp.c_proj,4,64,8,128,1.875213384628296,1.1964111328125,2359296,3.770444941283215
|
| 214 |
+
8,vision.mlp.c_proj,4,128,8,128,2.125036239624023,1.16070556640625,2359296,3.770444941283215
|
| 215 |
+
8,vision.mlp.c_proj,8,32,8,128,0.09719990193843842,2.392822265625,2359296,3.770444941283215
|
| 216 |
+
8,vision.mlp.c_proj,8,64,8,128,0.1135389283299446,2.3214111328125,2359296,3.770444941283215
|
| 217 |
+
8,vision.mlp.c_proj,8,128,8,128,0.1282404214143753,2.28570556640625,2359296,3.770444941283215
|
| 218 |
+
9,vision.mlp.c_fc,2,32,8,128,8.818232536315918,0.705322265625,2359296,3.406923087940011
|
| 219 |
+
9,vision.mlp.c_fc,2,64,8,128,10.373499870300291,0.6339111328125,2359296,3.406923087940011
|
| 220 |
+
9,vision.mlp.c_fc,2,128,8,128,11.801898002624512,0.59820556640625,2359296,3.406923087940011
|
| 221 |
+
9,vision.mlp.c_fc,3,32,8,128,3.7690412998199463,0.986572265625,2359296,3.406923087940011
|
| 222 |
+
9,vision.mlp.c_fc,3,64,8,128,4.43658447265625,0.9151611328125,2359296,3.406923087940011
|
| 223 |
+
9,vision.mlp.c_fc,3,128,8,128,5.0595269203186035,0.87945556640625,2359296,3.406923087940011
|
| 224 |
+
9,vision.mlp.c_fc,4,32,8,128,1.759302854537964,1.267822265625,2359296,3.406923087940011
|
| 225 |
+
9,vision.mlp.c_fc,4,64,8,128,2.071089506149292,1.1964111328125,2359296,3.406923087940011
|
| 226 |
+
9,vision.mlp.c_fc,4,128,8,128,2.3599820137023926,1.16070556640625,2359296,3.406923087940011
|
| 227 |
+
9,vision.mlp.c_fc,8,32,8,128,0.10690240561962128,2.392822265625,2359296,3.406923087940011
|
| 228 |
+
9,vision.mlp.c_fc,8,64,8,128,0.1255631297826767,2.3214111328125,2359296,3.406923087940011
|
| 229 |
+
9,vision.mlp.c_fc,8,128,8,128,0.14248855412006378,2.28570556640625,2359296,3.406923087940011
|
| 230 |
+
9,vision.mlp.c_proj,2,32,8,128,9.092228889465332,0.705322265625,2359296,3.7473560752962425
|
| 231 |
+
9,vision.mlp.c_proj,2,64,8,128,10.604211807250977,0.6339111328125,2359296,3.7473560752962425
|
| 232 |
+
9,vision.mlp.c_proj,2,128,8,128,11.983688354492188,0.59820556640625,2359296,3.7473560752962425
|
| 233 |
+
9,vision.mlp.c_proj,3,32,8,128,3.8891754150390625,0.986572265625,2359296,3.7473560752962425
|
| 234 |
+
9,vision.mlp.c_proj,3,64,8,128,4.537405967712402,0.9151611328125,2359296,3.7473560752962425
|
| 235 |
+
9,vision.mlp.c_proj,3,128,8,128,5.127986431121826,0.87945556640625,2359296,3.7473560752962425
|
| 236 |
+
9,vision.mlp.c_proj,4,32,8,128,1.8149250745773315,1.267822265625,2359296,3.7473560752962425
|
| 237 |
+
9,vision.mlp.c_proj,4,64,8,128,2.1180083751678467,1.1964111328125,2359296,3.7473560752962425
|
| 238 |
+
9,vision.mlp.c_proj,4,128,8,128,2.3949661254882812,1.16070556640625,2359296,3.7473560752962425
|
| 239 |
+
9,vision.mlp.c_proj,8,32,8,128,0.10990245640277864,2.392822265625,2359296,3.7473560752962425
|
| 240 |
+
9,vision.mlp.c_proj,8,64,8,128,0.12820811569690704,2.3214111328125,2359296,3.7473560752962425
|
| 241 |
+
9,vision.mlp.c_proj,8,128,8,128,0.14443348348140717,2.28570556640625,2359296,3.7473560752962425
|
| 242 |
+
10,vision.mlp.c_fc,2,32,8,128,9.356571197509766,0.705322265625,2359296,3.506843786702064
|
| 243 |
+
10,vision.mlp.c_fc,2,64,8,128,10.991547584533691,0.6339111328125,2359296,3.506843786702064
|
| 244 |
+
10,vision.mlp.c_fc,2,128,8,128,12.464940071105955,0.59820556640625,2359296,3.506843786702064
|
| 245 |
+
10,vision.mlp.c_fc,3,32,8,128,3.9996769428253174,0.986572265625,2359296,3.506843786702064
|
| 246 |
+
10,vision.mlp.c_fc,3,64,8,128,4.703681468963623,0.9151611328125,2359296,3.506843786702064
|
| 247 |
+
10,vision.mlp.c_fc,3,128,8,128,5.345017910003662,0.87945556640625,2359296,3.506843786702064
|
| 248 |
+
10,vision.mlp.c_fc,4,32,8,128,1.865874171257019,1.267822265625,2359296,3.506843786702064
|
| 249 |
+
10,vision.mlp.c_fc,4,64,8,128,2.195168972015381,1.1964111328125,2359296,3.506843786702064
|
| 250 |
+
10,vision.mlp.c_fc,4,128,8,128,2.495924472808838,1.16070556640625,2359296,3.506843786702064
|
| 251 |
+
10,vision.mlp.c_fc,8,32,8,128,0.11316034197807312,2.392822265625,2359296,3.506843786702064
|
| 252 |
+
10,vision.mlp.c_fc,8,64,8,128,0.13293932378292084,2.3214111328125,2359296,3.506843786702064
|
| 253 |
+
10,vision.mlp.c_fc,8,128,8,128,0.15064848959445953,2.28570556640625,2359296,3.506843786702064
|
| 254 |
+
10,vision.mlp.c_proj,2,32,8,128,9.723986625671388,0.705322265625,2359296,3.7916828549200345
|
| 255 |
+
10,vision.mlp.c_proj,2,64,8,128,11.35032558441162,0.6339111328125,2359296,3.7916828549200345
|
| 256 |
+
10,vision.mlp.c_proj,2,128,8,128,12.832988739013672,0.59820556640625,2359296,3.7916828549200345
|
| 257 |
+
10,vision.mlp.c_proj,3,32,8,128,4.1578369140625,0.986572265625,2359296,3.7916828549200345
|
| 258 |
+
10,vision.mlp.c_proj,3,64,8,128,4.862079620361328,0.9151611328125,2359296,3.7916828549200345
|
| 259 |
+
10,vision.mlp.c_proj,3,128,8,128,5.495484352111816,0.87945556640625,2359296,3.7916828549200345
|
| 260 |
+
10,vision.mlp.c_proj,4,32,8,128,1.9391449689865112,1.267822265625,2359296,3.7916828549200345
|
| 261 |
+
10,vision.mlp.c_proj,4,64,8,128,2.2657644748687744,1.1964111328125,2359296,3.7916828549200345
|
| 262 |
+
10,vision.mlp.c_proj,4,128,8,128,2.5652666091918945,1.16070556640625,2359296,3.7916828549200345
|
| 263 |
+
10,vision.mlp.c_proj,8,32,8,128,0.11764831840991974,2.392822265625,2359296,3.7916828549200345
|
| 264 |
+
10,vision.mlp.c_proj,8,64,8,128,0.13722199201583862,2.3214111328125,2359296,3.7916828549200345
|
| 265 |
+
10,vision.mlp.c_proj,8,128,8,128,0.1546991765499115,2.28570556640625,2359296,3.7916828549200345
|
| 266 |
+
11,vision.mlp.c_fc,2,32,8,128,8.082159042358398,0.705322265625,2359296,3.336296405622262
|
| 267 |
+
11,vision.mlp.c_fc,2,64,8,128,9.489198684692385,0.6339111328125,2359296,3.336296405622262
|
| 268 |
+
11,vision.mlp.c_fc,2,128,8,128,10.802061080932615,0.59820556640625,2359296,3.336296405622262
|
| 269 |
+
11,vision.mlp.c_fc,3,32,8,128,3.4594030380249023,0.986572265625,2359296,3.336296405622262
|
| 270 |
+
11,vision.mlp.c_fc,3,64,8,128,4.068918704986572,0.9151611328125,2359296,3.336296405622262
|
| 271 |
+
11,vision.mlp.c_fc,3,128,8,128,4.641410827636719,0.87945556640625,2359296,3.336296405622262
|
| 272 |
+
11,vision.mlp.c_fc,4,32,8,128,1.6126223802566528,1.267822265625,2359296,3.336296405622262
|
| 273 |
+
11,vision.mlp.c_fc,4,64,8,128,1.8982433080673216,1.1964111328125,2359296,3.336296405622262
|
| 274 |
+
11,vision.mlp.c_fc,4,128,8,128,2.1648974418640137,1.16070556640625,2359296,3.336296405622262
|
| 275 |
+
11,vision.mlp.c_fc,8,32,8,128,0.09783997386693954,2.392822265625,2359296,3.336296405622262
|
| 276 |
+
11,vision.mlp.c_fc,8,64,8,128,0.11497506499290466,2.3214111328125,2359296,3.336296405622262
|
| 277 |
+
11,vision.mlp.c_fc,8,128,8,128,0.1306662559509277,2.28570556640625,2359296,3.336296405622262
|
| 278 |
+
11,vision.mlp.c_proj,2,32,8,128,7.7494797706604,0.705322265625,2359296,3.5289485578856628
|
| 279 |
+
11,vision.mlp.c_proj,2,64,8,128,9.04317855834961,0.6339111328125,2359296,3.5289485578856628
|
| 280 |
+
11,vision.mlp.c_proj,2,128,8,128,10.23215389251709,0.59820556640625,2359296,3.5289485578856628
|
| 281 |
+
11,vision.mlp.c_proj,3,32,8,128,3.3150153160095215,0.986572265625,2359296,3.5289485578856628
|
| 282 |
+
11,vision.mlp.c_proj,3,64,8,128,3.8718862533569336,0.9151611328125,2359296,3.5289485578856628
|
| 283 |
+
11,vision.mlp.c_proj,3,128,8,128,4.384607315063477,0.87945556640625,2359296,3.5289485578856628
|
| 284 |
+
11,vision.mlp.c_proj,4,32,8,128,1.545481562614441,1.267822265625,2359296,3.5289485578856628
|
| 285 |
+
11,vision.mlp.c_proj,4,64,8,128,1.806149125099182,1.1964111328125,2359296,3.5289485578856628
|
| 286 |
+
11,vision.mlp.c_proj,4,128,8,128,2.0433690547943115,1.16070556640625,2359296,3.5289485578856628
|
| 287 |
+
11,vision.mlp.c_proj,8,32,8,128,0.0937107503414154,2.392822265625,2359296,3.5289485578856628
|
| 288 |
+
11,vision.mlp.c_proj,8,64,8,128,0.10938263684511185,2.3214111328125,2359296,3.5289485578856628
|
| 289 |
+
11,vision.mlp.c_proj,8,128,8,128,0.1232990100979805,2.28570556640625,2359296,3.5289485578856628
|
| 290 |
+
0,text.mlp.c_fc,2,32,8,128,6.464750289916992,0.3134765625,1048576,18.89034464279892
|
| 291 |
+
0,text.mlp.c_fc,2,64,8,128,7.523227214813232,0.28173828125,1048576,18.89034464279892
|
| 292 |
+
0,text.mlp.c_fc,2,128,8,128,8.498074531555176,0.265869140625,1048576,18.89034464279892
|
| 293 |
+
0,text.mlp.c_fc,3,32,8,128,2.7694246768951416,0.4384765625,1048576,18.89034464279892
|
| 294 |
+
0,text.mlp.c_fc,3,64,8,128,3.2232933044433594,0.40673828125,1048576,18.89034464279892
|
| 295 |
+
0,text.mlp.c_fc,3,128,8,128,3.6492912769317623,0.390869140625,1048576,18.89034464279892
|
| 296 |
+
0,text.mlp.c_fc,4,32,8,128,1.2936551570892334,0.5634765625,1048576,18.89034464279892
|
| 297 |
+
0,text.mlp.c_fc,4,64,8,128,1.5072178840637207,0.53173828125,1048576,18.89034464279892
|
| 298 |
+
0,text.mlp.c_fc,4,128,8,128,1.7056944370269775,0.515869140625,1048576,18.89034464279892
|
| 299 |
+
0,text.mlp.c_fc,8,32,8,128,0.07893156260251999,1.0634765625,1048576,18.89034464279892
|
| 300 |
+
0,text.mlp.c_fc,8,64,8,128,0.09200920909643172,1.03173828125,1048576,18.89034464279892
|
| 301 |
+
0,text.mlp.c_fc,8,128,8,128,0.10402266681194304,1.015869140625,1048576,18.89034464279892
|
| 302 |
+
0,text.mlp.c_proj,2,32,8,128,4.214115142822266,0.3134765625,1048576,8.257733339213775
|
| 303 |
+
0,text.mlp.c_proj,2,64,8,128,4.919820785522461,0.28173828125,1048576,8.257733339213775
|
| 304 |
+
0,text.mlp.c_proj,2,128,8,128,5.572372913360596,0.265869140625,1048576,8.257733339213775
|
| 305 |
+
0,text.mlp.c_proj,3,32,8,128,1.801061511039734,0.4384765625,1048576,8.257733339213775
|
| 306 |
+
0,text.mlp.c_proj,3,64,8,128,2.1083173751831055,0.40673828125,1048576,8.257733339213775
|
| 307 |
+
0,text.mlp.c_proj,3,128,8,128,2.391723871231079,0.390869140625,1048576,8.257733339213775
|
| 308 |
+
0,text.mlp.c_proj,4,32,8,128,0.8409978151321411,0.5634765625,1048576,8.257733339213775
|
| 309 |
+
0,text.mlp.c_proj,4,64,8,128,0.9834749698638916,0.53173828125,1048576,8.257733339213775
|
| 310 |
+
0,text.mlp.c_proj,4,128,8,128,1.1154149770736694,0.515869140625,1048576,8.257733339213775
|
| 311 |
+
0,text.mlp.c_proj,8,32,8,128,0.05123524367809296,1.0634765625,1048576,8.257733339213775
|
| 312 |
+
0,text.mlp.c_proj,8,64,8,128,0.05990749597549438,1.03173828125,1048576,8.257733339213775
|
| 313 |
+
0,text.mlp.c_proj,8,128,8,128,0.0680227056145668,1.015869140625,1048576,8.257733339213775
|
| 314 |
+
1,text.mlp.c_fc,2,32,8,128,6.351968765258789,0.3134765625,1048576,3.0800089847603167
|
| 315 |
+
1,text.mlp.c_fc,2,64,8,128,7.389888286590576,0.28173828125,1048576,3.0800089847603167
|
| 316 |
+
1,text.mlp.c_fc,2,128,8,128,8.325387001037598,0.265869140625,1048576,3.0800089847603167
|
| 317 |
+
1,text.mlp.c_fc,3,32,8,128,2.71328067779541,0.4384765625,1048576,3.0800089847603167
|
| 318 |
+
1,text.mlp.c_fc,3,64,8,128,3.1635944843292236,0.40673828125,1048576,3.0800089847603167
|
| 319 |
+
1,text.mlp.c_fc,3,128,8,128,3.561861991882324,0.390869140625,1048576,3.0800089847603167
|
| 320 |
+
1,text.mlp.c_fc,4,32,8,128,1.266817927360535,0.5634765625,1048576,3.0800089847603167
|
| 321 |
+
1,text.mlp.c_fc,4,64,8,128,1.4758033752441406,0.53173828125,1048576,3.0800089847603167
|
| 322 |
+
1,text.mlp.c_fc,4,128,8,128,1.664614200592041,0.515869140625,1048576,3.0800089847603167
|
| 323 |
+
1,text.mlp.c_fc,8,32,8,128,0.07674290984869003,1.0634765625,1048576,3.0800089847603167
|
| 324 |
+
1,text.mlp.c_fc,8,64,8,128,0.08936163038015366,1.03173828125,1048576,3.0800089847603167
|
| 325 |
+
1,text.mlp.c_fc,8,128,8,128,0.10043232887983322,1.015869140625,1048576,3.0800089847603167
|
| 326 |
+
1,text.mlp.c_proj,2,32,8,128,4.492769718170166,0.3134765625,1048576,3.2167251445240903
|
| 327 |
+
1,text.mlp.c_proj,2,64,8,128,5.24850606918335,0.28173828125,1048576,3.2167251445240903
|
| 328 |
+
1,text.mlp.c_proj,2,128,8,128,5.924077033996582,0.265869140625,1048576,3.2167251445240903
|
| 329 |
+
1,text.mlp.c_proj,3,32,8,128,1.9200174808502195,0.4384765625,1048576,3.2167251445240903
|
| 330 |
+
1,text.mlp.c_proj,3,64,8,128,2.2457592487335205,0.40673828125,1048576,3.2167251445240903
|
| 331 |
+
1,text.mlp.c_proj,3,128,8,128,2.539240598678589,0.390869140625,1048576,3.2167251445240903
|
| 332 |
+
1,text.mlp.c_proj,4,32,8,128,0.8956782817840576,0.5634765625,1048576,3.2167251445240903
|
| 333 |
+
1,text.mlp.c_proj,4,64,8,128,1.047521471977234,0.53173828125,1048576,3.2167251445240903
|
| 334 |
+
1,text.mlp.c_proj,4,128,8,128,1.18568217754364,0.515869140625,1048576,3.2167251445240903
|
| 335 |
+
1,text.mlp.c_proj,8,32,8,128,0.0543127991259098,1.0634765625,1048576,3.2167251445240903
|
| 336 |
+
1,text.mlp.c_proj,8,64,8,128,0.06340169906616211,1.03173828125,1048576,3.2167251445240903
|
| 337 |
+
1,text.mlp.c_proj,8,128,8,128,0.0714043602347374,1.015869140625,1048576,3.2167251445240903
|
| 338 |
+
2,text.mlp.c_fc,2,32,8,128,6.2713623046875,0.3134765625,1048576,3.112510371474206
|
| 339 |
+
2,text.mlp.c_fc,2,64,8,128,7.308136940002441,0.28173828125,1048576,3.112510371474206
|
| 340 |
+
2,text.mlp.c_fc,2,128,8,128,8.229869842529297,0.265869140625,1048576,3.112510371474206
|
| 341 |
+
2,text.mlp.c_fc,3,32,8,128,2.6817820072174072,0.4384765625,1048576,3.112510371474206
|
| 342 |
+
2,text.mlp.c_fc,3,64,8,128,3.1245784759521484,0.40673828125,1048576,3.112510371474206
|
| 343 |
+
2,text.mlp.c_fc,3,128,8,128,3.5175602436065674,0.390869140625,1048576,3.112510371474206
|
| 344 |
+
2,text.mlp.c_fc,4,32,8,128,1.2500064373016355,0.5634765625,1048576,3.112510371474206
|
| 345 |
+
2,text.mlp.c_fc,4,64,8,128,1.4578500986099243,0.53173828125,1048576,3.112510371474206
|
| 346 |
+
2,text.mlp.c_fc,4,128,8,128,1.6433409452438354,0.515869140625,1048576,3.112510371474206
|
| 347 |
+
2,text.mlp.c_fc,8,32,8,128,0.07576245814561844,1.0634765625,1048576,3.112510371474206
|
| 348 |
+
2,text.mlp.c_fc,8,64,8,128,0.08829101175069809,1.03173828125,1048576,3.112510371474206
|
| 349 |
+
2,text.mlp.c_fc,8,128,8,128,0.0992748960852623,1.015869140625,1048576,3.112510371474206
|
| 350 |
+
2,text.mlp.c_proj,2,32,8,128,4.444961071014404,0.3134765625,1048576,3.292999208834084
|
| 351 |
+
2,text.mlp.c_proj,2,64,8,128,5.180168628692627,0.28173828125,1048576,3.292999208834084
|
| 352 |
+
2,text.mlp.c_proj,2,128,8,128,5.851198196411133,0.265869140625,1048576,3.292999208834084
|
| 353 |
+
2,text.mlp.c_proj,3,32,8,128,1.899754285812378,0.4384765625,1048576,3.292999208834084
|
| 354 |
+
2,text.mlp.c_proj,3,64,8,128,2.2183635234832764,0.40673828125,1048576,3.292999208834084
|
| 355 |
+
2,text.mlp.c_proj,3,128,8,128,2.505136013031006,0.390869140625,1048576,3.292999208834084
|
| 356 |
+
2,text.mlp.c_proj,4,32,8,128,0.8862735033035278,0.5634765625,1048576,3.292999208834084
|
| 357 |
+
2,text.mlp.c_proj,4,64,8,128,1.0349557399749756,0.53173828125,1048576,3.292999208834084
|
| 358 |
+
2,text.mlp.c_proj,4,128,8,128,1.1686416864395142,0.515869140625,1048576,3.292999208834084
|
| 359 |
+
2,text.mlp.c_proj,8,32,8,128,0.05371652543544769,1.0634765625,1048576,3.292999208834084
|
| 360 |
+
2,text.mlp.c_proj,8,64,8,128,0.06263848394155502,1.03173828125,1048576,3.292999208834084
|
| 361 |
+
2,text.mlp.c_proj,8,128,8,128,0.07050774246454239,1.015869140625,1048576,3.292999208834084
|
| 362 |
+
3,text.mlp.c_fc,2,32,8,128,6.199350357055664,0.3134765625,1048576,3.124703500598623
|
| 363 |
+
3,text.mlp.c_fc,2,64,8,128,7.228718757629395,0.28173828125,1048576,3.124703500598623
|
| 364 |
+
3,text.mlp.c_fc,2,128,8,128,8.150893211364746,0.265869140625,1048576,3.124703500598623
|
| 365 |
+
3,text.mlp.c_fc,3,32,8,128,2.648998737335205,0.4384765625,1048576,3.124703500598623
|
| 366 |
+
3,text.mlp.c_fc,3,64,8,128,3.0911576747894287,0.40673828125,1048576,3.124703500598623
|
| 367 |
+
3,text.mlp.c_fc,3,128,8,128,3.488417863845825,0.390869140625,1048576,3.124703500598623
|
| 368 |
+
3,text.mlp.c_fc,4,32,8,128,1.2359066009521484,0.5634765625,1048576,3.124703500598623
|
| 369 |
+
3,text.mlp.c_fc,4,64,8,128,1.441812515258789,0.53173828125,1048576,3.124703500598623
|
| 370 |
+
3,text.mlp.c_fc,4,128,8,128,1.6281919479370115,0.515869140625,1048576,3.124703500598623
|
| 371 |
+
3,text.mlp.c_fc,8,32,8,128,0.07503717392683029,1.0634765625,1048576,3.124703500598623
|
| 372 |
+
3,text.mlp.c_fc,8,64,8,128,0.0874534398317337,1.03173828125,1048576,3.124703500598623
|
| 373 |
+
3,text.mlp.c_fc,8,128,8,128,0.09830143302679062,1.015869140625,1048576,3.124703500598623
|
| 374 |
+
3,text.mlp.c_proj,2,32,8,128,4.45910120010376,0.3134765625,1048576,3.365812129846043
|
| 375 |
+
3,text.mlp.c_proj,2,64,8,128,5.196355819702148,0.28173828125,1048576,3.365812129846043
|
| 376 |
+
3,text.mlp.c_proj,2,128,8,128,5.872509479522705,0.265869140625,1048576,3.365812129846043
|
| 377 |
+
3,text.mlp.c_proj,3,32,8,128,1.904448628425598,0.4384765625,1048576,3.365812129846043
|
| 378 |
+
3,text.mlp.c_proj,3,64,8,128,2.2250046730041504,0.40673828125,1048576,3.365812129846043
|
| 379 |
+
3,text.mlp.c_proj,3,128,8,128,2.5161800384521484,0.390869140625,1048576,3.365812129846043
|
| 380 |
+
3,text.mlp.c_proj,4,32,8,128,0.8890355229377747,0.5634765625,1048576,3.365812129846043
|
| 381 |
+
3,text.mlp.c_proj,4,64,8,128,1.0387694835662842,0.53173828125,1048576,3.365812129846043
|
| 382 |
+
3,text.mlp.c_proj,4,128,8,128,1.1744872331619265,0.515869140625,1048576,3.365812129846043
|
| 383 |
+
3,text.mlp.c_proj,8,32,8,128,0.05386906117200851,1.0634765625,1048576,3.365812129846043
|
| 384 |
+
3,text.mlp.c_proj,8,64,8,128,0.06280947476625443,1.03173828125,1048576,3.365812129846043
|
| 385 |
+
3,text.mlp.c_proj,8,128,8,128,0.07080750912427902,1.015869140625,1048576,3.365812129846043
|
| 386 |
+
4,text.mlp.c_fc,2,32,8,128,6.147647857666016,0.3134765625,1048576,3.1205782672974403
|
| 387 |
+
4,text.mlp.c_fc,2,64,8,128,7.176209449768066,0.28173828125,1048576,3.1205782672974403
|
| 388 |
+
4,text.mlp.c_fc,2,128,8,128,8.08156967163086,0.265869140625,1048576,3.1205782672974403
|
| 389 |
+
4,text.mlp.c_fc,3,32,8,128,2.6306636333465576,0.4384765625,1048576,3.1205782672974403
|
| 390 |
+
4,text.mlp.c_fc,3,64,8,128,3.0671095848083496,0.40673828125,1048576,3.1205782672974403
|
| 391 |
+
4,text.mlp.c_fc,3,128,8,128,3.458563804626465,0.390869140625,1048576,3.1205782672974403
|
| 392 |
+
4,text.mlp.c_fc,4,32,8,128,1.2271418571472168,0.5634765625,1048576,3.1205782672974403
|
| 393 |
+
4,text.mlp.c_fc,4,64,8,128,1.4321166276931765,0.53173828125,1048576,3.1205782672974403
|
| 394 |
+
4,text.mlp.c_fc,4,128,8,128,1.6170594692230225,0.515869140625,1048576,3.1205782672974403
|
| 395 |
+
4,text.mlp.c_fc,8,32,8,128,0.07444850355386734,1.0634765625,1048576,3.1205782672974403
|
| 396 |
+
4,text.mlp.c_fc,8,64,8,128,0.08672907203435898,1.03173828125,1048576,3.1205782672974403
|
| 397 |
+
4,text.mlp.c_fc,8,128,8,128,0.09753215312957764,1.015869140625,1048576,3.1205782672974403
|
| 398 |
+
4,text.mlp.c_proj,2,32,8,128,4.5684428215026855,0.3134765625,1048576,3.3007157471391952
|
| 399 |
+
4,text.mlp.c_proj,2,64,8,128,5.32727575302124,0.28173828125,1048576,3.3007157471391952
|
| 400 |
+
4,text.mlp.c_proj,2,128,8,128,6.010774612426758,0.265869140625,1048576,3.3007157471391952
|
| 401 |
+
4,text.mlp.c_proj,3,32,8,128,1.953374981880188,0.4384765625,1048576,3.3007157471391952
|
| 402 |
+
4,text.mlp.c_proj,3,64,8,128,2.280749797821045,0.40673828125,1048576,3.3007157471391952
|
| 403 |
+
4,text.mlp.c_proj,3,128,8,128,2.575989007949829,0.390869140625,1048576,3.3007157471391952
|
| 404 |
+
4,text.mlp.c_proj,4,32,8,128,0.9109432697296144,0.5634765625,1048576,3.3007157471391952
|
| 405 |
+
4,text.mlp.c_proj,4,64,8,128,1.0641778707504272,0.53173828125,1048576,3.3007157471391952
|
| 406 |
+
4,text.mlp.c_proj,4,128,8,128,1.2020576000213623,0.515869140625,1048576,3.3007157471391952
|
| 407 |
+
4,text.mlp.c_proj,8,32,8,128,0.05520271509885788,1.0634765625,1048576,3.3007157471391952
|
| 408 |
+
4,text.mlp.c_proj,8,64,8,128,0.06432124227285385,1.03173828125,1048576,3.3007157471391952
|
| 409 |
+
4,text.mlp.c_proj,8,128,8,128,0.07244100421667099,1.015869140625,1048576,3.3007157471391952
|
| 410 |
+
5,text.mlp.c_fc,2,32,8,128,6.13761568069458,0.3134765625,1048576,3.12209161166918
|
| 411 |
+
5,text.mlp.c_fc,2,64,8,128,7.154106140136719,0.28173828125,1048576,3.12209161166918
|
| 412 |
+
5,text.mlp.c_fc,2,128,8,128,8.066065788269043,0.265869140625,1048576,3.12209161166918
|
| 413 |
+
5,text.mlp.c_fc,3,32,8,128,2.622965097427368,0.4384765625,1048576,3.12209161166918
|
| 414 |
+
5,text.mlp.c_fc,3,64,8,128,3.059314012527466,0.40673828125,1048576,3.12209161166918
|
| 415 |
+
5,text.mlp.c_fc,3,128,8,128,3.4494223594665527,0.390869140625,1048576,3.12209161166918
|
| 416 |
+
5,text.mlp.c_fc,4,32,8,128,1.2235389947891235,0.5634765625,1048576,3.12209161166918
|
| 417 |
+
5,text.mlp.c_fc,4,64,8,128,1.4277613162994385,0.53173828125,1048576,3.12209161166918
|
| 418 |
+
5,text.mlp.c_fc,4,128,8,128,1.6116138696670532,0.515869140625,1048576,3.12209161166918
|
| 419 |
+
5,text.mlp.c_fc,8,32,8,128,0.0742468386888504,1.0634765625,1048576,3.12209161166918
|
| 420 |
+
5,text.mlp.c_fc,8,64,8,128,0.08646093308925629,1.03173828125,1048576,3.12209161166918
|
| 421 |
+
5,text.mlp.c_fc,8,128,8,128,0.09725197404623032,1.015869140625,1048576,3.12209161166918
|
| 422 |
+
5,text.mlp.c_proj,2,32,8,128,4.701293468475342,0.3134765625,1048576,3.399940581104202
|
| 423 |
+
5,text.mlp.c_proj,2,64,8,128,5.488790988922119,0.28173828125,1048576,3.399940581104202
|
| 424 |
+
5,text.mlp.c_proj,2,128,8,128,6.199483871459961,0.265869140625,1048576,3.399940581104202
|
| 425 |
+
5,text.mlp.c_proj,3,32,8,128,2.0124988555908203,0.4384765625,1048576,3.399940581104202
|
| 426 |
+
5,text.mlp.c_proj,3,64,8,128,2.3516228199005127,0.40673828125,1048576,3.399940581104202
|
| 427 |
+
5,text.mlp.c_proj,3,128,8,128,2.659825086593628,0.390869140625,1048576,3.399940581104202
|
| 428 |
+
5,text.mlp.c_proj,4,32,8,128,0.9377811551094056,0.5634765625,1048576,3.399940581104202
|
| 429 |
+
5,text.mlp.c_proj,4,64,8,128,1.0970691442489624,0.53173828125,1048576,3.399940581104202
|
| 430 |
+
5,text.mlp.c_proj,4,128,8,128,1.2429126501083374,0.515869140625,1048576,3.399940581104202
|
| 431 |
+
5,text.mlp.c_proj,8,32,8,128,0.05688211694359779,1.0634765625,1048576,3.399940581104202
|
| 432 |
+
5,text.mlp.c_proj,8,64,8,128,0.06637991219758987,1.03173828125,1048576,3.399940581104202
|
| 433 |
+
5,text.mlp.c_proj,8,128,8,128,0.0749565064907074,1.015869140625,1048576,3.399940581104202
|
| 434 |
+
6,text.mlp.c_fc,2,32,8,128,6.08525276184082,0.3134765625,1048576,3.104312609554148
|
| 435 |
+
6,text.mlp.c_fc,2,64,8,128,7.091857433319092,0.28173828125,1048576,3.104312609554148
|
| 436 |
+
6,text.mlp.c_fc,2,128,8,128,8.011824607849121,0.265869140625,1048576,3.104312609554148
|
| 437 |
+
6,text.mlp.c_fc,3,32,8,128,2.600118398666382,0.4384765625,1048576,3.104312609554148
|
| 438 |
+
6,text.mlp.c_fc,3,64,8,128,3.0300920009613037,0.40673828125,1048576,3.104312609554148
|
| 439 |
+
6,text.mlp.c_fc,3,128,8,128,3.4273650646209717,0.390869140625,1048576,3.104312609554148
|
| 440 |
+
6,text.mlp.c_fc,4,32,8,128,1.2133545875549316,0.5634765625,1048576,3.104312609554148
|
| 441 |
+
6,text.mlp.c_fc,4,64,8,128,1.4163140058517456,0.53173828125,1048576,3.104312609554148
|
| 442 |
+
6,text.mlp.c_fc,4,128,8,128,1.5989820957183838,0.515869140625,1048576,3.104312609554148
|
| 443 |
+
6,text.mlp.c_fc,8,32,8,128,0.07371968030929565,1.0634765625,1048576,3.104312609554148
|
| 444 |
+
6,text.mlp.c_fc,8,64,8,128,0.08582986146211624,1.03173828125,1048576,3.104312609554148
|
| 445 |
+
6,text.mlp.c_fc,8,128,8,128,0.09657172113656998,1.015869140625,1048576,3.104312609554148
|
| 446 |
+
6,text.mlp.c_proj,2,32,8,128,4.809174060821533,0.3134765625,1048576,3.418852076553872
|
| 447 |
+
6,text.mlp.c_proj,2,64,8,128,5.619462966918945,0.28173828125,1048576,3.418852076553872
|
| 448 |
+
6,text.mlp.c_proj,2,128,8,128,6.347733974456787,0.265869140625,1048576,3.418852076553872
|
| 449 |
+
6,text.mlp.c_proj,3,32,8,128,2.0561914443969727,0.4384765625,1048576,3.418852076553872
|
| 450 |
+
6,text.mlp.c_proj,3,64,8,128,2.4042656421661377,0.40673828125,1048576,3.418852076553872
|
| 451 |
+
6,text.mlp.c_proj,3,128,8,128,2.7215018272399902,0.390869140625,1048576,3.418852076553872
|
| 452 |
+
6,text.mlp.c_proj,4,32,8,128,0.9595969915390016,0.5634765625,1048576,3.418852076553872
|
| 453 |
+
6,text.mlp.c_proj,4,64,8,128,1.1221243143081665,0.53173828125,1048576,3.418852076553872
|
| 454 |
+
6,text.mlp.c_proj,4,128,8,128,1.2688665390014648,0.515869140625,1048576,3.418852076553872
|
| 455 |
+
6,text.mlp.c_proj,8,32,8,128,0.05815136805176735,1.0634765625,1048576,3.418852076553872
|
| 456 |
+
6,text.mlp.c_proj,8,64,8,128,0.0679142028093338,1.03173828125,1048576,3.418852076553872
|
| 457 |
+
6,text.mlp.c_proj,8,128,8,128,0.07667670398950577,1.015869140625,1048576,3.418852076553872
|
| 458 |
+
7,text.mlp.c_fc,2,32,8,128,6.016368865966797,0.3134765625,1048576,3.1152966389066306
|
| 459 |
+
7,text.mlp.c_fc,2,64,8,128,7.0210137367248535,0.28173828125,1048576,3.1152966389066306
|
| 460 |
+
7,text.mlp.c_fc,2,128,8,128,7.924512386322021,0.265869140625,1048576,3.1152966389066306
|
| 461 |
+
7,text.mlp.c_fc,3,32,8,128,2.573953628540039,0.4384765625,1048576,3.1152966389066306
|
| 462 |
+
7,text.mlp.c_fc,3,64,8,128,3.004284620285034,0.40673828125,1048576,3.1152966389066306
|
| 463 |
+
7,text.mlp.c_fc,3,128,8,128,3.3958704471588135,0.390869140625,1048576,3.1152966389066306
|
| 464 |
+
7,text.mlp.c_fc,4,32,8,128,1.2008792161941528,0.5634765625,1048576,3.1152966389066306
|
| 465 |
+
7,text.mlp.c_fc,4,64,8,128,1.401782751083374,0.53173828125,1048576,3.1152966389066306
|
| 466 |
+
7,text.mlp.c_fc,4,128,8,128,1.5841267108917236,0.515869140625,1048576,3.1152966389066306
|
| 467 |
+
7,text.mlp.c_fc,8,32,8,128,0.07277538627386093,1.0634765625,1048576,3.1152966389066306
|
| 468 |
+
7,text.mlp.c_fc,8,64,8,128,0.08490202575922012,1.03173828125,1048576,3.1152966389066306
|
| 469 |
+
7,text.mlp.c_fc,8,128,8,128,0.09555526822805405,1.015869140625,1048576,3.1152966389066306
|
| 470 |
+
7,text.mlp.c_proj,2,32,8,128,4.9375319480896,0.3134765625,1048576,3.563658370504532
|
| 471 |
+
7,text.mlp.c_proj,2,64,8,128,5.766933441162109,0.28173828125,1048576,3.563658370504532
|
| 472 |
+
7,text.mlp.c_proj,2,128,8,128,6.5257158279418945,0.265869140625,1048576,3.563658370504532
|
| 473 |
+
7,text.mlp.c_proj,3,32,8,128,2.1138291358947754,0.4384765625,1048576,3.563658370504532
|
| 474 |
+
7,text.mlp.c_proj,3,64,8,128,2.4740889072418213,0.40673828125,1048576,3.563658370504532
|
| 475 |
+
7,text.mlp.c_proj,3,128,8,128,2.8029916286468506,0.390869140625,1048576,3.563658370504532
|
| 476 |
+
7,text.mlp.c_proj,4,32,8,128,0.985521137714386,0.5634765625,1048576,3.563658370504532
|
| 477 |
+
7,text.mlp.c_proj,4,64,8,128,1.152884602546692,0.53173828125,1048576,3.563658370504532
|
| 478 |
+
7,text.mlp.c_proj,4,128,8,128,1.3091634511947632,0.515869140625,1048576,3.563658370504532
|
| 479 |
+
7,text.mlp.c_proj,8,32,8,128,0.05971698090434074,1.0634765625,1048576,3.563658370504532
|
| 480 |
+
7,text.mlp.c_proj,8,64,8,128,0.06980670988559723,1.03173828125,1048576,3.563658370504532
|
| 481 |
+
7,text.mlp.c_proj,8,128,8,128,0.07889241725206375,1.015869140625,1048576,3.563658370504532
|
| 482 |
+
8,text.mlp.c_fc,2,32,8,128,5.901716709136963,0.3134765625,1048576,3.1079712489156552
|
| 483 |
+
8,text.mlp.c_fc,2,64,8,128,6.884827136993408,0.28173828125,1048576,3.1079712489156552
|
| 484 |
+
8,text.mlp.c_fc,2,128,8,128,7.761914730072021,0.265869140625,1048576,3.1079712489156552
|
| 485 |
+
8,text.mlp.c_fc,3,32,8,128,2.520334243774414,0.4384765625,1048576,3.1079712489156552
|
| 486 |
+
8,text.mlp.c_fc,3,64,8,128,2.9441771507263184,0.40673828125,1048576,3.1079712489156552
|
| 487 |
+
8,text.mlp.c_fc,3,128,8,128,3.32405948638916,0.390869140625,1048576,3.1079712489156552
|
| 488 |
+
8,text.mlp.c_fc,4,32,8,128,1.1775058507919312,0.5634765625,1048576,3.1079712489156552
|
| 489 |
+
8,text.mlp.c_fc,4,64,8,128,1.37420654296875,0.53173828125,1048576,3.1079712489156552
|
| 490 |
+
8,text.mlp.c_fc,4,128,8,128,1.5516901016235352,0.515869140625,1048576,3.1079712489156552
|
| 491 |
+
8,text.mlp.c_fc,8,32,8,128,0.07130877673625946,1.0634765625,1048576,3.1079712489156552
|
| 492 |
+
8,text.mlp.c_fc,8,64,8,128,0.0831245630979538,1.03173828125,1048576,3.1079712489156552
|
| 493 |
+
8,text.mlp.c_fc,8,128,8,128,0.09355318546295166,1.015869140625,1048576,3.1079712489156552
|
| 494 |
+
8,text.mlp.c_proj,2,32,8,128,5.102689266204834,0.3134765625,1048576,3.6947691166226
|
| 495 |
+
8,text.mlp.c_proj,2,64,8,128,5.964451789855957,0.28173828125,1048576,3.6947691166226
|
| 496 |
+
8,text.mlp.c_proj,2,128,8,128,6.735776901245117,0.265869140625,1048576,3.6947691166226
|
| 497 |
+
8,text.mlp.c_proj,3,32,8,128,2.18440318107605,0.4384765625,1048576,3.6947691166226
|
| 498 |
+
8,text.mlp.c_proj,3,64,8,128,2.556516647338867,0.40673828125,1048576,3.6947691166226
|
| 499 |
+
8,text.mlp.c_proj,3,128,8,128,2.8903772830963135,0.390869140625,1048576,3.6947691166226
|
| 500 |
+
8,text.mlp.c_proj,4,32,8,128,1.018601417541504,0.5634765625,1048576,3.6947691166226
|
| 501 |
+
8,text.mlp.c_proj,4,64,8,128,1.192069172859192,0.53173828125,1048576,3.6947691166226
|
| 502 |
+
8,text.mlp.c_proj,4,128,8,128,1.349886178970337,0.515869140625,1048576,3.6947691166226
|
| 503 |
+
8,text.mlp.c_proj,8,32,8,128,0.0618121437728405,1.0634765625,1048576,3.6947691166226
|
| 504 |
+
8,text.mlp.c_proj,8,64,8,128,0.07216800004243851,1.03173828125,1048576,3.6947691166226
|
| 505 |
+
8,text.mlp.c_proj,8,128,8,128,0.08146006613969803,1.015869140625,1048576,3.6947691166226
|
| 506 |
+
9,text.mlp.c_fc,2,32,8,128,5.788586139678955,0.3134765625,1048576,3.1305828189206824
|
| 507 |
+
9,text.mlp.c_fc,2,64,8,128,6.742534637451172,0.28173828125,1048576,3.1305828189206824
|
| 508 |
+
9,text.mlp.c_fc,2,128,8,128,7.599257946014404,0.265869140625,1048576,3.1305828189206824
|
| 509 |
+
9,text.mlp.c_fc,3,32,8,128,2.47590970993042,0.4384765625,1048576,3.1305828189206824
|
| 510 |
+
9,text.mlp.c_fc,3,64,8,128,2.887095212936402,0.40673828125,1048576,3.1305828189206824
|
| 511 |
+
9,text.mlp.c_fc,3,128,8,128,3.255934953689575,0.390869140625,1048576,3.1305828189206824
|
| 512 |
+
9,text.mlp.c_fc,4,32,8,128,1.1548055410385132,0.5634765625,1048576,3.1305828189206824
|
| 513 |
+
9,text.mlp.c_fc,4,64,8,128,1.346752047538757,0.53173828125,1048576,3.1305828189206824
|
| 514 |
+
9,text.mlp.c_fc,4,128,8,128,1.517864465713501,0.515869140625,1048576,3.1305828189206824
|
| 515 |
+
9,text.mlp.c_fc,8,32,8,128,0.06999316066503525,1.0634765625,1048576,3.1305828189206824
|
| 516 |
+
9,text.mlp.c_fc,8,64,8,128,0.0815470740199089,1.03173828125,1048576,3.1305828189206824
|
| 517 |
+
9,text.mlp.c_fc,8,128,8,128,0.09159331023693083,1.015869140625,1048576,3.1305828189206824
|
| 518 |
+
9,text.mlp.c_proj,2,32,8,128,5.207601547241211,0.3134765625,1048576,3.495399170438296
|
| 519 |
+
9,text.mlp.c_proj,2,64,8,128,6.071842193603516,0.28173828125,1048576,3.495399170438296
|
| 520 |
+
9,text.mlp.c_proj,2,128,8,128,6.8601274490356445,0.265869140625,1048576,3.495399170438296
|
| 521 |
+
9,text.mlp.c_proj,3,32,8,128,2.2280025482177734,0.4384765625,1048576,3.495399170438296
|
| 522 |
+
9,text.mlp.c_proj,3,64,8,128,2.5987324714660645,0.40673828125,1048576,3.495399170438296
|
| 523 |
+
9,text.mlp.c_proj,3,128,8,128,2.939124822616577,0.390869140625,1048576,3.495399170438296
|
| 524 |
+
9,text.mlp.c_proj,4,32,8,128,1.0387369394302368,0.5634765625,1048576,3.495399170438296
|
| 525 |
+
9,text.mlp.c_proj,4,64,8,128,1.2127223014831543,0.53173828125,1048576,3.495399170438296
|
| 526 |
+
9,text.mlp.c_proj,4,128,8,128,1.3731480836868286,0.515869140625,1048576,3.495399170438296
|
| 527 |
+
9,text.mlp.c_proj,8,32,8,128,0.06300804764032364,1.0634765625,1048576,3.495399170438296
|
| 528 |
+
9,text.mlp.c_proj,8,64,8,128,0.07346633821725845,1.03173828125,1048576,3.495399170438296
|
| 529 |
+
9,text.mlp.c_proj,8,128,8,128,0.08280103653669357,1.015869140625,1048576,3.495399170438296
|
| 530 |
+
10,text.mlp.c_fc,2,32,8,128,5.7948408126831055,0.3134765625,1048576,3.144641316115429
|
| 531 |
+
10,text.mlp.c_fc,2,64,8,128,6.760894298553467,0.28173828125,1048576,3.144641316115429
|
| 532 |
+
10,text.mlp.c_fc,2,128,8,128,7.649384498596191,0.265869140625,1048576,3.144641316115429
|
| 533 |
+
10,text.mlp.c_fc,3,32,8,128,2.475472211837769,0.4384765625,1048576,3.144641316115429
|
| 534 |
+
10,text.mlp.c_fc,3,64,8,128,2.8930392265319824,0.40673828125,1048576,3.144641316115429
|
| 535 |
+
10,text.mlp.c_fc,3,128,8,128,3.2758681774139404,0.390869140625,1048576,3.144641316115429
|
| 536 |
+
10,text.mlp.c_fc,4,32,8,128,1.1556246280670166,0.5634765625,1048576,3.144641316115429
|
| 537 |
+
10,text.mlp.c_fc,4,64,8,128,1.3502486944198608,0.53173828125,1048576,3.144641316115429
|
| 538 |
+
10,text.mlp.c_fc,4,128,8,128,1.5289539098739624,0.515869140625,1048576,3.144641316115429
|
| 539 |
+
10,text.mlp.c_fc,8,32,8,128,0.0699719563126564,1.0634765625,1048576,3.144641316115429
|
| 540 |
+
10,text.mlp.c_fc,8,64,8,128,0.08176594972610474,1.03173828125,1048576,3.144641316115429
|
| 541 |
+
10,text.mlp.c_fc,8,128,8,128,0.09224754571914671,1.015869140625,1048576,3.144641316115429
|
| 542 |
+
10,text.mlp.c_proj,2,32,8,128,5.407021522521973,0.3134765625,1048576,3.655921840018199
|
| 543 |
+
10,text.mlp.c_proj,2,64,8,128,6.310086727142334,0.28173828125,1048576,3.655921840018199
|
| 544 |
+
10,text.mlp.c_proj,2,128,8,128,7.1317644119262695,0.265869140625,1048576,3.655921840018199
|
| 545 |
+
10,text.mlp.c_proj,3,32,8,128,2.315161943435669,0.4384765625,1048576,3.655921840018199
|
| 546 |
+
10,text.mlp.c_proj,3,64,8,128,2.706345558166504,0.40673828125,1048576,3.655921840018199
|
| 547 |
+
10,text.mlp.c_proj,3,128,8,128,3.065629720687866,0.390869140625,1048576,3.655921840018199
|
| 548 |
+
10,text.mlp.c_proj,4,32,8,128,1.0800068378448486,0.5634765625,1048576,3.655921840018199
|
| 549 |
+
10,text.mlp.c_proj,4,64,8,128,1.2637077569961548,0.53173828125,1048576,3.655921840018199
|
| 550 |
+
10,text.mlp.c_proj,4,128,8,128,1.432173252105713,0.515869140625,1048576,3.655921840018199
|
| 551 |
+
10,text.mlp.c_proj,8,32,8,128,0.06542721390724182,1.0634765625,1048576,3.655921840018199
|
| 552 |
+
10,text.mlp.c_proj,8,64,8,128,0.0764131173491478,1.03173828125,1048576,3.655921840018199
|
| 553 |
+
10,text.mlp.c_proj,8,128,8,128,0.08641009777784348,1.015869140625,1048576,3.655921840018199
|
| 554 |
+
11,text.mlp.c_fc,2,32,8,128,6.029895782470703,0.3134765625,1048576,3.227518868269559
|
| 555 |
+
11,text.mlp.c_fc,2,64,8,128,7.065587997436523,0.28173828125,1048576,3.227518868269559
|
| 556 |
+
11,text.mlp.c_fc,2,128,8,128,8.00993537902832,0.265869140625,1048576,3.227518868269559
|
| 557 |
+
11,text.mlp.c_fc,3,32,8,128,2.577655553817749,0.4384765625,1048576,3.227518868269559
|
| 558 |
+
11,text.mlp.c_fc,3,64,8,128,3.0226359367370605,0.40673828125,1048576,3.227518868269559
|
| 559 |
+
11,text.mlp.c_fc,3,128,8,128,3.4333667755126953,0.390869140625,1048576,3.227518868269559
|
| 560 |
+
11,text.mlp.c_fc,4,32,8,128,1.201055645942688,0.5634765625,1048576,3.227518868269559
|
| 561 |
+
11,text.mlp.c_fc,4,64,8,128,1.4092037677764893,0.53173828125,1048576,3.227518868269559
|
| 562 |
+
11,text.mlp.c_fc,4,128,8,128,1.6002758741378784,0.515869140625,1048576,3.227518868269559
|
| 563 |
+
11,text.mlp.c_fc,8,32,8,128,0.07296200841665268,1.0634765625,1048576,3.227518868269559
|
| 564 |
+
11,text.mlp.c_fc,8,64,8,128,0.08532291650772095,1.03173828125,1048576,3.227518868269559
|
| 565 |
+
11,text.mlp.c_fc,8,128,8,128,0.09650221467018127,1.015869140625,1048576,3.227518868269559
|
| 566 |
+
11,text.mlp.c_proj,2,32,8,128,5.306176662445068,0.3134765625,1048576,3.351559119010831
|
| 567 |
+
11,text.mlp.c_proj,2,64,8,128,6.189615726470947,0.28173828125,1048576,3.351559119010831
|
| 568 |
+
11,text.mlp.c_proj,2,128,8,128,6.987279891967773,0.265869140625,1048576,3.351559119010831
|
| 569 |
+
11,text.mlp.c_proj,3,32,8,128,2.267962694168091,0.4384765625,1048576,3.351559119010831
|
| 570 |
+
11,text.mlp.c_proj,3,64,8,128,2.647044897079468,0.40673828125,1048576,3.351559119010831
|
| 571 |
+
11,text.mlp.c_proj,3,128,8,128,2.989635467529297,0.390869140625,1048576,3.351559119010831
|
| 572 |
+
11,text.mlp.c_proj,4,32,8,128,1.0588033199310305,0.5634765625,1048576,3.351559119010831
|
| 573 |
+
11,text.mlp.c_proj,4,64,8,128,1.2367676496505735,0.53173828125,1048576,3.351559119010831
|
| 574 |
+
11,text.mlp.c_proj,4,128,8,128,1.3962570428848269,0.515869140625,1048576,3.351559119010831
|
| 575 |
+
11,text.mlp.c_proj,8,32,8,128,0.06412201374769211,1.0634765625,1048576,3.351559119010831
|
| 576 |
+
11,text.mlp.c_proj,8,64,8,128,0.07475418597459793,1.03173828125,1048576,3.351559119010831
|
| 577 |
+
11,text.mlp.c_proj,8,128,8,128,0.0842188373208046,1.015869140625,1048576,3.351559119010831
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-2-70b-hf.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-2-7b-hf.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-3.1-8B.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Meta-Llama-3-8B.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/kurtosis-CLIP-ViT-H-14-laion2B-s32B-b79K.csv
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
module,layer,kurtosis
|
| 2 |
+
vision.mlp.c_fc,0,40.90237464363011
|
| 3 |
+
vision.mlp.c_fc,1,8.623074922686055
|
| 4 |
+
vision.mlp.c_fc,2,9.97244388122774
|
| 5 |
+
vision.mlp.c_fc,3,8.84226648033505
|
| 6 |
+
vision.mlp.c_fc,4,6.679282327315599
|
| 7 |
+
vision.mlp.c_fc,5,5.079880661110845
|
| 8 |
+
vision.mlp.c_fc,6,4.880932310379808
|
| 9 |
+
vision.mlp.c_fc,7,4.627381829171479
|
| 10 |
+
vision.mlp.c_fc,8,3.9064125305929482
|
| 11 |
+
vision.mlp.c_fc,9,3.7876465036865037
|
| 12 |
+
vision.mlp.c_fc,10,3.7124408015905463
|
| 13 |
+
vision.mlp.c_fc,11,3.5936330266701173
|
| 14 |
+
vision.mlp.c_fc,12,3.532952137305315
|
| 15 |
+
vision.mlp.c_fc,13,3.3851543523342795
|
| 16 |
+
vision.mlp.c_fc,14,3.2873419131054304
|
| 17 |
+
vision.mlp.c_fc,15,3.21782809316773
|
| 18 |
+
vision.mlp.c_fc,16,3.193747931233614
|
| 19 |
+
vision.mlp.c_fc,17,3.1630314377596305
|
| 20 |
+
vision.mlp.c_fc,18,3.111462971801169
|
| 21 |
+
vision.mlp.c_fc,19,3.105595856069085
|
| 22 |
+
vision.mlp.c_fc,20,3.125886942463749
|
| 23 |
+
vision.mlp.c_fc,21,3.112450361245664
|
| 24 |
+
vision.mlp.c_fc,22,3.079523772985348
|
| 25 |
+
vision.mlp.c_fc,23,3.0821569476632615
|
| 26 |
+
vision.mlp.c_fc,24,3.060682454627166
|
| 27 |
+
vision.mlp.c_fc,25,3.0582903694192485
|
| 28 |
+
vision.mlp.c_fc,26,3.066707948588762
|
| 29 |
+
vision.mlp.c_fc,27,3.098921361428591
|
| 30 |
+
vision.mlp.c_fc,28,3.115322580545271
|
| 31 |
+
vision.mlp.c_fc,29,3.1341133294881063
|
| 32 |
+
vision.mlp.c_fc,30,3.0777676137143355
|
| 33 |
+
vision.mlp.c_fc,31,3.1157306945381347
|
| 34 |
+
vision.mlp.c_proj,0,42.596327918914184
|
| 35 |
+
vision.mlp.c_proj,1,5.700569954788923
|
| 36 |
+
vision.mlp.c_proj,2,13.632761342438107
|
| 37 |
+
vision.mlp.c_proj,3,16.268235060436744
|
| 38 |
+
vision.mlp.c_proj,4,6.3570446531375
|
| 39 |
+
vision.mlp.c_proj,5,4.809992151850216
|
| 40 |
+
vision.mlp.c_proj,6,5.053291310517847
|
| 41 |
+
vision.mlp.c_proj,7,7.712895831700571
|
| 42 |
+
vision.mlp.c_proj,8,3.6717534300900505
|
| 43 |
+
vision.mlp.c_proj,9,3.8858509415381075
|
| 44 |
+
vision.mlp.c_proj,10,4.615226983169325
|
| 45 |
+
vision.mlp.c_proj,11,3.9462090594902732
|
| 46 |
+
vision.mlp.c_proj,12,4.290422057573261
|
| 47 |
+
vision.mlp.c_proj,13,4.200667942302044
|
| 48 |
+
vision.mlp.c_proj,14,3.5894479766105856
|
| 49 |
+
vision.mlp.c_proj,15,3.295239725306919
|
| 50 |
+
vision.mlp.c_proj,16,3.258246320341865
|
| 51 |
+
vision.mlp.c_proj,17,3.287998430108839
|
| 52 |
+
vision.mlp.c_proj,18,3.106840184971173
|
| 53 |
+
vision.mlp.c_proj,19,3.1621437963814087
|
| 54 |
+
vision.mlp.c_proj,20,3.168454537760785
|
| 55 |
+
vision.mlp.c_proj,21,3.213436382602411
|
| 56 |
+
vision.mlp.c_proj,22,3.173853870505496
|
| 57 |
+
vision.mlp.c_proj,23,3.178954522388751
|
| 58 |
+
vision.mlp.c_proj,24,3.110805792772743
|
| 59 |
+
vision.mlp.c_proj,25,3.114617319926587
|
| 60 |
+
vision.mlp.c_proj,26,3.1252555548204226
|
| 61 |
+
vision.mlp.c_proj,27,3.2274298263451326
|
| 62 |
+
vision.mlp.c_proj,28,3.4402281120641667
|
| 63 |
+
vision.mlp.c_proj,29,3.4039192043631497
|
| 64 |
+
vision.mlp.c_proj,30,3.235419305882699
|
| 65 |
+
vision.mlp.c_proj,31,3.2103127283743196
|
| 66 |
+
text.mlp.c_fc,0,3.130876328110002
|
| 67 |
+
text.mlp.c_fc,1,3.522946431618204
|
| 68 |
+
text.mlp.c_fc,2,3.0665727137671914
|
| 69 |
+
text.mlp.c_fc,3,3.07939282139385
|
| 70 |
+
text.mlp.c_fc,4,3.073907675889281
|
| 71 |
+
text.mlp.c_fc,5,3.0760243182327653
|
| 72 |
+
text.mlp.c_fc,6,3.074341006878764
|
| 73 |
+
text.mlp.c_fc,7,3.070467308878268
|
| 74 |
+
text.mlp.c_fc,8,3.071675866527997
|
| 75 |
+
text.mlp.c_fc,9,3.0676553119556074
|
| 76 |
+
text.mlp.c_fc,10,3.0588525342169723
|
| 77 |
+
text.mlp.c_fc,11,3.050926459548459
|
| 78 |
+
text.mlp.c_fc,12,3.0518055370811794
|
| 79 |
+
text.mlp.c_fc,13,3.0420668373340813
|
| 80 |
+
text.mlp.c_fc,14,3.0318151874070547
|
| 81 |
+
text.mlp.c_fc,15,3.039579656917142
|
| 82 |
+
text.mlp.c_fc,16,3.030832331612468
|
| 83 |
+
text.mlp.c_fc,17,3.0464599870244147
|
| 84 |
+
text.mlp.c_fc,18,3.0314247283166527
|
| 85 |
+
text.mlp.c_fc,19,3.0366579505365423
|
| 86 |
+
text.mlp.c_fc,20,3.035431457627752
|
| 87 |
+
text.mlp.c_fc,21,3.035719259091557
|
| 88 |
+
text.mlp.c_fc,22,3.0609612140958817
|
| 89 |
+
text.mlp.c_fc,23,3.0913598384430627
|
| 90 |
+
text.mlp.c_proj,0,7.6155345275418025
|
| 91 |
+
text.mlp.c_proj,1,10.138321188679202
|
| 92 |
+
text.mlp.c_proj,2,3.0448966809401976
|
| 93 |
+
text.mlp.c_proj,3,3.111820890605678
|
| 94 |
+
text.mlp.c_proj,4,3.0514440139756176
|
| 95 |
+
text.mlp.c_proj,5,3.7893358959560755
|
| 96 |
+
text.mlp.c_proj,6,3.0707829989536948
|
| 97 |
+
text.mlp.c_proj,7,3.065090920136809
|
| 98 |
+
text.mlp.c_proj,8,3.0726887739189013
|
| 99 |
+
text.mlp.c_proj,9,3.3939847588778926
|
| 100 |
+
text.mlp.c_proj,10,3.1983749033206665
|
| 101 |
+
text.mlp.c_proj,11,3.1750157970807344
|
| 102 |
+
text.mlp.c_proj,12,3.0569032145916935
|
| 103 |
+
text.mlp.c_proj,13,3.352986917766462
|
| 104 |
+
text.mlp.c_proj,14,3.040870872900523
|
| 105 |
+
text.mlp.c_proj,15,3.084122174777231
|
| 106 |
+
text.mlp.c_proj,16,3.083968401193075
|
| 107 |
+
text.mlp.c_proj,17,3.057870708712376
|
| 108 |
+
text.mlp.c_proj,18,3.154006715549809
|
| 109 |
+
text.mlp.c_proj,19,3.099173814869719
|
| 110 |
+
text.mlp.c_proj,20,3.1643892434809398
|
| 111 |
+
text.mlp.c_proj,21,3.1143910580456344
|
| 112 |
+
text.mlp.c_proj,22,3.2050609846862375
|
| 113 |
+
text.mlp.c_proj,23,3.1967177502646615
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/kurtosis-CLIP-ViT-L-14-laion2B-s32B-b82K.csv
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
module,layer,kurtosis
|
| 2 |
+
vision.mlp.c_fc,0,82.60432030937712
|
| 3 |
+
vision.mlp.c_fc,1,12.176342485174775
|
| 4 |
+
vision.mlp.c_fc,2,9.386186464371631
|
| 5 |
+
vision.mlp.c_fc,3,6.0384986521099115
|
| 6 |
+
vision.mlp.c_fc,4,5.121874436272312
|
| 7 |
+
vision.mlp.c_fc,5,4.184969377709542
|
| 8 |
+
vision.mlp.c_fc,6,4.256117717855523
|
| 9 |
+
vision.mlp.c_fc,7,3.953278547908379
|
| 10 |
+
vision.mlp.c_fc,8,3.923302040046366
|
| 11 |
+
vision.mlp.c_fc,9,3.640527020435186
|
| 12 |
+
vision.mlp.c_fc,10,3.8766116638521972
|
| 13 |
+
vision.mlp.c_fc,11,3.364467358103123
|
| 14 |
+
vision.mlp.c_fc,12,3.2501048983174172
|
| 15 |
+
vision.mlp.c_fc,13,3.144904609090658
|
| 16 |
+
vision.mlp.c_fc,14,3.1176022019209833
|
| 17 |
+
vision.mlp.c_fc,15,3.170790033142059
|
| 18 |
+
vision.mlp.c_fc,16,3.1901952176386157
|
| 19 |
+
vision.mlp.c_fc,17,3.1728736833856566
|
| 20 |
+
vision.mlp.c_fc,18,3.1092420753715064
|
| 21 |
+
vision.mlp.c_fc,19,3.1289105323616995
|
| 22 |
+
vision.mlp.c_fc,20,3.1633778054509616
|
| 23 |
+
vision.mlp.c_fc,21,3.1948778928908625
|
| 24 |
+
vision.mlp.c_fc,22,3.153364851937131
|
| 25 |
+
vision.mlp.c_fc,23,3.1481862277653847
|
| 26 |
+
vision.mlp.c_proj,0,48.91602226406029
|
| 27 |
+
vision.mlp.c_proj,1,7.994586159177927
|
| 28 |
+
vision.mlp.c_proj,2,9.259903305960076
|
| 29 |
+
vision.mlp.c_proj,3,12.161504492865403
|
| 30 |
+
vision.mlp.c_proj,4,11.137208824577082
|
| 31 |
+
vision.mlp.c_proj,5,4.50118105140538
|
| 32 |
+
vision.mlp.c_proj,6,3.9747365034192206
|
| 33 |
+
vision.mlp.c_proj,7,4.846873977315018
|
| 34 |
+
vision.mlp.c_proj,8,4.914742513787588
|
| 35 |
+
vision.mlp.c_proj,9,5.0506453475209065
|
| 36 |
+
vision.mlp.c_proj,10,13.838509154283804
|
| 37 |
+
vision.mlp.c_proj,11,4.258906842824289
|
| 38 |
+
vision.mlp.c_proj,12,3.4482411935554316
|
| 39 |
+
vision.mlp.c_proj,13,3.4563538182296156
|
| 40 |
+
vision.mlp.c_proj,14,3.1506796697623156
|
| 41 |
+
vision.mlp.c_proj,15,3.140821870180245
|
| 42 |
+
vision.mlp.c_proj,16,3.1870137578290736
|
| 43 |
+
vision.mlp.c_proj,17,3.1622263243928037
|
| 44 |
+
vision.mlp.c_proj,18,3.1727003318990294
|
| 45 |
+
vision.mlp.c_proj,19,3.126420350320576
|
| 46 |
+
vision.mlp.c_proj,20,3.214422564736524
|
| 47 |
+
vision.mlp.c_proj,21,3.5410765909033515
|
| 48 |
+
vision.mlp.c_proj,22,3.885907825953595
|
| 49 |
+
vision.mlp.c_proj,23,3.241221353196137
|
| 50 |
+
text.mlp.c_fc,0,3.111321629333239
|
| 51 |
+
text.mlp.c_fc,1,3.1040094243226832
|
| 52 |
+
text.mlp.c_fc,2,3.0476798189406455
|
| 53 |
+
text.mlp.c_fc,3,3.0567396405641647
|
| 54 |
+
text.mlp.c_fc,4,3.072398311749821
|
| 55 |
+
text.mlp.c_fc,5,3.0581450022889753
|
| 56 |
+
text.mlp.c_fc,6,3.053470998692992
|
| 57 |
+
text.mlp.c_fc,7,3.0531601497538126
|
| 58 |
+
text.mlp.c_fc,8,3.0696775698776992
|
| 59 |
+
text.mlp.c_fc,9,3.065453985089178
|
| 60 |
+
text.mlp.c_fc,10,3.067657384247557
|
| 61 |
+
text.mlp.c_fc,11,3.086129858871849
|
| 62 |
+
text.mlp.c_proj,0,16.411416535361464
|
| 63 |
+
text.mlp.c_proj,1,10.636934397271798
|
| 64 |
+
text.mlp.c_proj,2,5.467879831695406
|
| 65 |
+
text.mlp.c_proj,3,3.117101945617834
|
| 66 |
+
text.mlp.c_proj,4,3.162125318135728
|
| 67 |
+
text.mlp.c_proj,5,3.114353715482094
|
| 68 |
+
text.mlp.c_proj,6,3.1560610360682673
|
| 69 |
+
text.mlp.c_proj,7,3.230989551532942
|
| 70 |
+
text.mlp.c_proj,8,3.273957420333387
|
| 71 |
+
text.mlp.c_proj,9,3.322224898837691
|
| 72 |
+
text.mlp.c_proj,10,3.252371370612472
|
| 73 |
+
text.mlp.c_proj,11,3.2207147468979427
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/autoawq.py
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import time
|
| 3 |
+
|
| 4 |
+
import torch
|
| 5 |
+
import transformers
|
| 6 |
+
from awq import AutoAWQForCausalLM
|
| 7 |
+
from transformers import AutoConfig
|
| 8 |
+
|
| 9 |
+
from lm_quant_toolkit.adapter.common import get_model_storage_size
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
def create_autoawq_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 13 |
+
model_file_size = 0
|
| 14 |
+
quantized = False
|
| 15 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-awq"
|
| 16 |
+
|
| 17 |
+
config = AutoConfig.from_pretrained(model_id, trust_remote_code=True)
|
| 18 |
+
# To avoid OOM after huggingface transformers 4.36.2
|
| 19 |
+
config.use_cache = False
|
| 20 |
+
if load_quantized and os.path.exists(quant_path):
|
| 21 |
+
model = AutoAWQForCausalLM.from_quantized(
|
| 22 |
+
quant_path,
|
| 23 |
+
device_map="auto",
|
| 24 |
+
offload_state_dict=False,
|
| 25 |
+
config=config,
|
| 26 |
+
)
|
| 27 |
+
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
|
| 28 |
+
quantized = True
|
| 29 |
+
model_file_size = get_model_storage_size(quant_path)
|
| 30 |
+
model = model.cuda()
|
| 31 |
+
else:
|
| 32 |
+
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
|
| 33 |
+
# max_memory={0: "18GiB", "cpu": "60GiB"},
|
| 34 |
+
# )
|
| 35 |
+
model = AutoAWQForCausalLM.from_pretrained(
|
| 36 |
+
model_id,
|
| 37 |
+
device_map="auto",
|
| 38 |
+
offload_state_dict=False,
|
| 39 |
+
torch_dtype=torch.float16,
|
| 40 |
+
max_memory={0: "18GiB", "cpu": "60GiB"},
|
| 41 |
+
config=config,
|
| 42 |
+
)
|
| 43 |
+
return model, tokenizer, quantized, model_file_size
|
| 44 |
+
|
| 45 |
+
|
| 46 |
+
def quantize_autoawq_model(
|
| 47 |
+
model, tokenizer, quant_config, model_id, config_id, save_dir
|
| 48 |
+
):
|
| 49 |
+
t1 = time.time()
|
| 50 |
+
model.quantize(tokenizer, quant_config=quant_config)
|
| 51 |
+
t2 = time.time()
|
| 52 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with AutoAWQ")
|
| 53 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-awq"
|
| 54 |
+
model.save_quantized(quant_path)
|
| 55 |
+
tokenizer.save_pretrained(quant_path)
|
| 56 |
+
# persistent the quantized model
|
| 57 |
+
os.sync()
|
| 58 |
+
return model, t2 - t1, _get_model_file_size(quant_path)
|
| 59 |
+
|
| 60 |
+
|
| 61 |
+
def _get_model_file_size(quant_path):
|
| 62 |
+
quant_fp_pt = os.path.join(quant_path, "qmodel.pth")
|
| 63 |
+
if os.path.exists(quant_fp_pt):
|
| 64 |
+
return os.path.getsize(quant_fp_pt)
|
| 65 |
+
else:
|
| 66 |
+
return get_model_storage_size(quant_path)
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/autogptq.py
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import gc
|
| 2 |
+
import os
|
| 3 |
+
import random
|
| 4 |
+
import time
|
| 5 |
+
|
| 6 |
+
import torch
|
| 7 |
+
import transformers
|
| 8 |
+
from auto_gptq import AutoGPTQForCausalLM
|
| 9 |
+
from datasets import load_dataset
|
| 10 |
+
from tqdm import tqdm
|
| 11 |
+
|
| 12 |
+
|
| 13 |
+
# Adapted from: https://towardsdatascience.com/4-bit-quantization-with-gptq-36b0f4f02c34
|
| 14 |
+
def prepare_model(model, tokenizer, n_samples=1024, max_tokens=512, use_triton=False):
|
| 15 |
+
# Load data and tokenize examples
|
| 16 |
+
data = load_dataset(
|
| 17 |
+
"allenai/c4",
|
| 18 |
+
data_files="en/c4-train.00001-of-01024.json.gz",
|
| 19 |
+
split=f"train[:{n_samples}]",
|
| 20 |
+
)
|
| 21 |
+
# ~536K tokens
|
| 22 |
+
tokenized_data = torch.cat(
|
| 23 |
+
[
|
| 24 |
+
tokenizer(data[i]["text"], return_tensors="pt").input_ids
|
| 25 |
+
for i in tqdm(range(len(data)))
|
| 26 |
+
],
|
| 27 |
+
axis=-1,
|
| 28 |
+
)
|
| 29 |
+
|
| 30 |
+
# Format tokenized examples
|
| 31 |
+
random.seed(1)
|
| 32 |
+
examples_ids = []
|
| 33 |
+
for _ in range(n_samples):
|
| 34 |
+
i = random.randint(0, tokenized_data.shape[1] - max_tokens - 1)
|
| 35 |
+
j = i + max_tokens
|
| 36 |
+
input_ids = tokenized_data[:, i:j]
|
| 37 |
+
attention_mask = torch.ones_like(input_ids)
|
| 38 |
+
examples_ids.append({"input_ids": input_ids, "attention_mask": attention_mask})
|
| 39 |
+
|
| 40 |
+
print("Using " + str(len(examples_ids)) + " samples for calibration.")
|
| 41 |
+
model.quantize(examples_ids, batch_size=1, use_triton=use_triton)
|
| 42 |
+
# model = model.cuda()
|
| 43 |
+
# with torch.no_grad():
|
| 44 |
+
# x = model(input_ids.to('cuda'))
|
| 45 |
+
# del examples_ids, x
|
| 46 |
+
del examples_ids
|
| 47 |
+
torch.cuda.empty_cache()
|
| 48 |
+
gc.collect()
|
| 49 |
+
return model
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
def create_autogptq_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 53 |
+
model_file_size = 0
|
| 54 |
+
quantized = False
|
| 55 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-gptq"
|
| 56 |
+
if load_quantized and os.path.exists(quant_path):
|
| 57 |
+
model = AutoGPTQForCausalLM.from_quantized(quant_path, device="cuda:0")
|
| 58 |
+
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
|
| 59 |
+
quantized = True
|
| 60 |
+
model_file_size = _get_model_file_size(quant_path, quant_config)
|
| 61 |
+
else:
|
| 62 |
+
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
|
| 63 |
+
model = AutoGPTQForCausalLM.from_pretrained(model_id, quant_config)
|
| 64 |
+
return model, tokenizer, quantized, model_file_size
|
| 65 |
+
|
| 66 |
+
|
| 67 |
+
def quantize_autogptq_model(
|
| 68 |
+
model, tokenizer, quant_config, model_id, config_id, save_dir
|
| 69 |
+
):
|
| 70 |
+
t1 = time.time()
|
| 71 |
+
model = prepare_model(model, tokenizer)
|
| 72 |
+
t2 = time.time()
|
| 73 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with AutoGPTQ")
|
| 74 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-gptq"
|
| 75 |
+
model.save_quantized(quant_path, use_safetensors=True)
|
| 76 |
+
# persistent the quantized model
|
| 77 |
+
os.sync()
|
| 78 |
+
return model, t2 - t1, _get_model_file_size(quant_path, quant_config)
|
| 79 |
+
|
| 80 |
+
|
| 81 |
+
def _get_model_file_size(quant_path, quant_config):
|
| 82 |
+
b = quant_config.bits
|
| 83 |
+
g = quant_config.group_size
|
| 84 |
+
fp = os.path.join(quant_path, f"gptq_model-{b}bit-{g}g.safetensors")
|
| 85 |
+
return os.path.getsize(fp)
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/awq.py
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import time
|
| 3 |
+
|
| 4 |
+
import torch
|
| 5 |
+
from accelerate import (
|
| 6 |
+
infer_auto_device_map,
|
| 7 |
+
init_empty_weights,
|
| 8 |
+
load_checkpoint_in_model,
|
| 9 |
+
)
|
| 10 |
+
from awq.quantize.pre_quant import apply_awq, run_awq
|
| 11 |
+
from awq.quantize.quantizer import real_quantize_model_weight
|
| 12 |
+
from awq.utils.utils import simple_dispatch_model
|
| 13 |
+
from transformers import AutoConfig, AutoModelForCausalLM, AutoTokenizer
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
def create_awq_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 17 |
+
quantized = False
|
| 18 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-awq"
|
| 19 |
+
|
| 20 |
+
tokenizer = AutoTokenizer.from_pretrained(
|
| 21 |
+
model_id, use_fast=False, trust_remote_code=True
|
| 22 |
+
)
|
| 23 |
+
config = AutoConfig.from_pretrained(model_id, trust_remote_code=True)
|
| 24 |
+
# Note (Haotian): To avoid OOM after huggingface transformers 4.36.2
|
| 25 |
+
config.use_cache = False
|
| 26 |
+
if load_quantized and os.path.exists(f"{quant_path}/qmodel.pth"):
|
| 27 |
+
with init_empty_weights():
|
| 28 |
+
model = AutoModelForCausalLM.from_config(
|
| 29 |
+
config=config, torch_dtype=torch.float16, trust_remote_code=True
|
| 30 |
+
)
|
| 31 |
+
max_memory = {0: "20GiB", "cpu": "60GiB"}
|
| 32 |
+
# Infer device map
|
| 33 |
+
kwargs = {"max_memory": max_memory} if len(max_memory) else {}
|
| 34 |
+
device_map = infer_auto_device_map(
|
| 35 |
+
model,
|
| 36 |
+
no_split_module_classes=[
|
| 37 |
+
"OPTDecoderLayer",
|
| 38 |
+
"LlamaDecoderLayer",
|
| 39 |
+
"BloomBlock",
|
| 40 |
+
"MPTBlock",
|
| 41 |
+
"DecoderLayer",
|
| 42 |
+
],
|
| 43 |
+
**kwargs,
|
| 44 |
+
)
|
| 45 |
+
# Load checkpoint in the model
|
| 46 |
+
load_checkpoint_in_model(
|
| 47 |
+
model,
|
| 48 |
+
checkpoint=quant_path,
|
| 49 |
+
device_map=device_map,
|
| 50 |
+
offload_state_dict=False,
|
| 51 |
+
)
|
| 52 |
+
# Dispatch model
|
| 53 |
+
model = simple_dispatch_model(model, device_map=device_map)
|
| 54 |
+
quantized = True
|
| 55 |
+
model.eval()
|
| 56 |
+
else:
|
| 57 |
+
kwargs = {"torch_dtype": torch.float16, "low_cpu_mem_usage": True}
|
| 58 |
+
model = AutoModelForCausalLM.from_pretrained(
|
| 59 |
+
model_id, config=config, trust_remote_code=True, **kwargs
|
| 60 |
+
)
|
| 61 |
+
return model, tokenizer, quantized, 0
|
| 62 |
+
|
| 63 |
+
|
| 64 |
+
def quantize_awq_model(model, tokenizer, quant_config, model_id, config_id, save_dir):
|
| 65 |
+
t1 = time.time()
|
| 66 |
+
nbits = quant_config.pop("w_bit")
|
| 67 |
+
awq_results = run_awq(
|
| 68 |
+
model,
|
| 69 |
+
tokenizer,
|
| 70 |
+
w_bit=nbits,
|
| 71 |
+
q_config=quant_config,
|
| 72 |
+
n_samples=128,
|
| 73 |
+
seqlen=512,
|
| 74 |
+
)
|
| 75 |
+
intermediate_fp = f"{save_dir}/{model_id}-{config_id}-awq/intermediate.pth"
|
| 76 |
+
dirpath = os.path.dirname(intermediate_fp)
|
| 77 |
+
os.makedirs(dirpath, exist_ok=True)
|
| 78 |
+
torch.save(awq_results, intermediate_fp)
|
| 79 |
+
awq_results = torch.load(intermediate_fp, map_location="cpu")
|
| 80 |
+
apply_awq(model, awq_results)
|
| 81 |
+
real_quantize_model_weight(model, w_bit=nbits, q_config=quant_config)
|
| 82 |
+
|
| 83 |
+
t2 = time.time()
|
| 84 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with AWQ")
|
| 85 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-awq"
|
| 86 |
+
quant_fp = os.path.join(quant_path, "qmodel.pth")
|
| 87 |
+
torch.save(model.cpu().state_dict(), quant_fp)
|
| 88 |
+
tokenizer.save_pretrained(quant_path)
|
| 89 |
+
|
| 90 |
+
model_file_size = os.path.getsize(quant_fp)
|
| 91 |
+
return model, t2 - t1, model_file_size
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/bnb.py
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import time
|
| 3 |
+
|
| 4 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 5 |
+
|
| 6 |
+
from lm_quant_toolkit.adapter.common import get_model_storage_size
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
def create_bnb_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 10 |
+
quantized = False
|
| 11 |
+
model_file_size = 0
|
| 12 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-bnb"
|
| 13 |
+
if load_quantized and os.path.exists(quant_path):
|
| 14 |
+
model = AutoModelForCausalLM.from_pretrained(quant_path)
|
| 15 |
+
tokenizer = AutoTokenizer.from_pretrained(model_id)
|
| 16 |
+
quantized = True
|
| 17 |
+
model_file_size = get_model_storage_size(quant_path)
|
| 18 |
+
else:
|
| 19 |
+
model = None
|
| 20 |
+
tokenizer = AutoTokenizer.from_pretrained(model_id)
|
| 21 |
+
return model, tokenizer, quantized, model_file_size
|
| 22 |
+
|
| 23 |
+
|
| 24 |
+
def quantize_bnb_model(model, tokenizer, quant_config, model_id, config_id, save_dir):
|
| 25 |
+
model_file_size = 0
|
| 26 |
+
t1 = time.time()
|
| 27 |
+
model = AutoModelForCausalLM.from_pretrained(
|
| 28 |
+
model_id, quantization_config=quant_config
|
| 29 |
+
)
|
| 30 |
+
t2 = time.time()
|
| 31 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with BnB")
|
| 32 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-bnb"
|
| 33 |
+
model.save_pretrained(quant_path)
|
| 34 |
+
# persistent the quantized model
|
| 35 |
+
os.sync()
|
| 36 |
+
model_file_size = get_model_storage_size(quant_path)
|
| 37 |
+
return model, t2 - t1, model_file_size
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/common.py
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
import os
|
| 3 |
+
|
| 4 |
+
|
| 5 |
+
def get_model_storage_size(
|
| 6 |
+
base_dir,
|
| 7 |
+
index_file="model.safetensors.index.json",
|
| 8 |
+
model_file="model.safetensors",
|
| 9 |
+
):
|
| 10 |
+
size = 0
|
| 11 |
+
index_file = os.path.join(base_dir, index_file)
|
| 12 |
+
if os.path.exists(index_file):
|
| 13 |
+
# model is split into shards
|
| 14 |
+
with open(index_file, "r") as f:
|
| 15 |
+
index = json.load(f)
|
| 16 |
+
for shard in set(index["weight_map"].values()):
|
| 17 |
+
size += os.path.getsize(os.path.join(base_dir, shard))
|
| 18 |
+
else:
|
| 19 |
+
size = os.path.getsize(os.path.join(base_dir, model_file))
|
| 20 |
+
return size
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/fp16.py
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import transformers
|
| 3 |
+
from transformers import AutoModelForCausalLM
|
| 4 |
+
|
| 5 |
+
from lm_quant_toolkit.adapter.common import get_model_storage_size
|
| 6 |
+
from lm_quant_toolkit.utils.hub import get_hf_model_storge_base_dir
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
def create_fp16_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 10 |
+
model_file_size = 0
|
| 11 |
+
model = AutoModelForCausalLM.from_pretrained(
|
| 12 |
+
model_id, device_map="auto", torch_dtype=torch.float16
|
| 13 |
+
)
|
| 14 |
+
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
|
| 15 |
+
base_dir = get_hf_model_storge_base_dir(model_id)
|
| 16 |
+
model_file_size = get_model_storage_size(base_dir)
|
| 17 |
+
return model, tokenizer, False, model_file_size
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/hqq.py
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import time
|
| 3 |
+
|
| 4 |
+
from hqq.engine.hf import AutoTokenizer as hggAutoTokenizer
|
| 5 |
+
from hqq.engine.hf import HQQModelForCausalLM
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def create_hqq_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 9 |
+
quantized = False
|
| 10 |
+
model_file_size = 0
|
| 11 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-hqq"
|
| 12 |
+
if load_quantized and os.path.exists(quant_path):
|
| 13 |
+
model = HQQModelForCausalLM.from_quantized(quant_path)
|
| 14 |
+
tokenizer = hggAutoTokenizer.from_pretrained(model_id)
|
| 15 |
+
quantized = True
|
| 16 |
+
model_file_size = os.path.getsize(os.path.join(quant_path, "qmodel.pt"))
|
| 17 |
+
else:
|
| 18 |
+
model = HQQModelForCausalLM.from_pretrained(model_id)
|
| 19 |
+
tokenizer = hggAutoTokenizer.from_pretrained(model_id)
|
| 20 |
+
return model, tokenizer, quantized, model_file_size
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
def quantize_hqq_model(model, tokenizer, quant_config, model_id, config_id, save_dir):
|
| 24 |
+
model_file_size = 0
|
| 25 |
+
t1 = time.time()
|
| 26 |
+
model.quantize_model(quant_config=quant_config)
|
| 27 |
+
t2 = time.time()
|
| 28 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with HQQ")
|
| 29 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-hqq"
|
| 30 |
+
model.save_quantized(quant_path)
|
| 31 |
+
# persistent the quantized model
|
| 32 |
+
os.sync()
|
| 33 |
+
model_file_size = os.path.getsize(os.path.join(quant_path, "qmodel.pt"))
|
| 34 |
+
return model, t2 - t1, model_file_size
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/mxq.py
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import time
|
| 3 |
+
|
| 4 |
+
from hqq.engine.hf import AutoTokenizer as hggAutoTokenizer
|
| 5 |
+
from hqq.engine.hf import HQQModelForCausalLM
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def create_mxq_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 9 |
+
quantized = False
|
| 10 |
+
model_file_size = 0
|
| 11 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-mxq"
|
| 12 |
+
if load_quantized and os.path.exists(quant_path):
|
| 13 |
+
model = HQQModelForCausalLM.from_quantized(quant_path)
|
| 14 |
+
tokenizer = hggAutoTokenizer.from_pretrained(model_id)
|
| 15 |
+
quantized = True
|
| 16 |
+
model_file_size = os.path.getsize(os.path.join(quant_path, "qmodel.pt"))
|
| 17 |
+
else:
|
| 18 |
+
model = HQQModelForCausalLM.from_pretrained(model_id)
|
| 19 |
+
tokenizer = hggAutoTokenizer.from_pretrained(model_id)
|
| 20 |
+
return model, tokenizer, quantized, model_file_size
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
def quantize_mxq_model(model, tokenizer, quant_config, model_id, config_id, save_dir):
|
| 24 |
+
model_file_size = 0
|
| 25 |
+
t1 = time.time()
|
| 26 |
+
model.quantize_model(quant_config=quant_config)
|
| 27 |
+
t2 = time.time()
|
| 28 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with MXQ")
|
| 29 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-mxq"
|
| 30 |
+
model.save_quantized(quant_path)
|
| 31 |
+
# persistent the quantized model
|
| 32 |
+
os.sync()
|
| 33 |
+
model_file_size = os.path.getsize(os.path.join(quant_path, "qmodel.pt"))
|
| 34 |
+
return model, t2 - t1, model_file_size
|
lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/vit/hqq.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import time
|
| 3 |
+
from pathlib import Path
|
| 4 |
+
|
| 5 |
+
from hqq.engine.open_clip import HQQOpenCLIP
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def create_hqq_model(model_id, quant_config, config_id, load_quantized, save_dir):
|
| 9 |
+
quantized = False
|
| 10 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-hqq"
|
| 11 |
+
if load_quantized and os.path.exists(quant_path):
|
| 12 |
+
model = HQQOpenCLIP.from_quantized(quant_path)
|
| 13 |
+
quantized = True
|
| 14 |
+
else:
|
| 15 |
+
model = HQQOpenCLIP.create_model(model_id, device="cpu")
|
| 16 |
+
return model, quantized
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def quantize_hqq_model(model, quant_config, model_id, config_id, save_dir):
|
| 20 |
+
t1 = time.time()
|
| 21 |
+
model.quantize_model(quant_config=quant_config)
|
| 22 |
+
t2 = time.time()
|
| 23 |
+
print("Took " + str(t2 - t1) + " seconds to quantize the model with HQQ")
|
| 24 |
+
quant_path = f"{save_dir}/{model_id}-{config_id}-hqq"
|
| 25 |
+
Path(quant_path).mkdir(parents=True, exist_ok=True)
|
| 26 |
+
model.save_quantized(save_dir=quant_path)
|
| 27 |
+
return model, t2 - t1
|