chen459664 commited on
Commit
96c53cc
·
verified ·
1 Parent(s): 64ddf8d

Add files using upload-large-folder tool

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-boost.sh +119 -0
  2. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-kurt-boost.sh +132 -0
  3. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-ablation.sh +133 -0
  4. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-boost.sh +133 -0
  5. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-milp-7b.sh +119 -0
  6. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama-sensi-milp-ablation.sh +109 -0
  7. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-llama2-13b-boost.sh +121 -0
  8. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-sensi-milp-mini-batch.sh +128 -0
  9. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-tail-reduction.sh +118 -0
  10. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/experiment-vit-zs-mxq-kurt-boost.sh +34 -0
  11. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-3.25-llama-7b-sensi-boost.sh +116 -0
  12. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-experiment-llama-kurt-milp-ablation.sh +82 -0
  13. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix-llama-sensi-milp.sh +129 -0
  14. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/fix_experiment-llama-kurt-milp.sh +87 -0
  15. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-allot-kurt-scaled-dense.sh +46 -0
  16. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-llama-sensi.sh +43 -0
  17. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-milp-low-bit.sh +99 -0
  18. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-qwen-sensi-metrics.sh +17 -0
  19. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/plot-sensi-milp-mini-batch.sh +53 -0
  20. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-13b-awq.sh +18 -0
  21. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-2bit-dense1-mxq.sh +21 -0
  22. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-3bit-dense1-mxq.sh +21 -0
  23. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-4_51-mxq.sh +21 -0
  24. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-4bit-dense1-mxq.sh +21 -0
  25. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-8bit-gptq.sh +18 -0
  26. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-awq.sh +18 -0
  27. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-b4-mxq.sh +21 -0
  28. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-gptq.sh +17 -0
  29. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-hqq.sh +20 -0
  30. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-kurt-13b-mxq.sh +21 -0
  31. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/quant-llm-mxq.sh +20 -0
  32. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-quant-allot.sh +60 -0
  33. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-quant-milp.sh +4 -0
  34. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/scripts/sim-tail-boost-quant-allot.sh +48 -0
  35. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-CLIP-ViT-B-32-laion2B-s34B-b79K.csv +577 -0
  36. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-2-70b-hf.csv +0 -0
  37. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-2-7b-hf.csv +0 -0
  38. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Llama-3.1-8B.csv +0 -0
  39. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/fnorm-Meta-Llama-3-8B.csv +0 -0
  40. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/kurtosis-CLIP-ViT-H-14-laion2B-s32B-b79K.csv +113 -0
  41. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/data/kurtosis-CLIP-ViT-L-14-laion2B-s32B-b82K.csv +73 -0
  42. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/autoawq.py +66 -0
  43. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/autogptq.py +85 -0
  44. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/awq.py +91 -0
  45. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/bnb.py +37 -0
  46. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/common.py +20 -0
  47. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/fp16.py +17 -0
  48. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/hqq.py +34 -0
  49. lm-quant-toolkit/new_lm-quant-toolkit/lm-quant-toolkit/src/lm_quant_toolkit/adapter/mxq.py +34 -0
  50. 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