From f75d9f93bb14ed56058f4c70ae4670b6cf3a8ed1 Mon Sep 17 00:00:00 2001 From: Ilyas Moutawwakil <57442720+IlyasMoutawwakil@users.noreply.github.com> Date: Thu, 30 Nov 2023 05:26:04 +0100 Subject: [PATCH] Update llama examples (#90) --- .gitignore | 4 +- examples/running-llamas/README.md | 49 ++- .../A100-80GB/forward_latency_plot.png | Bin 39612 -> 0 bytes .../A100-80GB/forward_memory_plot.png | Bin 37099 -> 0 bytes .../artifacts/A100-80GB/full_report.csv | 11 - .../A100-80GB/generate_memory_plot.png | Bin 41656 -> 0 bytes .../A100-80GB/generate_throughput_plot.png | Bin 37626 -> 0 bytes .../artifacts/A100-80GB/rich_table.svg | 163 ------- .../artifacts/A100-80GB/short_report.csv | 11 - .../Llama-13b/decode_throughput_bar_plot.png | Bin 0 -> 41316 bytes .../Llama-13b/decode_throughput_line_plot.png | Bin 0 -> 64674 bytes .../artifacts/Llama-13b/full_report.csv | 31 ++ ...generate_max_memory_allocated_bar_plot.png | Bin 0 -> 44083 bytes ...enerate_max_memory_allocated_line_plot.png | Bin 0 -> 61570 bytes .../generate_max_memory_reserved_bar_plot.png | Bin 0 -> 46918 bytes ...generate_max_memory_reserved_line_plot.png | Bin 0 -> 61567 bytes .../peak_decode_throughput_bar_plot.png | Bin 0 -> 40338 bytes .../Llama-13b/prefill_latency_bar_plot.png | Bin 0 -> 36349 bytes .../Llama-13b/prefill_latency_line_plot.png | Bin 0 -> 59534 bytes .../artifacts/Llama-13b/short_report.csv | 31 ++ .../Llama-65b/decode_throughput_bar_plot.png | Bin 0 -> 32942 bytes .../Llama-65b/decode_throughput_line_plot.png | Bin 0 -> 43750 bytes .../artifacts/Llama-65b/full_report.csv | 9 + ...generate_max_memory_allocated_bar_plot.png | Bin 0 -> 39213 bytes ...enerate_max_memory_allocated_line_plot.png | Bin 0 -> 47608 bytes .../generate_max_memory_reserved_bar_plot.png | Bin 0 -> 39831 bytes ...generate_max_memory_reserved_line_plot.png | Bin 0 -> 48540 bytes .../peak_decode_throughput_bar_plot.png | Bin 0 -> 30405 bytes .../Llama-65b/prefill_latency_bar_plot.png | Bin 0 -> 30959 bytes .../Llama-65b/prefill_latency_line_plot.png | Bin 0 -> 41751 bytes .../artifacts/Llama-65b/short_report.csv | 9 + .../Llama-7b/decode_throughput_bar_plot.png | Bin 0 -> 41663 bytes .../Llama-7b/decode_throughput_line_plot.png | Bin 0 -> 70079 bytes .../artifacts/Llama-7b/full_report.csv | 36 ++ ...generate_max_memory_allocated_bar_plot.png | Bin 0 -> 44722 bytes ...enerate_max_memory_allocated_line_plot.png | Bin 0 -> 64550 bytes .../generate_max_memory_reserved_bar_plot.png | Bin 0 -> 47072 bytes ...generate_max_memory_reserved_line_plot.png | Bin 0 -> 63481 bytes .../peak_decode_throughput_bar_plot.png | Bin 0 -> 40604 bytes .../Llama-7b/prefill_latency_bar_plot.png | Bin 0 -> 36913 bytes .../Llama-7b/prefill_latency_line_plot.png | Bin 0 -> 58741 bytes .../artifacts/Llama-7b/short_report.csv | 36 ++ examples/running-llamas/configs/_base_.yaml | 43 +- examples/running-llamas/configs/bnb.yaml | 11 - .../running-llamas/configs/fp16+bt+tp=2.yaml | 22 + examples/running-llamas/configs/fp16+bt.yaml | 9 + .../running-llamas/configs/fp16+dp=2.yaml | 15 + .../running-llamas/configs/fp16+fa2+tp=2.yaml | 22 + examples/running-llamas/configs/fp16+fa2.yaml | 9 + .../configs/fp16+gptq+exllamav1+dp=2.yaml | 27 ++ .../configs/fp16+gptq+exllamav1.yaml | 20 + .../configs/fp16+gptq+exllamav2+dp=2.yaml | 27 ++ .../configs/fp16+gptq+exllamav2.yaml | 20 + .../running-llamas/configs/fp16+tp=2.yaml | 21 + examples/running-llamas/configs/fp16.yaml | 6 + examples/running-llamas/configs/gptq.yaml | 6 - .../0/.hydra/config.yaml | 73 ---- .../0/.hydra/hydra.yaml | 174 -------- .../0/.hydra/overrides.yaml | 1 - .../0/hydra_config.yaml | 79 ---- .../0/inference_results.csv | 2 - .../4/.hydra/config.yaml | 73 ---- .../4/.hydra/hydra.yaml | 174 -------- .../4/.hydra/overrides.yaml | 1 - .../4/hydra_config.yaml | 79 ---- .../4/inference_results.csv | 2 - .../1/.hydra/config.yaml | 73 ---- .../1/.hydra/hydra.yaml | 174 -------- .../1/.hydra/overrides.yaml | 1 - .../1/hydra_config.yaml | 79 ---- .../1/inference_results.csv | 2 - .../multirun.yaml | 246 ----------- .../2/.hydra/config.yaml | 73 ---- .../2/.hydra/hydra.yaml | 174 -------- .../2/.hydra/overrides.yaml | 1 - .../2/hydra_config.yaml | 79 ---- .../2/inference_results.csv | 2 - .../3/.hydra/config.yaml | 73 ---- .../3/.hydra/hydra.yaml | 174 -------- .../3/.hydra/overrides.yaml | 1 - .../3/hydra_config.yaml | 79 ---- .../3/inference_results.csv | 2 - .../0/.hydra/config.yaml | 73 ---- .../0/.hydra/hydra.yaml | 174 -------- .../0/.hydra/overrides.yaml | 1 - .../0/hydra_config.yaml | 79 ---- .../0/inference_results.csv | 2 - .../4/.hydra/config.yaml | 73 ---- .../4/.hydra/hydra.yaml | 174 -------- .../4/.hydra/overrides.yaml | 1 - .../4/hydra_config.yaml | 79 ---- .../4/inference_results.csv | 2 - .../1/.hydra/config.yaml | 73 ---- .../1/.hydra/hydra.yaml | 174 -------- .../1/.hydra/overrides.yaml | 1 - .../1/hydra_config.yaml | 79 ---- .../1/inference_results.csv | 2 - .../multirun.yaml | 246 ----------- .../2/.hydra/config.yaml | 73 ---- .../2/.hydra/hydra.yaml | 174 -------- .../2/.hydra/overrides.yaml | 1 - .../2/hydra_config.yaml | 79 ---- .../2/inference_results.csv | 2 - .../3/.hydra/config.yaml | 73 ---- .../3/.hydra/hydra.yaml | 174 -------- .../3/.hydra/overrides.yaml | 1 - .../3/hydra_config.yaml | 79 ---- .../3/inference_results.csv | 2 - examples/running-llamas/report.py | 405 +++++++++--------- optimum_benchmark/backends/isolation_utils.py | 83 ++-- optimum_benchmark/backends/pytorch/backend.py | 25 +- optimum_benchmark/backends/pytorch/config.py | 4 +- .../benchmarks/inference/benchmark.py | 36 +- optimum_benchmark/experiment.py | 11 +- .../launchers/inline/__init__.py | 0 optimum_benchmark/launchers/inline/config.py | 12 + .../launchers/inline/launcher.py | 20 + .../launchers/process/launcher.py | 8 +- optimum_benchmark/trackers/memory.py | 8 +- 119 files changed, 744 insertions(+), 4298 deletions(-) delete mode 100644 examples/running-llamas/artifacts/A100-80GB/forward_latency_plot.png delete mode 100644 examples/running-llamas/artifacts/A100-80GB/forward_memory_plot.png delete mode 100644 examples/running-llamas/artifacts/A100-80GB/full_report.csv delete mode 100644 examples/running-llamas/artifacts/A100-80GB/generate_memory_plot.png delete mode 100644 examples/running-llamas/artifacts/A100-80GB/generate_throughput_plot.png delete mode 100644 examples/running-llamas/artifacts/A100-80GB/rich_table.svg delete mode 100644 examples/running-llamas/artifacts/A100-80GB/short_report.csv create mode 100644 examples/running-llamas/artifacts/Llama-13b/decode_throughput_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/decode_throughput_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/full_report.csv create mode 100644 examples/running-llamas/artifacts/Llama-13b/generate_max_memory_allocated_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/generate_max_memory_allocated_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/generate_max_memory_reserved_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/generate_max_memory_reserved_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/peak_decode_throughput_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/prefill_latency_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/prefill_latency_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-13b/short_report.csv create mode 100644 examples/running-llamas/artifacts/Llama-65b/decode_throughput_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/decode_throughput_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/full_report.csv create mode 100644 examples/running-llamas/artifacts/Llama-65b/generate_max_memory_allocated_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/generate_max_memory_allocated_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/generate_max_memory_reserved_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/generate_max_memory_reserved_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/peak_decode_throughput_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/prefill_latency_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/prefill_latency_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-65b/short_report.csv create mode 100644 examples/running-llamas/artifacts/Llama-7b/decode_throughput_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/decode_throughput_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/full_report.csv create mode 100644 examples/running-llamas/artifacts/Llama-7b/generate_max_memory_allocated_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/generate_max_memory_allocated_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/generate_max_memory_reserved_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/generate_max_memory_reserved_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/peak_decode_throughput_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/prefill_latency_bar_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/prefill_latency_line_plot.png create mode 100644 examples/running-llamas/artifacts/Llama-7b/short_report.csv delete mode 100644 examples/running-llamas/configs/bnb.yaml create mode 100644 examples/running-llamas/configs/fp16+bt+tp=2.yaml create mode 100644 examples/running-llamas/configs/fp16+bt.yaml create mode 100644 examples/running-llamas/configs/fp16+dp=2.yaml create mode 100644 examples/running-llamas/configs/fp16+fa2+tp=2.yaml create mode 100644 examples/running-llamas/configs/fp16+fa2.yaml create mode 100644 examples/running-llamas/configs/fp16+gptq+exllamav1+dp=2.yaml create mode 100644 examples/running-llamas/configs/fp16+gptq+exllamav1.yaml create mode 100644 examples/running-llamas/configs/fp16+gptq+exllamav2+dp=2.yaml create mode 100644 examples/running-llamas/configs/fp16+gptq+exllamav2.yaml create mode 100644 examples/running-llamas/configs/fp16+tp=2.yaml create mode 100644 examples/running-llamas/configs/fp16.yaml delete mode 100644 examples/running-llamas/configs/gptq.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml delete mode 100644 examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv create mode 100644 optimum_benchmark/launchers/inline/__init__.py create mode 100644 optimum_benchmark/launchers/inline/config.py create mode 100644 optimum_benchmark/launchers/inline/launcher.py diff --git a/.gitignore b/.gitignore index a589733f..30063812 100644 --- a/.gitignore +++ b/.gitignore @@ -168,6 +168,4 @@ data/ version.txt actions-runner/ -experiments/ -examples/ -results/ \ No newline at end of file +experiments/ \ No newline at end of file diff --git a/examples/running-llamas/README.md b/examples/running-llamas/README.md index dca82a4e..f4c9036c 100644 --- a/examples/running-llamas/README.md +++ b/examples/running-llamas/README.md @@ -1,61 +1,66 @@ -# Optimum-Benchmark x LLaMAs x GPTQ +# Optimum-Benchmark x LLaMA A set of benchmarks on Meta's LLaMA2's inference. ## Setup -You will need to install these quantization packages: +You will need to install any necessary third-party libraries like `deepspeed` or `auto-gptq` depending on the hardware and benchmarks you want to run. -```bash -pip install auto-gptq # or install it from source -``` +For example running FlashAttentionV2 on two devices with Tensor Parallelism (i.e. `fp16+fa2+tp=2`) will require: `deepspeed` and `flash-attn` ## Running -Then run these commands from this directory: +Then run the benchmarks from this directory with: ```bash -optimum-benchmark --config-dir configs/ --config-name _base_ --multirun -optimum-benchmark --config-dir configs/ --config-name gptq --multirun +optimum-benchmark --config-dir configs/ --config-name fp16 --multirun +optimum-benchmark --config-dir configs/ --config-name fp16+fa2+tp=2 --multirun +[...] ``` -This will create a folder called `experiments` with the results of the benchmarks with an inference `batch_size` ranging from 1 to 16 and an input `sequence_length` (prompt size) of 256. +This will create a folder called `experiments` with the results of the benchmarks with an inference `batch_size` ranging from 1 to 128 and an input `sequence_length` (prompt size) of 256. ## Reporting -To create a report run: +To create a report for 7B models on A100-80GB, run: ```bash -python report.py -e experiments -m allocated +python report.py -e experiments/hf-dgx-01/NousResearch/Llama-2-7b-hf/ experiments/hf-dgx-01/TheBloke/LLaMa-7B-GPTQ/ -r artifacts/Llama-7b/ +python report.py -e experiments/hf-dgx-01/NousResearch/Llama-2-13b-hf/ experiments/hf-dgx-01/TheBloke/LLaMa-13B-GPTQ/ -r artifacts/Llama-13b/ +python report.py -e experiments/hf-dgx-01/NousResearch/Llama-2-65b-hf/ experiments/hf-dgx-01/TheBloke/LLaMa-65B-GPTQ/ -r artifacts/Llama-65b/ ``` -Which will create some quick reporting artifacts like a `full_report.csv`, `short_report.csv`, some plots and a `rich_table.svg`. - -`-e` is the experiments folder from which to read the results. -`-r` is the report folder to which to write the resulting artifacts. -`-m` is the memory type to use for the reporting. It can be `used`, `allocated` or `reserved`. +Which will create some quick reporting artifacts like a `full_report.csv`, `short_report.csv`, and some interesting analysis plots. ## Results -### On A100-80GB +### LLaMA-7B on A100-80GB

-latency_plot +throughput_plot

-throughput_plot +latency_plot

+### LLaMA-13B on A100-80GB +

-memory_plot +throughput_plot

-memory_plot +latency_plot

+### LLaMA-65B on A100-80GB +

-rich_table +throughput_plot

+ +

+latency_plot +

\ No newline at end of file diff --git a/examples/running-llamas/artifacts/A100-80GB/forward_latency_plot.png b/examples/running-llamas/artifacts/A100-80GB/forward_latency_plot.png deleted file mode 100644 index 4e7dd369a376ab509811c02853f15fc09153d0c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39612 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

9>!9@*D_2xn4`|F``wnh* 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 NQaX1$S;6q`{{zC@A}Ig> diff --git a/examples/running-llamas/artifacts/A100-80GB/forward_memory_plot.png b/examples/running-llamas/artifacts/A100-80GB/forward_memory_plot.png deleted file mode 100644 index ff81266efd0a2930c9ef1da538724247b44c3cd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37099 zcmdqJcU;fy|2O<@p+SQ*q)8OoX=q6*l~N+K6&li}U8qzVNJ~VELK00{LMf3lqG%{e zN~OK8=W(9j$M5&MuIs)Z_y70#IM46*JXN3G<2YWg=XxEH`wVqfGVwA|6t!}Xu9gW! z(S}eIP1lNL_!If&uf6y`C9mCwy!N{u_c~+iag5q)>*aRR)$63=QNh#4JUks;PsvIs zN=R)LbnxUSI|>e8V-T02dB zt`B}Yb7+6-y5%FThiJYC?%$a!^DVPT(RsJA@x7uy+devdYde_twCL>-9m^u`;y*La zAD!GKua|Nuy3>fu3d;6P=`?P;9Ma4Y9-!Xz{CwHe*VL(S8>_dfeX24-p%gp*O5k1= zw*H@gA5qJ_UUvaHq+78cIn2xk<;HyATMr@s^t5s?#WORI}7o7PCtY{1vWZIdYu z@&Qr?R3yHx$Nm48A6HfK>Swc;;aRm_+4OVzKE@AE&$wQdw61*kd~Ad3xa9!JVS;RnDsxZQmczy|GL0>1&xA&!Ylhn zv@;rhA9Vx*=~E1r85tSn&F#|E%$hDa`NgEVnRBJ@M&=VuX<-JU&+i_%$Fx1?XjZ_? zU*09j(#yW@$3QuH>;iv=%(+pY027?V^Jp4_~wnR zt83iA$9s04AKLoNPrIkT(7JlV*mk+b#=0||fy-H0Sz}xhwwOs|IYjaA-@pI9dC97Y z->t2mgQiDpRRX5jJj%*13GaV-`uC@8*VO`f1p-FS)>aldx7K|4uqHP*H*C%N3g)|J z`LV{C+BB5O{{8NMzA81QDzIK)6{!97{!Zs~0J*rUV*B6WiGBY3x!1GM_w}n+8qdR5 zy7$zs93S||yepjLtY&)k$9rZ4r@ko{I=8NR@ZbRzGTKu&#%e3R#(>JLE_7(7#V>t3 zH72@g)AO%iRXUsIlr>jm-M(GZ*tpgDZR?|B`X@Wed6?I34Y}N0Rdwz6r@UQxM~X%U zzdR1`O)D`@*JQ9ie*Ead>;x~Pjgymjv1@1Sty_X8zdb2>_ub!oW_ z6*-%IZfna3T9}<4Yf=}AuXp>^vN3n)Q=U2gedO1jn@-oCx3+TKQ1-sUpKnpdArL$- z&9{ENP}1w}zP<|^^%Hv|i~>_#hdU~AET3*~Y-}8PEm=iT{AvLa#V+kNU%&Fj#>R3> zAEj?;Y3b;ned_h=Twl{okqsNP+7i>!Vz-$W_fE4J&*8p|OHNsSZf}3y*vL}k^s&Kx z-RU0<376{a4;35@tDSUwe;aGqcIwYJ<+>909_`HudXDW_dSO?uuJIcDZ2Vg~j$c)? zvof%|x0k-mB33U!{71wt)q@`IZ|_Z(ImXm*Rg6wwUq4{-%L!dwU5z70c*9u*R_W;I z96EI9meEZ$C9C$vMuUK*g{ho<>9oBbN@P2^RxNDTdHOXdJcd_Z6Bkuzb-tuTftHTW z+b_n8lan({EpYbM$uEyCz5e0m?*44k&46=wTaJZubHi2Hos9T>^b8E$SoTV9OYpW# zA6W3*zI~hQ2)y_Qo?8c6dv69W?wlC-XzS#}q^_=hvb}hlPW$w<4~u{r->Fll@WDBU z3WSfpy`DRoR(fWbAA3J&epClb+h{h$;_2zVQ(XNUPn&S49O4J>uPC!vg~Adr_C~>VerZ*L#r)&*Oa_{onz2^*Te9`( zsL7%B3v0I>>B5yh$Ip&_f5|*QKh~6Emd{^PQ{%yMeE3~DorfL4mLA zW%!gl=uycSC_YucHOrPQFEf+bg4^qeoh;gS)X5 zLrrpDVExObP5pe6+TW7RTsi%ndHi=PYez?i&**oCYjTd~UcJ&~S+BeX+kJXrs?)uz z`mBOqAl^S~aB%Q_>ni?jM+&K1dK3o-$GbAm6I%~G6s(gT>ub_U-R|-(&s-tv&K*0{ zk$znB=|5j1v7af8n`(g%UD~%t^C@xcP2C=rnz~NHx-wd9|7}4=F@u|G>s#}!n=Z3B&hZ?1UGJEz?Q4Y)QKB;$z@&r?b~`%zCRb(jrP{BCX2u4`WCYXTBxA2Q^TxSZaa27 zRk3^Z>eZ#iVBNiYU(Ss6jlMThPq%#@&bvzo*Xq{ycK!IT_sieDeOu}`A)dI+Jp7(n z{&zg67J;uIQok?PB-MB>?b5XKV zLqj8^wpi7F(q^cwsAV|CBv%Uy$Zhbm^!RY6KxJiRX~2vOuHoXy2>!5OS6^QyhXLEK zFAWJ>7^pmJC%il^)Y9*`x0d3IT#`(5bac&+PZ&A2XYGlnr<$|%llYqU=bCJ6F0j-2 z<^JZH{O${@*3(n&3$xxrp=|BNE~}{*FE4UspB57nQ+mtE&AplI?-&=9S$ri;)nBf- z36GXy!)0A5-nePg#VF1#Ow{+TXXlkG)K0v;&d$swu_iGw(ZpcAvKL#-I)%hE_05}g zdp?`l0X1-;f3HP*D5#y>WR$jI$BrG%g^v3#CnkzIeaI2|`t93pyoa;`Mj@?C?HH|W zy@XIU%?}SO&FPmfXBG;@vRy4IDtZ*Pko-d0kk945kG(A1+#aH`vSVSqSG4YXdn2r< zsA$d8+0S?=7stoFaxIf2EJF=MS7VF5Q|##Mw7$B<%+N2OyM}>ABVci+k9VkYc3=yQ z2A`svMq6Tgla!j86>v*bbEb~-NdaZA9P~vlrZC~AR^9d{?V-jLS=x|8WggjVniEfG z*dCu~dOH!YXV0FR+FETC4I?{$Q`4&ti;F*fwyN;+?*9H=_&yjVN@P9Q;BXQtChTK)XF6Vuh`ZjbK}m z^QK3S9?4CLB{c9!A5%YJU=WRVar8ruv9Fbpo?g_*@k@i|ebPqR8HMOwY4)EzTQ<6c#S@H)lR9C}{5gQLnbB|4si(j)_twod1yzZPLs--m9=5;Yng0odsTidKNr`9&`^3ghj)~%tu5~mx?Of_ z6@U)8yo2`-rMqv@QyTG!& z>0MhJ@6CX}jGywYS%v5+!7W>u(T=X38tUVcm6c6SPVRb_z6&e+eVgcp4fLao{jP-zf<_7z;5|fy^W%V*H_Tdy@{(f^B+KweusDXtKj^3y7Gz& zcWgM7o21R$F}!i*)UJH=lV{JK5vX%XXqQ*z-qh>Yqwy>Ve)!#*e<3|xi2B%61GuQB zrpBwz?A=s8yRh>rR|oBF+OcQL1srbBdn_#mQg;gu=Kr0TcnPrLX)x~Ny>|6ciMs2=vy|VNRxbnNxRlV4== z`l2Eun|%iV{CO~XXyM7zva%naADD_`9Z~-N{$Hzt1<;5A+%mLx0Goks=nhNDyQuHd zNC-LgwUk{aj(;}*LxF3jnwE|ZnjHU;_A0T7CM}61yPu6I-11Iqu3x`C(tSaITtNSq z$9Lp@ZW9)!rLtJZ&2m?tnJ98h73>}w%G<9=ukm}X_4RA!5GRA1j~~l|`~tscTf{#x z3r;Jmcv~ih?N^)E1We-N@BdHl2c``d+7(Vw;B3;z8rGcr{7|UQvvPKM>h==X&TzDG zL&m@NhWAhpi;CXJyEnbX8h?EJO$~6M8(!XEXO)2Z;ls!)0g2i+F??sAmqim9>&qEL>b%-0Rlap|2eRr-+?wx~X3Gu~0Nw#dl0I!8D7fY{&=F(yquBD>{yVpS zE8YVMz@u^V@TftHI~%@o-FE=!kjIZbV@D6Qp`$pBn;g5dm+uOCpdJJ`^I**F6p&Sb^J!VTNOArx%=tqp%HX* zTR@Bay%dmF9O!coE>QywRUSP;&otMBL49F7{*#^cLT04yI?)i*{ttAwT|3HC>^jlQ z_dW4)ym9JT+0&=b0k^OwU*6bpCd*ub5QA5jMGAb!j@utQMi5ntbnwCi7x>%=Fs0Lc z(UNG%KJ?=YKx7&#(l3WPJmt3}^w~OKl)*4fB@!S0v+Wf2qm;Zn+4J&F^bah`Oq}OX zt%bzI7~kJ9sspr>#-;F;?DcL2B_*vJ4Wr(hHWH<1>$Yu|6B4rb(@v1~zDh5fh&v+_ z6A8uOZzAaEe!&&7C_Yb44@F_a*kTXi^Ony}{7!P_7;$1Ld*gASiq$G6Q!|W-Y%c8> z-Y|4g@<=^@Ha;USl!;TEqQGm%0v0~>nND##`CD0jed4{PZcYI(n98ab&MA72+#;c7~KMuovZY7S`i=ee^8aw=o#lFI@%{gl%d{G)*rv`AgK$%MhQ z>)~@~-I?CMKa~~B%E)R#vLXk0I%d1R%4PrUwo zQ) zH{O4?v{W%*^d%Q|Hm~-5~)a<4V zj!jmlB&^DFica;R`nzM>s9d<9;`^6={f^UGC@#|elPB|Blur*vU?+5gOTH->26omp zGz^;S%6(zOD#*zQbf|rC?Y6Gr;kd3Yn_QM?U{md(d##S|Zqa;tV9A_fAo`7CJDwO` zcfpxqtAO!l9o{|qD5f??kDi0VqAxI8wK%&4%Z|{R8)=WhzYdkU3HeP9Mtb(WefIJt zL)Fsa4oDdj+W9+Amwns*Mq=~k71+hAuPM03f^^je8*O*$lYT(O z-6KU#gpv`41RX-o>BEXUMmK8#N}G#a%;ipfJ=EvomCUTHq{F@gGnt;5dG_kn3KV)BFE2UeGk;h# zU0HtoKICPpSEO}rW+YP_he{f^?J z4Hl7=_PBNQ?_W(fH>tPRmFPBY+C3#+OO|(DDEw@R4h`v$G?Wo^#8=7p3k!Baja=QPrl$-y1<8bN|`MQ~Kn|(b@4|u7N9^goK2M zK+;y|c%FbTRP$2LzE$MW6&4n%1P6z&S|5dH{XNyS@);V8+~k40Bb=ybyP<47bbK$$ z!YxHDXXV$b@SC`lkPt?M53~-G8~Pb4oGpWP;yWKDDb>HO44fn15ejVo@X;d2mP(DDhtrj(S<=zM(O6=~zJaNc7yJ!CXcnKZMorKGb285HP6)cB=(|@$#YVbHW%qN?8o73RRc>{&*dB=guAQkD9tVo%;~D zbPh+NftzA$M-fSkZ?0--0n`$@LgSe4c|4mutlo}*CjYMwveg|5yFNFaTB@X+OJ*Y3KXv{K(y1VYY8 z9mP}iE%rZPVR0Q|W9XXm2?+^gA524ulWzm*HelhE)1984Ug7EKY3t&$ZQw(0rm?o} z5HPr~l+?aM=H|@Moryr(429Tza`14>X~0oV@N!LwBxbmsy+D6|%1@$O6sx_GmcbuQ9^<}+LY4JzE6G6n zB9~-tZr%(Y#m>QTrN`U%03p@*=Wlu1jx&EEB3EyU!Xn$JsI1I{YTDh^C3x=KIk^T7 z#>th;@=m70SJZ{Y%M_PgiqI?X?X{nu z>AOkF5ZQQ33&X)->p9pjTS?Pw$lw?TsP1no+H&&b$r1Dgg5duBDmoz=Jlq}W{}H|pMI z^Wu}X7mPQPuR_S6OkKg*?rFw`!zJ>%oSeJ@tLv9%`G%vk(*ilJb0`A1QW#3d_5P0J zUGeQnC2kYF-T&b>DK6XB6v_tmN#pqOKCG*+|2k=mz4_^n zmghcRhfi}P@z-*l-aNcPG$iW)L=TpgE7{kqxoX!5T5Npp;5OVO(2nKrQIJ1PLT#af z;|(-kli#9~`X*K3d0pLdBAA;i$);JbzVso2QJ-&{+FmZx~;58v^ov>0G0yDyK9nWTd0+|o~y zSg~qVE%Z3j8VSHKdtgy7`+#s57;z)x89Vki3jN`k|Idv7^?ybCpcZ(9Dxq4tu| z`b{^h>+2b@fPEl{f&5mg#QA=NoIHvKOhkss$;tlCs^Hj2_JLLtiKOR%KhRzhCl}C7 z$r8Z&?*92RT(WB3M0pV_sQ>*PR%r5q@%8vy3JwQ#S2@8taDtO~Jt*@Za`!KX0@~u! zfyeUEMT4cRvqayayr1&?vPg-qV445%{cauw?XRzYX^|C2GcIiFJH}zMHYP+9mD`bT7 z0pU#>d%XaXgo3gTmObzGlPgxQUhQZOk?mARc_iR*?p~q>yMs~!zrL9$hq}6R?B^RI z-4YZEcOhwVZ?Y5(9$X!8XESUDg36)Rw<`U-bcqf2mx|x`3Unuww5oYhc@2Y}> zEh+h1e zW*x{t5vM|P*RBHF=gTafcrijE*1#R1kke3#-UDkOl}r1K*jSXh(Eu9O;^lY;?Tw7^ zh|gYAI<=L@KVRFn`|Ju9OI&r|`m?tD6CN=v_Q|cee$N_B~#Uk1QH zz(Y4k-M$hp=R#4Dd~KXS9O~nD^m^X z>9hEq_A)88&TDyiA_2dJWn?)1aj5evXPNvb2cH3LXSb%KK%2AKUVvE!F_#c^gt=&kG&jOTn4@H42{F_2*BTvwv{#5?`F8Md_`v zF-Q&e_Vz^Barktfhq3`;2db+@^JPb!Gk*6JaPZI*FR?XD48&mp^65rZebw0b0*bNM zADZ%@1!dqW(T%~xZ&bxI|61<5S|)`B-CP?S!b7zVHIsNrUrXKT;D_Nyi4g?jX&+?c zygIUo(Thg@{%!f32KRyUcqKj(a`~Nt&d$!8NRIpv4At;D%6m$ClaR17qeA8tHvY`& zy#5Uv?woK`)jnk(5*534#N$!GO!n*<3lHVCt;(xXSlDP=&NNsXP|TN73WOd6-kHlf z=Nz}XXmZ+xr;AnH?4E+3mE|_;N@OJt6`BlC+cKmo^-y)u8Itm=OqMIP;hM&KD>4y4&&ZLcRdcb%~Gd%>_2w2tf zUAx{)EjN20l<{?i(1^k12YP=q;@SA~G<>``YBJ+5UA>k&!ELvTr(=r?jpPY^AEnCq zKlY4go|;I>z4CqC`fA^@<;+SJCk>i^1uC3W8KaE8@3(bLUod2;ST7pFpeq^=j(O;P zQe^wRV1^Xlb(PJ&UI{5Fk;DZ9Gc%D)J^~M_AZWo4M5e2#Z**#^4xH)I<;yf+QPf@O z)39VAIwrJ1W3=v>Jf^D~@gW}i>2g>}H|*4X|84*=&K)fU{#6#R#@e9n^1p*3OG~88 z(ZMgWL>!{zYQN>KR}bO?K2P*(z$zoib!=>QcJ?T?CusyH)=P5>k0;_~7mWo~#P{fpe>agSELM=alwKYv=Ci}R=Dl%3ukQ}?Th}X; zqE~v~^yoV35^iV5`~1Z_3TxX^-A%_Yk;6me+YZ_O3G^M?$+e;kvu5w`+SuWAbai#{ zsRoi}fITRUr2}n>84v)q4CYAK2ic!}eams3UXVuj-!|9@GOQiP9|J{>;CG^(dR2nW zrlZm%%br*TDgXkv?7FJ|!A#S}R9J1YPOT4OAeh-f2~iB3l>;i07>bLI);f7|E37KW zZyR4)VErL2Q4JJIOb<}haEMLM8XB0OFNDR##eI6A{|12|yyac!I>?VmLHXRA&{kLE z@E#4!;F=sGm}w1h{J}(tnXKwJeyLU$A|VgmGM13cOc4mWXJPX|lI24lXD8?mbbzzq zraU0BwaDTWc>OYo>D!Fzh*vu~+!+Uukq&JW+g-Ed)VFsqL_uhl!+5KPRz@13DOmK* zojVEoAz}h389TZB$v@v-w^wNm-+J+Z<>Tk_lNG+*%}gqLTdcAyMd=#8B%Hewzp?zr z*6x|VpN9Nb{hUe6I;I|HAZqvb4(qv&Bk=bqL4XgBL48BRwQy-T>+9>6ekqyA%7mHZ zuF+fpT)x{$`)9DSwG|YVjYo=4=6ZML?!N;+cJ%vhLfmKs>sr4(J(E4jC26$=YAu&X znFRt$+KtK5B6Ug%E^Qmi%gaMi;BriJuRscEb+()DjW^Ol2t%%zh7Gb0i575@pOUn; zI{CHKICC$)R#+P_(zP>pFRrk^y(AwhD*NfvrwPME!;oq6`O{Icg;(L!R`k5k)YMdz zsC0)9IhVP&pG^L68&LP?pRZ-SqfqlL{Q?jL!mhAGI7NJLa8Ro%XhF-wR?8=* z*gVYGx5NVtXWuW%r{!DZ0|$eFvI7XT(Ok3j;I0_TMNA`go(#di=2O5rg)?y(d+tG%SL+ zB~4n!r<6?h{hghc5VO~GbNJD&XJ8PDri#~?C2i{jSG*LB0>X&r`U|^fb|Gy9snY?g z8I(?W-_ohCPtUM|Yaz`L7+b$tYkbl~_L18b?aOvQht7ZID&y}td5ppz&tvQ^ z(P(b8N&iqP57)^N)Bb-FjGVS9hxNYtrwP9)kBKR>W`59ovI%sO{NYEj3R@2nP3OyrXpc*kTViE&z z&_Tlo`G^3(bY8PIHaeQn33sd>l8FL2NmdI~j*ece=mjjYh4)F46A)^oU=BO_N{g#0 zMxBl5U^uLIc6ou=inxOlz25?q#wOpsx6eA^c+=vzn1ac-CvUcoeR}Aiz1fj(c}xfyiLZV7eG7#SY~0qg+Xp<2}->p&J=5f79H7>r?r3&Mv2 z9jL{RM1lCz5&M&E%^G?%i0g{(w1A;Ifp%-5V8tnS4{MD*`nk$z;o$b3RdNy*VQx^Ld4^(V+khu+ED9h*`j@#(g~cz@oSfemaf z=cgd25Sed&ac=lX+#X%s5MV}#w-?}4vrujb4^Gd{3d_l@f#)i;xH#up==6~Z4JOf# zfmoUd8uUQt0DgOhmr>x{DuF$=yQi$Dr^j2u``I2rE!Wt1jhrktNwd1?lENtQ?u)PN zyjfO@(D_tatQVQfik8`aTPTuR5PO=s5>NQa<1fyC4Ri=VHq)*vt+e{t_PegEnP zNI$C}mx20UiX9srJ^S?O)2kG$?+h?N-jYzXJZZNs4T}mtPSi&Y2Zx+mr4KHTxI{&T zg`>m4U#I#jFHL@V!MCYGrIPDHLDYBaNR9V6CD{z@{z{v0JJF0LmsvwzrZ`1QTLM~@0ymHVW7Gd?IR zl*`IqFz1$)mL65NmStz>6c`ozwIW!FQDm;M{j>ehYxTQkb+6RepTDlB{h?p=Wq@02 zCQo-`$N=XW5@C$ymZqhM2S8puc=&E8T1>Jk#AQSK6Z^m&5uv+u#Y8r%z39t{j-N%! z;ZH4d`D9(kJiS>m=1sFWs)5>{LxzR`&f6Xs80d}|4h1_;7R3qq)%<2=?)B?eVr}KV z!P}F6OLWSi{lR9guRCfR8uXlp1t{o!YejToukvpa6|H&mW@y`ktB|42T^%?0>ZjCm zP<3oOz-8QO6HnFK(J?9F^`6C{NtpwmTo{%!C#Og?XMWGb{UGu}*s%N9&%H52C@!1L z9`I4OpdLtV-(E{VNoAlvRgL8j4#$W%8WmDirA}bpix)2t6=SE^I5=p*#Kg+R0jB_U zvOI~U>)!nqE>_hyWG~eI9 z>}TFSh~2qS|7_JoP9_G3k{eaY29mHSrGUIjpFZvRonNI5N#xx_+g)$~xXF7b(MyyC z8Vbn;c0Rsn7?w3}->yQGg@cp|=!Dqw3@1(*?02$ErdZ3QA~g%sLSmw{?oG-*256 z?jVkQ?D`!{JJyJ&f4FBCdP4uNa0X{-Qr`f#=t#hqfA7wL@wbV^`tu!@3~IC!$l(%y z0)ZqNid)HJ1ODYKq*7W6^xy)7|D&JoA0|>m(A@(!%<*n)L6hJH2K>-^5cBXTWi;9ZMLu~cX(9m1x{seO26H77< z(~TH&KfIeT;7`N2a%C7`IjWS$;5tAPz!(O^R)J8QRTr^19bh6siYI~x1nwUWkKw;U zzOF{z`M_P%`eu>TROFu;(^S_1Ux${JDd9aB=N*xc7EtFW)u(OZ&$o3zmiQZMjD$!l z=l<+KBXAmgKS?y6Un(RZg69Wqm_mY1Qc}|3x*|Kepz=%e5BTZS-<$Ur#HVDx7`nqW zA2`GKbNFKQEpJZ!*rbX2%HofcE6 z*RCCH&e(mZ(82hD3;66*Tj=-9IJFvRY-6iRHPoiN0pNotTH);eVPbJ*aSAW+B( ztZyrJx%lv*6oR@+t)=LW@9rO#C1M7_)PSyl;UQ1Y43qr!G<0ogkkH&fh#UnTKlHM) zvq?IcTh4(kIwnRscrgG#ZkJOZGEE@s8KC8qX|NVm4YJG5#ugG1LXqf+p`jsx+r*KE z#nJ;eLQ1;3MNexs!<0!SLce))G9Q0lHQqqh2`9;GCxsLm3h1vT#WV12EmK~0nRmI& znhioBEbIMaIQVJB3PM<_6Y}o5B$ZGJZM3u+Vmqpz+&|SPBawYAJI@1N`X4!DHQ@=wBsE{R zZe8xSTjJk&`S@6@t*sGzUb$@9-Bn{AKN_BaUJ&#SAR`Sg*`nv$;}fhz2?3eWRc(Rz zq7%l%>7n}b0N@P4k?xoYC@n3ud38w$=Kj?}bx7^dK3+g~VOzbL4tg@F)W|KpYG}}e zVUK(-jTS^92!gQtHiE`1qmos8We(=MnK$tc_iN zZ!9<`Jv|+zbyiaMmJyFw%u)tcWVOJiVYSPQ}17y-V`YnaHs$E$x1pVi~~{!~cC z>3CD*nINSWif7qHg47ii6@{m~QR3JUz+zxtODY@uPzl(8%QOxg$pv;NL~?Lw$o=~Z zMv`eosqX(=AVN|Pm^oOF-H2%AMyeWpf}j)@mQXY^qz;Kgg&+|p+FTuqFj;#_ogaC1Ov?#FE->JtlRgd^njp>_Jrl-+Z7IvA}`a3D?PI--MrwMK(2Dnx%r1q7^ZAO0UjLGww?uMkAb)_y<8HSl&X+D)t?X$4r@lm>o3 z?j(}0j#20#c;w)>r(EEq&A*gkMbhLnusOz8s2HF6Ap7wnM0T3x%a`M6Z)-CD=Jbz2 zk6bz9YEg;;iNn5L(Gfpa;nx6PZ zr)U=VxbI^#-hunK!qHN>{OXA>%K*WU49~1L___k>WpdZ7*uh! z!J~lQ_#t^*C^W=Eq7LQJGdlIXXo+z9K%j4t@vwlD4FxrR^U(gfo?pLGG7YmXUSy^| z=DjwP2XKPaeijJX!qU>#K5Ndr17b;tIOF@%uV-+}P%vmI1fth*NmyK(%=K45eTzXs zBj?)4J^^t0BFIVY5^NfxysAR`uVGHplkVARiLs5!{JQA-W`O%H$CkTRszy2=2e@z7ZoOt; znhf>n*w0lVVInpMmgRg|y~3PsgPMs;>v`~UWB`{z8QTdcCpTFH!wc1<4lvHjpC8yX zdYuB<*HYULCYY>XWIT&enUgLq+1m;I8tHzX-Sdd+d-3DP@2|b{{?)<&4p)b^?zw(> z@(sWjSPs)|r`teG>0qHiv64W%;=c6p;qNamelBqpAbCTLgouh+6_Vz|DjfwV%|KD6 zM%v74|A~`A9g;65(w~);l@ww(3E~H^3JL%HwRYs53+muS;vKb}o||-u*$!0ns-cC? z-um(Jy%0~>5v>RFY~fAC3nN*7^aVtef+4_NxF*kh{I>G1I6v=bvm{ObHA}*+c3B^# zAH6Bh>wkq>6D2MhvOC3_$7Y(d`kmIq9j`n!jf2WISvNoGk}xhRHmGf1|1W3EK@hM4 zO}`5a67eX~i6MJurAY!LBRFsit{s^@AZCf*xC5vn0~%f(dSUh$f_N-sDB`-3CwOlt z{<90c{7~`9!)el(u%ZPi)Pz1R<=C=;q@q#QV386xVq1c1Ju7fv)xzXD;PG%oee5t` zKva1MQc_MIHq$R#_8k)nuO@sDDu7f&JWgoRJF&%Tqj|=(rK5S}nP5(+RU(bxHSmEE zU5RMhBy33$EzWOZAPlO!UcAPi&Z@ZNWNuQ!($dn18wjBd@gG*gpJ6;j*K)sshG~aN zRq8t?if(~4Mhr-YEh6q@*N*@|r=ypY1}~{0yB+RYIkOBhBT1Y{+10Z6`1v7XvYeDy zMDIHXif-3jzIHimhf%zI!@W?QP2D>!q73iZ<*Zf%r!i$=^m9fPpbf#y*Q)|aC8fhe z^W3m$6PKpF>m7i;41DyFDVQ626dTdu@PIk?ab`A8KS9?1!y*e;%J|IVsR4@__Zsbbs!8NOq@J)C!vaiWDwxf zr%xni!osJx4>VpID$HJGHBnJ*65@yEv*Mpw4=8kLD!#(d+QsyeB(~vBe1riQTy-PmF4AW$ev06~<^3aMMdzXW8!OvUW@i*W!NJ z`1xb8*!AtiepS_*5V>vZ#LwIl9UXy*(a~FnmOh%N^63Bm>bK)wZNIP5;p&cazti47 z-ICuleC1r=q?T)Sbv1?Ai8>5lMk8V@LzAVM4p<)Te>u;_gX7e|L*?+ow|S6>fyIp@ zYw0ibujJw8*4^UB_A7p0er&qoU#qte?t&HuxCc^72JGX|dW}z$nPjFEHd>>2)7|lp zo60LV^E9rkx@R}vo_QkjQ85}&gjF0|Dq|YI2fFdc+rv+oZxku{C>_mW@6+^5rLNJO zSTaYO?S=jHkt{K&_)Ev0d-ZB3Bbt17^PUxPeqSDQ#fP3?8rogG(q3bx<>!b;p=sWk zIhp1yuCA+Ai-`JZU9BR46Te6)h!zD^o?q236wyJ) ziOb(*q`PJ;kdi4G5M7GZHFe8y!k1xk01AUh2vBO+pBwGr0`b(%P` zX$dFFYxJqaM^LVLu%=vC^fky-8QtH3daP&NB)o_-JcuOUX5M zy1VIRS7%OhIY|A!^|mg@tj@>#XPyZ3IlnvZVv3X0+RccZzF8%jQ6dsrz1q<`I=J;| zOoXxEM$5SYZYLQk@9vYX_eYL(|FCB?Lv_^JxCZ0&;#Wf1eD3P*^115t(?!dGw6Gj;ajD?>|fVZSlEQj=QD^(%kN6)-7O~P^h2kX;_(W9ev zbtN8W`T=rrz{k>p~c?Z~|PQ;P_~XYc|lo`>$si%tJizkh1*Ta>Y&{4W0t zvxXOJX@+;xR9yRlHyu+v?2grwafSgOeI|sBR(g*kZp_a_Tg!{%is#|=yZ-UDzr4P8 zsQP^~$FY-*Ha68*$o-b6TRF+Tw{>3|TWuuDZ*H4eoz(WL>3Ei}(^Nj5k=&$T+MaMu zXtgR1UWjBAG-l_#dF6rek=?3dJ-!}KK23%%letn_7?)-_*BRF_l|N7#o2n%am_=i>y(*uMv3XoI;Gp4Ints-(DM!<;9 z`s&Bua}fzSy7jN{4j=a>{WxINQ4_PLW}#2)RYSIe2i}KI@4fTO7rIR;>f0nNB9O%TP1z(pWLqU{WbXbV^Tcj`^V^mI`zs>j{-Vrj{w zofq|Lh^%z%Us=gyqi-z!(7#MG{QSm?qN~}Bn-iQ_ZM3zQMaOtoZJW3~)X6ZF^JIdpfl;d+1M;Azx|TlJ>7Vj>sz~>TpF;ra+16I&hV>- zxL#{aDC~`kQWK(26K}~%Q<=z$e)wvd&qX$YHswq0P@u`T19m3bht2E+T%j5rROHbw4*Q><|-CW*imcarNTIP4pv>IvhUU;8ncxwq+WW#&mq~c$&C7CGPlYrlvHj!%J+4S>@74XG!GEgnOlE;Ae|IM>tzV4rZ>pa zkRc*vul|tX%DGj9okA{`Lfnbug(%{eY&}vK!6^9SDLw&IEC0Ulx`gCwzok!|KE5RC zD|w>pAQpD6``e6qGyaX#zP!6aFRD5bYt=hvvFR)o0?864IU^Jz44adz93D!}!8~4y z@CdSm5q@!Cc zBgU)r-@NiGQ`Wwsosw|Dod5l(*jMK9L*a?2U&X&IVBTCx zNty9q=Qi5HN%Z+MleEmlv^(((_YIcjLPfZoW%<^<=N1iLh7rd8*|R%Z9$&T4Pr_>q zRq?0b7qD}3GC(MzLJ|@S-S(qc&?3X-{l^nIrqb>>tTCwMxe@B$bVdI7m*XeQ8>Tyt z*1t_0@%wV`g!3sJ1cREer@Cplb(~@ndY83lH8)T0HGuJ3m?<(bLC_~4+jA^hhQkvlVFs5lKW8PRqiA4||hHi*S;h zuJ6DfV|?z_l(V>@*I^zyG{4dRqgOiSXPSyaVhRi|)P-?uXE`UwDTgI5U>bDJ2Og`K8KE2>B7O~e*$3jmT z@ROdpuf9HVb;(VkzrK18?%BPHVcFL#?eELU?4x`nBYGt%%j}%To*1QWrGUG4;}ix= z)n~gP>_&uYWHK*+13mllg-2Rinzs(=FyZan*W$zjih_}eNmJ)SWAz}*brV4@L|k@n zS42m`AtSEt*@#$5#?oMK z3KfKz8RZ+jNDItx7+^Yujg9SA!8W`y1@!vOQ?^?Ob1Syh? zhwSxydbDR0fPkFVgiWodgaaJ7y5V;oBvB=34b?NnziN z^i!+$+Mmao?T3?!#y@yZ{LOUmIC4C(P$r!19J#RO9g&P(>)z6?VrG7hE=JC^AVyth zEyII|KAAepvV%8{ii6*|?R5OnC^{+fF!%2H1(Rk?@5#U7~p7ICJpgNL6Wqf>n zNsRLRjT`HU))&9YsHQQxWZBsMcHUzT?e?kW%`Ng-2&gW+=Bl5Kz-uxs@BKpe8K*lz zeqkfBJE|{o_Zzk`>&(8aCoeKf(l?eyPD&~S@*$Zc9rR^lW`3{lw)=)!Et{JRV8Z1f zcNQCVbEa78-!^gRT6FUS-5JALL7Zq7Froc8WY6lQbNCPOpy`>s=Ns4nTZR2fdaqH) zYV%?0Az+9RZC=XrrvbpkW@|d!l(6u^D{mGXq}<;Dz+!xeOn8!mn25yeRmknJw*$L4Sh?Y3|sic}# zLQgR~1pRrsyKib8pqZ|2HAG7rSJ$Qk8r2F|F~;sMnuZlDn8>U+G^W`ojMpM|K%JmL z#rpp~hAsa0RvQS9;A=MwIo7R9b)~^i;d%YIM!h8m9Zdn$N&`bdrX)@~MNR-fZ#-HP z%IL>>h5V|&afV^HpsU3pAz+8ofOy*>qDMepv&F5?M&;|;3GKmC{(j+Rr*bR}f?Sfw ziKp556Ymx)JAgHce9E}a9r|}29sEmkol71kmpYdgm;3wA{r4BMyHK~!k)ycqz%?Nn zQWRib4Ggdmh|vS`8svpESSxQN=OTsY=S!~LdME?{jD~`TMG_`rLKr5(W$e7OM=)#s z^2?ZG=2V}b4?3@j<0d+5u}z6*f@lXRpmVMW>Kt%=MxKT7;(IX~m4IofyQaD4&_ivp ztN+n!@E*vVnBPir4qn9HBtyooWNAABIFUW5e(^%9Z4t@g9z-tvn8C2{EjRHkNW3;< z_wlu_$LJ}R@_*kV{kz)QWyn(17c3xm0f=l+xqLTSEwh>XX+PuiqiB9rUZhTeZ!n6E zV?q>(yEi`gWq+qMnaVa+YZ0TlzTJg4ARwUY=g(!(mjGJiPJU*?!hDGvoLDbHZs|F^YmR8#(BtDY3x5_Z*WutDG|RC@tMV0 zW}HFr3|6?*(HAS=Ss3Qi{Bz}txblF>K^~kWLPNpj*CyEr)V|OUeH%q}QHnM<6#B1>Hb$488l@&6}O;;%HPndRH7N zIknQv%nbVw_Q0;TBqVRq|1yySAg9N{f+B;-sMyZeMF1>-k}+k;34Dh}$r7fS-u(0b z&aFfo!xn=Qeio;Rk+qAIOjUCcZiSswM>*kaGs09%m_MzCchlKl`k!PVqOA=DlHlh6 zOoVa(h?B##$Q*!6TVb;ULHQ)a1{8rMxrs=9h)U_tfjBfHutC588ab)a(wGX`YF=#M z_9x4I4LBe2af=Plg}xt*Oqb zfT&$K6s;N|jqX2xV&Qu|N1&2S?Z8x|p^%8$iMgB6k?vh&;1|=(+!zqXhzY!GT8dlt zI1A?G&SGGTqKKuA`@}&u`~4n}IbfKab$D>zQ8&-);w?rA1O+W!;MbrO5qK9j&ADV< z;E;fWMQ}7DY+nkgz5g3h?{UG1(Pm6ckTfR-H-sf544pC`oJg+Ni;$mH{spo)9{x~b z?8PrSQi6n77c3=sxx6@WEGwy+5|o$cghZi@#9|hUs<=24q*2}>GR1h}#05+S=EhvO za6x+=hN~TK=H+d}jb*ufY0qg&-;3!)n-nZAWn7V@?dLG>meV zl$2_cdRr6U$6XC4)p0>QqE`|JsetdEN1UNH2(IOex;he?Z7Ig#UK+Wk8NdT3sUXtO zUUxaIM!L?`)m7{?zVV-_gs%j-PE9q*Z-?58++7Sl4h8+E`d(V!b*N)#JJmp)RE{4H z#$iHmvK)qCy2zPpXuJidhmMc|0z6-oP$X@ZQ}B97G>9CaVt7+62JnQmuYMd(gAPtZ z0f~meFoqpSj$b1-C0b!?e+8UhZV>(RaDKbc^8QzAUmlKCAFjJzQ;9M~l2R%mnUX@G z5>g~7nhYroDnm4wH7Zo*3@N09q5+jeC1VqXB14g>M1@E=_w&{_?0v3t_SyS7UEd$| zd98P?-}(*Db3gZeKSb4d9=9j}>v}@ZiY0gn<{5e{t%KbcnX^q0j#_=d>A&FzOAsQl zu;*WY4eWzk*aWPuX=!O`df2Ca)4Dg^Ke!skZPt)wlH?eBP@v?E-8HwDW1Hc{;#v)J zF)&!K&%YM|HU&#}#*7*FD;-E&%YEiT!;)WDG<|1I{xq5vH%>LhqZ{*SKA7KeHDbU( zIEF!O(-OmYNy{@hBT>#Fjp~&vvrtewj)bONOObw9A%guHHVlo}dq~uxzW1F!_TR*1 z0b+>20`#wnvM=$|bqZ%2_*h66KcGxU5;GLL{84_Jvdd@fj##w8jfsIs-Q3w`k(BO9rh>6qB+lw3=S=+a6B{NEF-Rl+?ETyZv_tkK{gtOn5FJHi4lJ`G| zW#Vu6!Zn&pb?>_co?sQiz@hTMLi+5b?V3R>2<)bzoXU-joHoLimKKS@$B!QM2usqp zeAL0SI!{DUJh~d=z7z zV$O?$`sE5!_P6O^u#joeWJR5FhN#EsGiMC&%%lK>2~*qLzsB?##}v@?5WA9=5Y`Qp zmV(Bzc*_=Pcpjv5k$&4>R;pc%hYYo_I3Gi`pMGNqdjrw;Q0MIxwGJ*+;lkHG5zxtV z`^++z4+lf``HeaZjZu7jBt7U>35cE3?x=>5yGrVsuO#1)38K>0=|y6dnJ z%ti_h@xY|OhGUB^_+*Xm-}~YJkPGF{)4?>x--1nU`PRLA2cL%H2qfQQnK2BwYFu1g zZSxk;x0U)Ra1BX03CjIBnCHuKdBO34QUnZ(hK%M95O$Gn4%~T?9YF}I z8nv<}a;SlB%DksNjCl@(fRIB}#(O1c{Ds<&Rlm;p2yHhiU%FgT801UOn4nwJL@=nCcxK8Oq?5Kb`DX3kvp_Xl114npX6 z$7@g>hE=8yJO?C0b#Yq%7n5zaq6}Q<%zt%%-&myL%LqzIodLILEVk}tfXl&_X`tO; z&YwZntmAm#+Ad505|{#{b^}zKaqHG&Ok-G3lD@1>%Y^+xW@+{^hz5iae(US$ae+UZ z)JY2+dqj`eKl7gsbD}%k$Xyww3dF4R$3=SMhCX=8k1iU*A|m^C1DQK<FaL++66gCt`#SHoB0Kcq6MI;fl>$gIX0yU1QlRc8Vx7dU)_%d z{+U|57m>A-z!c;jTMVH%#Iqng2La84ukf#+I5uWocW)k!0SKw!1T`*bXvt_|>VZ{9 zg#{SE;hEKHu$~gY6hcM*Fi>Kg6!E6AYBfY!g-DG|TuHG3F*kN{I1__g0~e-c;4Nfe zBlu-%Z!EjT|9L6>m`6O7FJYA*aw^z(;OKhdj{SNyh#SFie~H>^86b7n=B zWOxnk-+5JI8W#pc1(X%f-bxF`7st>74Gmi`^=KEm{{ICcm5ck2QCWDwpQtSFvY;y# zCyq@Ppu^^fS*2TVW}7h9Za= zTnHzF=T{CYJ^cV_HX-TYb0FGThS*O3wB*&VzaXH}*t?vP=Uj(xD;WqBAV3JhVL>=d z@`lV5t0Swc$Gf_?RJ{4p+&rT*;18zh{TtKVdHZX3cd_%hUTvh+xV4W13x8vobBx{7 zuBp-HvU+tSf+EBQs-2K9aNP5ZO znS3C{!CD8Ekqb-{*H2Z(iSre75RP#&Y@I8NxmFA!lM)gUNxY#0Nf^vsB=+1sKYegt zbCrIsb<7RBBI#+<7XNfdxD#U~O?MRk>X29l3v7apIp4iPY}w) zlc0zs0<3d#a|^d0Gx$FV=+5=fiAA|2`H@j-io69(B{Ae~-c1hd1+h+V3L+s{;1-II z?&+Zn_GD!EhfXkn_v&fsZcuGOP>9Vu7q+SpO_S*yY&~XxzO$p^(n)ZwE*EORmr0R~ zXF%9E8Xg`F1BEk&Mn)Ao_Cb<; zVmU4bMu*+@N*s7;q7vTTe8Jl%>q1*}CnqNnJCTO{Q~UYIWq&<03gE30qQwkAYbbij zOT=3zR?3tOa;Z*)$S}0aPjr+gCtZXv5aY@D*pWm{2~5*7H?7|>$A8OGyPnOq`@d9!$(xd+y3IVH%vNm$Z!&D(y z5*}1kXro~GFHEEKmf-CTh!UJ&5JGPrh}j8Hzrh#}LbOPlVrbi3v%j<>L^Qs4cC zLB4?Sj_9HXVaBFy$HwXwy+n8dq8)B)6yYd1<(~ZEJEL4eW=?+}5GzMdv#L%;{AmeJ zF_7QOH@vV5i!X8~x=B5ULg}4zYQMt{$H^l3kW(RMzcz?x z?YnQqFcbEs8M-(BI^aWQ>^L#;F-6HG56kACTmCa@Kba$T}zV<~ntYoW1E&SKPA?g_qhf4(0 z*$YKZaBF0CK#pKQ zdffSg=p#LgTe-SX$|MI1EL?8vUC5apg79}Ho^Cf-yIF&$8#_0#GRblqUxuA~ED#+7 zKu~=0f2J`iXvj9GJWjMuZ1MT*AX^yVK*bIVNCt9wmeWibnDruDm!E$)cWK)7ksrIh zhin>k_FsqPsBSzlx9BMPYSFVOb6_@$noH7en(Mm8aj&Gmb@6~8fux~A|@8`FK8Iy-@2a%pb{k(DnLe@1e^@{P2y1dfHUf~$62~^n2(DwGs`%7#?T+zk>5Dkzc3r-v=a8Pgnw)G>dFNMq~ zn9&iWj6H+SKY(%u5QV@5DoGt+++(DtFatY`bnOEO52$SC-PTc25kk3QDazPRRD^^G z0f1v6m8*K)Y0jLIj6VYX6M3HzA>b<#uK-YnH}g+fXc;EI)(DEq&5>)`6p$UDVs2qq z3%#d2ic~TIGJorhW)DvY=oiVTq>{fJi4?)@ zPyXQxQuGmIi=@Z%%!(!;{v$3|X;vKjkh#bgdnMaJoy^1&hF?~wMh_PKgAst){ z%$JaF(#kS$z2Rp-y{uZGsHwT3rWMjgkhg<|5L6JXup_Zk^6iDDwUn8`PoU?C@B-YU zxnyo1ju2{wLhT1|s*{%&5(0L+z4-`F9BSx1K^G5#ZWa3B%4tTDCEA7G!TRSPgR&E1ggTRs}*IGfPcbO zU4O|E4&1`G&Uuty4^a(+*JiPikrBQ`gi;v1X@aLV-*bJ4ojPe^4str!V&Di}>gl<# zqdNTzvc|_{Wh*pSArwr!y7JN zz8Dl6*gc?W&0K5&1O@+YqjXB>d}%(RDS!*~!Ph_->V%`3?5;^_0<+=de;xQ%FnWS2 z`!E(6SXO8Q!1LSLjSs2*wFh>;ak)!tICkJU!w);Vy6PboVJao=D;%ej!Tf%k8czla zI%HNwfjJyADEq}0{TRFOX>0?ZwEhB^dKnY&tdJNpzBoBqkUkJ_NZmp3M1KbdX`KC1 z8Gn^g94C7)7Vt(xp{L_tpd>s)3{dtaj2}p1V|Ii0V?1roxsoBXMWaSky}|lnTk>e z5K=ee4N$8c(s;mqmBiLwMby?xZ@};hR|ZgG;$wmAh0J{~g3C4y1@_CEaK4ZkCW|z5 zPeJkP7|J#A*f1arnFyg;@8o}qU?`f~A#Z@zY9fKh*ip7%IFsS#SQ;@WmHqCLFC7}s zleR1Ar^$fH6)r*Ms37*-rG|#1q2dTYHiAw6(Zh#}FMP#ttX}Tw%<0r6>$KC(*5I2- z#ZG=3Y{|}uk!Q%rBmh4pgYB2;)>QsG+r&Z=DeF^Uz#;d7RqQ)^L1! zKHne@TmAm$2#_i`872g8dTWd6K~GJ8?5`(&Bm)Wc5qD`XPLy%;6axq z51;gn^Vq|24n+kJ1c5nRD4~bVojlFAz(Duu*r_cN-R47!B#RBbhraUY>(5Af`zHQ8O{JAn0nM#%-M?SYTlw=kr_zVp+4Ge-KF{VDr|p|4 z)!4?lpr2!Z7wfpvnvkLiRx-XkOxW88YrIiy!~!ZHiUoY&U#G0)V?(t*FzEY@+bzov z=(lkHZYASUvMMt>aw3y8C1uK@-pC{A@&j{KO9t;goy_nV7RP(!Mr_?@DooJdWa5j9LcuB(-&r9LB9I6VvlPQc74eJ@-xc*?)jIM17k%Cc! zD(kjc*WY}$e=zIz{HfW+BmFmLd8ked)uBA+=@-m4CSO#S#^>HswZ`>FTRLmcIq1Gy z#4H(95i`Mn;nBv`r<6?Wp*N4X{hX$oJcu=%C>k@c-7mmgC#ytp@wWRHsjBcXJB`0_ zpwq|kZOSbBg?VHB6*`N~z0Lhx@_p!l>hVM+)6(lUc2}0f1BJt{?G$qYZH8fp{DAs5 z3}dks_AgFfOs6EXEh6QIqK9Mst4S$V+S`uz*)>;zh%`j|i1xPlG-QiL;6L1q@z<OM#Tu6iR4-k>Ny1=wI#xb<~LuOnvP&Gvn%k)dc|PUt4(aWw@YU4-c&pBDAqWu z=;d*V>AOOBPHYW6jWj3~+(#6cwg5ByO>zK0*FF>5c*23>g1*xFE6TS{URUJQU4Gxo zVdE5KWrdgB?RBW#FL0<*fNiZU>KAO>7`f=%bd+7l)E??tLwF%@k4gs$;+KWo)-0U8EHu>4 zMML+pQHPrFB1lrw_8D-`ezANiitc{UxLOPra})6)oY{E_O2kdC(ym-7>kyY%7Mfe{ z?Z#hfK~R9eMO1}Qui*fU#1NG>14JhPeWHeh;d9G09g{DAB^&KIG%wXIto-w{eLa;8 z)vKls@t)JDLL%GKC>(KK2q#)mxrz?)x3lavRolApUx-~63b{|X zV0tb$cqER+A5-2g2MQ_<;U^3#=hcAkVeBJ>ImU`kwcDz6>zl&D9}w?6n^%2zZ8crq z{L#lKrmv%NMUyl90(vF*k(ups3oLpYvaq+a7Rn3dwR4WNG^Vasds`EP!QUCYodaE& zkO-ngY9xUnU6t-|x;)@6>(a~}I)(X`YfYBb#a#LF7T4BuJQ|7>XE^%&fL3#(Q-=wW}Sj5LH`1a9wK zOsR-M41H-@L7u%^;OE>!;~u2&N{~diSk{Ht1~CY+?NOO&LP&5NzC1V(!4H}Jccz4J z^YP=yoM0H}B2z+$$Ad(N(M6ip4aao^m8kM^0_a$b@Q}LxF)40L3<5mhwY22nDyfeJ zgCgD$5DX@iW{L=jMq@7;tdD3GbY;LiPx^&U_AIG5NqZO8un~vj@ z!WxwAOnMvB+D1+S$!#-z5n6VC|NiPt%coBPhzB_sHc1F3^H9kK*H9A|+`n1OIq_%F zYkucW;inJm->>iLdRu=|ubo?rMbLk83o=#;_Ln`dgeh5tBiYqz^7M_4Q=sHZSUCPJ zR|eFgY```Pt-#o(hW}(x)<*rPPdWd$@~3rc!v)xS>;u=EMqqc^>>?&JGr==Nc+h2c zedc`2$%%*ULyGXIZF9!oU7t^^7T^ig9EN1Pu%y?A_>=nH5L(0#0gzY2A{< zr{)TXe-gxXAtqP3K6JH0<+%P%ig%p4OoT>Jn?^rJ#Bmni?N9ZMe4< zr-!>pv0=G)U~m-1C9O=g9E!d|JW#H~QD%I3dSJN+rpKJsgDS^mQr2gs_jSAtgMSr} zQF^6M)_?oH+pg#4OwYg5ik8?z4xd=!-|{%66G9G;G>M3gQu?q@=8#IYU-Olk+A@Cg z<#nlZ9Xn@p=*w_RXd--Bgqe9NMD0mgLP`45``9!GRn$MaJikAulUF=ObQ8$H=4o`( z{1cVTPuAmiMWpd&Ql6I0=nAh?X%?e3Ae1YDdv0H2A8lX06=BMooMJaOe!eTQAJ5|?j6Lt~U%#0oc}v&H2zqF>KCNxdW`dK3#OLPh&fZ(ed*OF@J_{nk6VSBoKJ&=; z>`C2MUB0UGtQ)MNxC`oDt^Bs-dMXx`QMGsAJNedY8x3^w-}z*n^){b8!(|r7d6s37oszZL zGF|?>@PP^bJ{LPauCUmlQ*Sz~T3)98y=qj(eyku&F)=vam&6}TiFVGpZ2a77CvSeq zljvIhz_lOEZ$?@;_i*nnziVHu(=Y zY<8rL97L)+MqET!{(+gu$YunckFNNaeq^FjempN1kln@?J2HKHsP`yVb%#4YV8-Nb z71pH$r9}f!SJMmfJU6IP^+m~{E!Rx#?WM3?BTaltBD$PR>26Yl)qCOb+KLUiap1M_bzDrX> zre@h9nb_LMXQ_E>2MuE!sxQWOuLZJ_*A*FhUh;Aa3>@FtI#>18rpZg|Qnzo8pqIIN z8Wv@GTHp=i%+7E2`Soku_~y5(ob5KPd>k2(JS6#_7LDFAev$kT#Q_cFbff2;axeVq z5?%JPv+=){4Go65WVcApB}3zbcjb@&?CUJM;a;MWu3^e^Fq}pX>dJzGa#E&PZQb$QYe>L(8;Dd12k^BC^64ewz9~Dt zefN(QQT?V6{W#>o(`$h@(uD4i2%tRY46n`V1UJ<}vHUtI{~W#<%W`9nc_0Tl z?@_*W-w7=C*ClZRHuj-|`}VOfExc6bXmL`Gztt>Y`5@O53>h9?>7(<0>!Ygp>2ey*X~oX7^`FLWoX zPv&!F$X=}xlI`quQK+B&Q>tYval%R`q`lm@b>jVRSkM4$lyhWvy$)5`l*+o+lJa2V z0vGySp^q`r7ntYgR5&5HM@$)+MW&*N;WM(cPr(1D226akunlSgQbwW!>M;znLehn) z&Yf3O1#kG#WLvjMk-)YaNMSkdBvk+2!F#kuzy6Z?Q~TGcU0V32)!MQZyp4!5iFQC8 z1te+>0>%9Z6-C9S5Fo?X{;zhPKijWV41d?9p92?ZTjP_V9I$&dS(RCc&V8Vg5!3vzWz`}zU6X`fL`j)}(4EF%R zqeSib*jPbP(V3YgalfwqNd57#QU((X%39R8)}L-QS+Rm#r+T0b`}$0YBm>E3Mek0@ z2XoX0+9xVUgI2|-B{>#QDQxgFdp@?bta~#JuSzKQhIAxD9;BeZ(fAR67#32PAa;N& zAiz6}dh#EGP3KLJJ+h-{PR!Aryk-a81qO zVOFLM@g$>*f*eU?00G&co<|-&$nsPG$O8-rk%yCYKB{-r(vSLKEpTdN$ngtQUeV9o z>}Scqvvg1}{6~8WaQrxkKvW&8aRm7v6}&BI76P2+1e}p5GlHtvWLFb7inxj`YTu+s z17;gQv^f;5jybanvfP)8t5^!-{uWRi5R!!B0sj14tKi6*AlmVKO%*ZKwQC%}LVUiu$n5r5)zA>s>hn@~bLVQ~Mxw1Rm#vS_o*`Vsd zy|1c!BVNbpWQIib5f~S4^Si)cB#x72v0|hh6fG5}gR1iK zwq)dh7xxHJ3;W*)P3SVp|6JxMikeNR^PWgbnu!7&HE4l+;8w-nY zTH|vML2G;OK-V~sB2mnZ2Y9{!1x?!%N%J8&A@KpMJZLm@d|?FV@W?UUjKvw_MPPDFuS~fdf+u7yudOU|gNwbN`ac{n8p!2Lml? zV1o9C95ASAcgY3WmU@eW?l=~|LUbg5_|^2=G$6;|1*@PCW`tCE`Ga3jf!D>w#rDMI z14!K-!sF^NUq(Qi26OjHQ0WRlUG<(RaVB*S1}|zL^5s(!Z4U~r|F-V z&SY%Kr*+#i`2UIg$1S;YxcHO%8Z$F0PQvhRs)7PPY7CD-kts*Uy~JP5=l+-0)GXA# zViz8wh85i7qrC5bamUgi!+C1)12xqnDrteTgie}bPM5mG7x$b(ArgI?wLR}-EGT-cAM^6f^cBHcdT5+w-!#a260F^4R#`VTR0>BB#s_ zH-c-c0y_B2*%NT)3^}c*S?4_vlzxgf0_p15p~aX2l#=;mWEYiox=U$$%EE|xI?`5Y z)R|_X#<#KYM*EShPo1x?hQd(L<2_f;I6Hxe`-2 zu%JFFWU7zK4jJ`=H=PgH$PI67+t(twrXB0(i4&Yepz%j}H6BcjW0FzBb-zp35?uge z{z7ApiLZZ1zSApZjsyi6(+ zsK%_NmJ8P_e(H4xQWP4nVfZD85RdB7x;OFdoBt|!+vQM$m9EVZzq@NE0@VX2RsOS6 z&z67G*Ru*{djg&;214Negm~Kg6C%=WbDT#pQ^{M!$2~Q zT9n~Q@udmo@~d<9?_t|3n4&KOIi=wnmx2E_MniLmDEer@7=W`n9>K?-Gk=_gMfHKc z=;iaKUBZwHE+HrieXXph`i$b60oovLRb6j;BJluKt-B#0C!P`Gi*aZ|wU!Qa>Tq`M zy{N-y){GJqMo3amd~cK)=io_Oa9~58!ftSjHeMiO;*rF`ngy{)2)v;&S_PgTKYZW- zTP0`@LWiy%{(CejI=ItdI!v82VciwxKgAl=a`FYZUD$^(YG*@^;rU;6D6@j0*0sB< z0p(}#Dk&mpA4vxz(hjI1T-ZEqPegXXlxghr>50NWd@L8EOXcFxerRrG15Q0v8L^kq zve{K}i5LB4(r#QseH-E|awbPla!bSDb^>i(!g_hpuMwP)F>=yFE0!Rs; z1pp*HAGllN&CGw=!QvAhvUvqVQtJe90Ykjv>1AnN_ri%teONB+7;x>g!IZRrWbEBO7WwH4?<%+b6APU2!$Z zZ|3OeWgXIwEpO|&i^S`gsd~y)_$|}-(K8$0ydu-^PPic71mmS)OStEpx2*|KznQ;Y zSZLR|H;0DrNWIv%acBMdXIH#*ocwCLJYyIa}a!y~EI{?_?>v*y_}YSbuD{h)*$ z{$l2Hs_WVOS+hoMxF!bt4G{aW@*R4{#$zQWO}b{$b0NRx%Cyj4R=<4?$gG(w2KNj% zm*x8>$X306?T?w1uu?|k$l=2UAtAyJkv%KC`nwk|bZtA^*4a5nQ&aO4rsozbtGET~ z>h_%#-ly>P9fx0l(Pc6INuCmS;;VK&(CSvpgr3AnB@7ACuDXO)o67^y&sui=u!Yq{ zmEzC|&#s}Nijl!>HuiHHz>*D+4>!Unjjv8yKOIesU%7LSO#7_&Rp73gHjZzhXJb~e z&-a@u{8UcTQ$NlkGF@?@GW&RcE6$^f(_VVgV}?%ut#;xtQuFuU&CfX%t<&0j-N8Q{ z>2c;8Gv?BTZPTTr1@QA7R&T)r0h!@a*1@k^pjRSM(a5gYhKcu5Qd7xO9i#-D$>bjg z+_s|c^XJ{KtE)#MHu(G7AHmnRoClK0&(9C<3Z}QW7c;O3WRPo{tL9f$S1(PiT#{H0 zCch}4dOfJA3X6)8v=2}9>>UI-rK$k;`TaC@?M;d&km+D|A?qPfbl;==VRnHuX5fxt zEy2s~n8}sUC6QL?MIeHezkMrrZAM40JCl#aO~N-aJ;WJ;m!>Sv55yrWOAI^X(W#@& z#Lt`Hg+q^bHZ+vl0YIHX5gl9r!+v_+l^A#-`n=?_xqMRR=FOW;Q!53zSa4-T(QiK9 zXG`}fVIkuubeA=lt)*pU@n%;qrzPCIcW+60bz)A=B(SQN!hPk`sZ$JtNrs3BZG|G% z31@DYqwO=ypSdCE@@1K@$VmDu4$(q{y-Cif*-_(DDrum;wbaK)=jN?jSFWv6jBLWg zwRLnv_r}UNNQjH;Iyx$u%Zq|;!}>MZ6eSIRz}>XX>n92!`i8W#HP5Tv-~aM9$4(A^ z{|8%@#ix$uAXi#0DD8NTu=vD&ben3v~M=xi(_0@jDRoxjWe z{Sl9(7>G#V?Q35%jM@VUY_ORGU$`K!SdfIy*#2y>k_z1+raT@IAx7@wvH^>+0%~)6!zI zd=4Gbz$`J{yg3NNYV-r!)^rt>)noEQJ3+9nu-zh^aQDMB8|mmDSc_E5_59T@#Jqg> zj)IEjj~|zN4d2xq%|Q5zRJkB*keJnof=9kBy^5n4OGJF)#DSJRJSi+$;_uuM2T^xT z);09@Si5#D@|2A1R>f$4@3HK0pR2CU6Yzv1;K|{*xG7+98P2w2^UQ{az0J+dFQ%sp z5FyOXtv5^shJ{b<=VBwoa)6%fIATr|bCxESlQ2&?<{2@b1NEB(syCRL`o4R&Nljh- z(Qb9P$8b`~7n2C4D|sD`H!O+UMSkvJ<5n!3^}V&CR^PtI7o}85Br;DD zY16OmTk)GSja>uykMLb-jk{N@jP5$<+Zd8A>EFF$VRhHS)Znnap^dGn)ong*A?{P0 zhfVI@y<;oF!(;hBFW|PaG3Ggw@hKG_vg6K0OE+=(f%`xKd zPY2g4tt%x{%6SX-x#hz@RCgN&`aV0d{XSdxhkaXU_er}e9sEV6qOz3o_QRGf2VWm{ z2^O#Jwv4%a%~U~4#Ma%TY^%YxO`UJP4X-)Rkvol7)djGQy4j2i51R$5?qqpLBe`A0 zOe0iu(|>*}h$qoXZfAMOX88aA@c%ss-m3AJ!UaB>Hdl0+ihbZ`q`F!0jD5P2LCo>g zy?ghh*M(wdUy@y>eL_LUeafho{{H>@ckbLN`TY4F;~BG4&a);*jvlRx)QMT1X^?Q* zSX-cQE1oFcILqj}m4bqTTc;q@+(lJ&&;0y+x&682?2?jm_=d60>;~HvKZ$j3nYi-Fx?zK0hRC^8M|r#;o}GV-^+`l-X%%X+EOjD%F8q zaqk_Exy`p5$H&K?GOmx%E@$=(3fjk0IJ;+keO+cM;Dqw@-^_---rjqWk%urCtLrNh zGL}R2kv=kU`jyWQ6)gWwb#!*_8yUIi$0VNPzUG`>x%}r{u}S-f+vpO5r^?-nVEcRD+}B7IjdZ)v97jNE1 zc8@y+eRO(tO!H{ySvQe0=HJWe>vvgMS?M_TlHdNBXE;6aQMcIrpvYZsTqvUfCfcGa z$KQQzdC)8x1Cc*bq)_TbWo>6y-q`3L%%%0gw3#)|exh)JY5)HH7C+v9W?NsKX}Edw zW@&Hf9|mNcz9S?S|(rrbW+!KN;=(MIMEDi z_hMZb3h<}Fcg5>RPMvy@80{{izHVx2nv<6|{e^<3Yr$dmaD9aEg@!2csi~>Y_4UuE z2Wy%Wm6`YK-Rs-IrSaa=i|T-Zm6hM)$J^YNXRB;OOQmllR7<rcYW@buJDX>xkY^!_w`ya@}eXjm}n^{KRO{aMIH-}kUx-W()Dk|#k?-uq37RuuF zWsXl~t*6C$Fh5;_6Ij>!rlxYuZ!Xzd+FD!lo;2DJ-})Z)Dp%>r@M>+OXxle#7M6Rs zP=@ZAAP)7RW@U+>ZYh7CS<+KUe9+00>gkFBtd|sv8ZvHHnsgTkySuv=EDePViHLl- zJF1%JFj0>Y8O5GZS-~s%#>eYjCJJTM)MznE#SY_dw=_O`7Cyz z>Xj=?Sh}W-vE^6pl(o@Hl$679bHq{waMv_aYS z+dV~fZ#6TwQ&AaW)>~55sXeju!zI=iALy5QSr2^O9T6F+nQza9-yCIjUu3cS^S#jO z_G_NYqV|8k=GqP?sU`1uJrU`OjXdM(PCetivbcE4wCR}rSVuV)hi7>B0a1tXV}}oW zqK?iGRTHy)CG{Ft>8NA^E$-B}*L6JB>nhatPInjs9CJ1G+Cec#8f>a_J)N`I z0^iTdAs9c&E9{rwnfQgAIx5#tQxF(njGy5<^$9adAmKIS`MeKf;MTxs4T}|Cj zQh%qDVA}k~>waT%a{$()4@S;EFt9Agy8qeyQtxAC+)wG^RKJ|Evf%HzYK80983k{5 zk!H!)P@F;qt(ex9=lD*NDEenaEPk9qfvX8nK3g@}TUu3JZGal}x8sw~uU~o>^3e%1 z4a#@wU`u0GmQd_Q+cQt_^700&dbo12@w`=|{4APpT|qV|m&zI_k2QmJ}6&(sOp4!T-B z7k;DoDwdzo_v!QJ0%bCOOli~0Y?hr_mo}O8et9G_h3^?)*vMY!c2V9$v~si6#ij)Su(A}KTwGFPE<9!|_d6&Yi|*5cF>S>V z1V%?k@7%TP+N)Qu$cNqps$NgKW;fa-jrX!MGc(U&#!e;#iny=lkhP$4Q@(4*SWqpv zd}|Zs=WiLA+qGkd3Zt)#??K_F5n=31olm!acF?TMwdwAAeRg@|Xk0VLEv|Ijpi{d!qPM<+$6&{<~U5jN%dO)|xa z_ieVdU{h0OjEtBV8XG4%&yMJOQymacTv}dEIUsnO{%5gr^x5jx*49bkj*q4RWNPJ4 z_sy(Y>*yVyeqOEZZy*QCHR*kM2Mhm!5Ufdg?14QNvPUKgPhl0_?P zYe!7a&Z>E)TuTdM6t;=K{?Ww0*Q%{>D-~n>$Lp3wD;*g(AAiWo5?EIBSnPdV-PouS zdDg8XX$)H~nUjm_s-mLey`?8j(n_0rBm-o?0 zDsl_Qk9YbjsBU)`$f0TiDX<6#d^gc;kk}|_G!4fDy^M^!boVYl>CgAHqbTnf1jcy> zyaQil+7vIBekFz!C*xbaFEcw^a8&{w5}!zH^gvZ?{>h?ZKUCk|-@oM_?>h8s+T_Q3 z79}Mmry>7nG;{0uznb&oKg|~f-!&JLf`fy-boNCm$>IVvH8rrcGNC zXaN-Xs#%1DLT82>4j6c>FP*^q3TB%WWL8|pKDAwzpK8zScLf!f6^8+fsn@?Z7ph259$vH$rQ-Xe2*YU|5RYZopoal5NpE%^%<061W zP!wwCq7Lwzyl6E3;~wR{Y>LKS35dK16dWpKeZ>6x+ZZ4snZ)UhKf`uQ(}O1bjNRyt z+MVlbBH30w-QPN?E+;A-($>~~*6ramH9tRu?fC4V@JrkmukDZ`HumF?5IU@9{q&d} zOHX`!`rD186R^r%7k)Z;En-Iy&~AKuT;`oLY7MTkerC3it#E+$JsUs%LUQ6ZoGjj0 z^8;S8o%?+?uGz@AAxfIP9F@Nme*%Wx-`&Xf!shR_KX=Zv(H_`|RGO2=XIxL3EZeI* zkSjq)M;F%#_#eoldsaO^G?c#EZQ+JHh>G^j`E_wt4jy9p@$xp_aUSYPzmad><2I0_ zTYMIs=4NB8bWUzAU`xQn%x0phUrAIN9H=6t@hf3BWgZ{3Zt8M}4F4ps4ucCL-rg5mSut*HmH zdN|(oP@U7zpa=J25fNcbyHsQG=r!0@l!o`U@_nn;lo%-&yWe5L$06#P^ zqMvQvN_k3b829@+FjhY3q|-RZaG*=Q?TUk_xw-ktYi~_#Zaax9UA{~M>ZD!leh8!t zMI3vWnfNo^Rax9KytEcIbEU}DDK5bavoG`Nv?0BOyIAVAv{>`D^b(Jaf+!FX6laFW z-wh4LJpr#bL~m99(9zY^E!tRjA$lhuW+_(L61IyIW_D_BuFfuOq36Sg4Xbei=B^YF{l^cDt<+2wO`c|vN?3*=Die)`(EcKXndrW^fz@OP7PC6vX|;;WA*zGotJ9CL230T_cSQ~{`g##~xM4V2eZobh+DUvH zCH;$u&@3Po`k(GEx{Fsonz!xpMEh$(4Uk+aIP1N#Ms@m;OdJavoA>M2hx6`^O5$2I za_;oHQIw$KM0$H~|Nc%l`j1blQexbN$GdW`QGVS`OMA=4{XY|-21MBl7GZz|&40UV zv1rWJ`RLoUw3!>17taqygkfl$N8Ff%Z5{$%@L6?>mBy2Oi`H4sURBzBEk*6g+@H4Q z0;d^C;Sv1g=g{L8!l9l%AnYk#$y2;4iS`8E{Yd4uQ)EZe=v_)CF?wuI0-a%3IRS4v z4ZSjE5-LW$pKg?8Rw;D0E0qfH;CR|5Dseq67$0f7GH)5DQxehM@+SSlXm9WN5bhhe zJrNjm>pCUx;PBvHyPk9WhMMFb1Q@T4wFwWW^{EI7dlIGK^k4%Db1&Z*aZ~`T=nu4H_C6FQTG$mGCu)J;0m5#;WHuRpqT`hAxrr zKX@=TJ9}%W_SLOhx9B@S=oapEJK&0CZZ1MR`f63YCWCp+`1r95I}-5xgX_|?n9DlF z%v?bmFw`bJwp&2i9ht_;fvSpO{OoOR>k19ih4vHOm*nN;(--lU9H$whdxh1qeoTgo zlf9Jmr%Fuf>Rjf~#EIRIek0smOHxuYeIbPHXZ*Iyv?(XAro0EwTAm+MKqaA4CsUEP z?)^fJV*c>aqeqR&KDel0{OvLpm&`Nz^H|ln&T}Vm(b}M6@pB{NgMEEpfC(E)?rk>x z_IeYB=`(l)de60YI+q~J*zP0WxR!SP48ExhEaHi;FEQ1FH6g>o6(@{etSaynN|~4> z#hf$wnRkXDi&x$#_I``GaQE+z-6-oswMBbaL^p86rePk*9b9<4p`$E5M+=nj8aH}( zv`uSEn_a%C3)Kq`vO-su(Tz#+xwEmn2Q-SX^}6bx^1TXyl2X zpWxEew9WFYDGD=bL^*r{Ow4I!NF~?CuvDn_%VGf(vfz80w@ni*e5jTIwf3P>;!SY2 zkDxD?xwC~l)?JDI3xSFNmI49-5kl7YK?`mg8&__u^=u5f^srp;A}t%n*tjzbhn+E( z!2%)L$`Xpa)9>U&dMK+v@lXOE9hH4PS;JFIgZpm(V7M_eL*w_PFYGp_d`PBoLyAhA zOfp7~1G0-DbSjPcUswaV9nqo=N?3>lu`#r?Oj})DZMmW>p5VSTNOvK;AedI=_xSW4 z;TqGf1JqPhSJ7Fk>+6*O7v-oh`6ik^=O1ikmzAv)i!Q~;UL`1AKtRArt*p0kBu-YHa$B#1>Pp|%eG{reVWHLcsRpNhbRWFC(fxHn&+ zS^w1Ht(15L^4T>Iu=b9Q6pVQ)dLIK9hksB|0uJXl2^Bqs$6)nqeGOK!doc!$V z`qQV#t0vB@@SyY*hZN}40PUr!>o`fH?<;9)X{BPHB!L`=wM}zvtREU0ET_{|^8`mx zxi_{x21&&X`?|WJK^X|1otm0@4&#xGs>JX~)MLGXQRHq?idyo^51E-)!2VM(jb@hIsLk#F0UiYA)^cpP3p zSxda;J~@RNIxFQwf`>Yg55TrdZw2CQ0i4r4~&G2p61aeavO-NErS z)G;+|b9I90h1L!9Raeqg=*??f$Wr4V|qrsjWl#ob`nb6QBlWePvGwR$X0D zArr)?$;ihb8~V+g%1!P5PF22eFwzUQtJZ#mt>O?Uxmm1^z|Jfe+?69 z%A38eG+Tc7i52lmZ&k&e=l=79%>VpQLE6uoKnt1SmZ9M*(S0nn_0`oo&CUO)ijT`| zXOSmkC;41ju*&No;Y!WZ1ZNQv}YVn5=NEWCJiZ|yGlRi%IfN;fc227 zISQF#)vn0FFH?$`kDRZo0XgfR&E3z^&O&<&uU_MMPEDUEhoULg!LIEVq927eOu>nUp^%NAXPAdRceSzd7 zxeBtcCLdtn7M59o)6psIx z|L2;{lGRRe!Mf0Vc1ScB``HGSOS=;ifjq$i3ansL9TK&dN^SiBG;?-i)wbJX!_9rM zciV+*n6Mj;>{vV#KwwtW%RU~+o;^wJW5%w(5s11}n{ zYo{V$S9Z6vk6@2$00g59SQ=p7m)t2a85?y8TFD1<1HU%@kXjddD>1)ny?9#o=3ZeN zc7KIz)w+n@{tG)xWY1Z9P{=DO8KG7_V?6Ve`$pa=hjHz=G3=)^xaBtnWNpoSDoS97$WtTnjx)}o;V3!wJvl)*3xE$|8>=(9 ztTF?u+@M8ZjD}FWy(}Re6POY5eBZ=G1H^QboDHl~hSRsUKY8*5KopgU@E2d}CfYzV zTwGehPPhn6`J=!ov#}o_KLj%9!Gi}eIgg*U?UkfW-XDEC_Rq61vAH_?+iz}>?(iLd zkXY2N)W*}V_06j)N^*4H7}okW@t7x*=VVl& zilDIVSXR}Fs=WB+D0plMKsvBQf;Mg5ib4OotwUByYD?PnPhTo3DrhLEs0M+iyYlR6 zzP)iZ;l^1a-?T%{AYfMQlto>;}8oQb7S~pzFu_V8xSlEL&c5tHQ;yZ6G{=M zgomNb!>z(TPk@vT0V4{~+Ip(5oNOW_B0_PvK9cYS;XuTLO5Ppo2m-gmZaVL%-tpO`I|gr!$kM#ycJt zdAQ1NZK$s;K3Cl^MJ;Llo_8%F>Wuk*$Qz{BxVvMltU$c`At~N$TI=uY197{rQrp?t z`M&Pw&&Zq{p$mVz1>o2%jkm#4gVOMKYz&4MZ^t~b6?8H*=Qe)Nn z;f840#AaTn>03pxqM%_Dj@2l9Tz`LmnexAdzrUv`U`bPDOW>{7(zUCw?ry7<4H`oi zg6+GTiRpP<+))x((reUM*X7Yfm|-*Ety3N5@20SA4ve=YsT?icsPsKxyy$^yN?6!{ zd;_o&ODih2s;jF*A#a@EWM%aN=%U%X_X64)i4b2Pz3Btyd-Ytv&ZR8B1px=1%PrV! ztgAAQXuj~vv)k)>8@o&KoBNf=)Fc-7wl&rz4-Q{1s1mOLi=h{``%Q~=83SwGbG;+2 z&}G30m9IREVA|N0r&qh)$#TI z2>!$>UwEvYE3;iCuwF;O$X$xIhPv!!L=^dm-<6+#R(Rhh?{|r%nZ6f>37nFP7GjTb3JD~x7(XuL(HZo%U{{6eB`?DLMy4DU3f*(;*9yE^D;Qkn# zL&e0zCMPFP2`>Om@7}-P=x#o=GuEDBFecBUZ6CqKNoAFlwvfj^Ugz>`%*j6p4^a=I z7O?QQ#HQ(Z@Tnp)q@v~M#jf;agE>JS(6yrMJ&=3Cu(UHPLS*E zxK>fMRry4x!OH%RaElQGD1WbCYBM)G_qRO&i-*@{;9`B0xB{jN)dlOb@*Cf^I2kHf zPa|#bn9+9(e!SOL3_W!Zt$4asU3Usm3&!~c?EdCFJ9A>_fq)1*ygl10x>1#v+5k8Q zHbXOr2WaG1=o8PBv?|NWXqcIm6%{EVGkHZoGkXSi7Z6ZvZMK<+xvWl>Qs?C4oU-nd zLUbh9xHl*cYA;mP`xu1SMia;3NQZBucUgyj7JGO=qZfyBQ-(g?0L_d+)Sh$mwq5+s z{9Pe?6MGqQli1Qg0Aa;oI!@XD)gWwgtc4!e87fS*A(l&RgmCi+FMz8Yum|jnmNYH8 zZQHgX{xi~3EP<$tVx&kAwzlosvYmj%k8@}PBTWeuMA!ovfMIm*U!#f9Mq?eHPOmF( zpE{S`qlA@9zklp`uZ;mCX+NWh`p@w9G+cEYLFGsMG?^FnyTE~aS{(bj?1BPeSIWbl z_{4SmxHLRc<%Ib7)x^q+HMOcRDdDJrWtzUy+%WYZCm6LFTH#C=u_(xs;E|@H&T|}Y zYk&koIY!NV_ARJl48jvZ@CgWcz-G*Lv?<{v8{0+Dtt2q?6jZey!Aj_!*MW?_vTaR* z#Bcv=~mUAI03M*YQAAudJG-tM=1cMC*d;>_V&iWnTs(nFxXi;4BdiY znAP3gI!h}nsSJEZNw}KS5MB57Z{TJrkU^W+deC?oZvzCUVBwzx;w3%Jr)opF+zK2A=zqdr|BmUCf*_n#&zK@A1orFEgbs-$6Dh1e|?OY+;RC)FU z1W8)ZU{W!4R4ZdZK~JAOFgm%AM zk~cm|ut-(KHjlOxC58V^DBq?wxS^Hyaql(uv4>Yv*0*`2DzA&ga93<(_Z#T5jV#`{ zZW8ERaz^suc_3)W4Hz57iid+2FI^gh>ZJBgN4&>cBlZrk8=9yb^qsoMr>D->8y`J+ z@+tU5GmsBfRc&N2O`k+wfPbCUV}l)j-b0H)$1W5^6(7)Nxh~Q+e}>ZXboTw{JqeE@ z$o3=LS9ZZC&;QHnjYiH+2mg5fwfJ3H929x2T(TM$4}YquY2rHWPwPp9038pviOYQqB;;eQ#Wh(S7FTut$2_d`eV)Ej-#K3_uirKqShnyJV+Y{|FU9J&5OsO5 zv|GhO$jLV%rgczzY@|m`VM1m-(C)(-tCz8t<^Ek~pz4$4SDc+5{*Ur+=G-}2PGhB# z%enc&$B(H)kAe~&G4Rn!OaG&`v4O(w!cUg+V>O&k1%Fh;a2jiII16w#l+bVmiAB~% z#ITwD=Y|r_$pk+yey*br?6DGS#n9L48o@vxo8TfYanLe>la1?Xp{_%9AUnTV%XVX9 zV+8X?K$n1GPMZN(93TKs18i^KjJ$w&3c$e^l+2xL!W90|Nl9#A10Zl@vlE)WG8ZHz?`zIDYalfftT4Sp z<%_mlL1{~|a^v3s--6W{mU-!(FV&J4LPUx<-B=zL>)e*xV7<=1F8|7ahm>v6{srK; z{gXKz;W@(xK#=3*%a;Z%w;>|JswBJR`?L{{-PA|sNwseB z8&(|fHifvO*euR;RP0Ff?0&WWNGZuo|*gIY~;jjUz;vh3ycnS%7f9uiz^J&v&N2zrOcj|LO~apaWUZ#7bi`n!7QSww^gz6iM< zis3VQ-ur~kN@(1W)$9JYXF4H#;?p-O5m72}p+&%3o6Mc+=^%@7U06A|%`318=tP9= zDnpR|YA`XxFKg|3;8cj%|Gfx=_Da~6RrdKoedO9;{7xawxB0#8uo9er8su>t(P=b3 zn(QX1Ka~BJl&c&)1x?M(qdzi^f-=B;c!I^-KRQ~4#-jlQO>|Qz_q-n`T9WrdOlA=m zkCfP04M41g5VXPl%Aubdm<<2MxRHqZ-Wz%wM&zkOE&t z3fszT`i=eOrGa&Q71-k{>|HhRh*l!Hp{lA%+1Z1v>ecMqH{#adtLkj}jeA2Ixt?W_ ztmD397$*QJ`WiPkH-3kk4MI}rdag}^O8EQtr;xl646p%g`QP2Tfz2wRnLQ}VqNCwc zfV}jW+DYd`)#z(#zs2d+iW^1erp!-V>IqRYZknmGhMzY$Fc7a4C6?^GFrIdHeX(Dx zljvl*I@=Ngm&fxb0`v3p<&m>0V^s`&jev?-&QFl%R&2t!l{2PIQiYRWD9DEd46A7k zfl3@BH!e9e*d9Wv!5NIqH_HKC{0uzvwlz=f3Gzs#MCdXxu$``gcr<2Vqq6(T#GM5i zBAZzQ4OYXJ4oXc;ot~V$44*>)Q^lqZ1%J}&Q2frb7@vHD~4R79zgLWP7zC3y&Ay5_av>BGx$y28;1Lh^e1UUnn zu+*&wc#WKX%>tjyo}i|v_{@1ccQ_CiVdLPS4hDJ!mE}~IAP0v+Aru&|;dzL0sqf#v z*Djv%s9CZggjciafhx4_E96;pl3hK?ImhPatB)BH|X0ze+M;ppkpFL&%^y@OQdwYM6Z&S`5O z?C$QCS*gxFL`SEt7mhuHx>pJn?JHs$nRP@GuvQT3n~3U-A^*G0<;$z&Q@LGhor5Rl zw$_f%{#sZmuF<=>Z0H=!eM25vdlI6op!a$((iJ0w8V8!Uz(FHwM3ONlGJnbvYk`Q7 z^p1}!L0N%akkYsY>1+v&f}(4ouiS@V>L?xvlCRl(%+4Oh-eVQ_!-Nu=^MA~`DZwEG z8k&mST=w(m)IQv?clxI+GSm35lK?s_kXH$Znn~RG4yHwWrM3pCn^6Q7hzdk7X28mV z#XcYGeJ@P@W}5x`WpFKo@CN8L2&ji^-~7#^0-i<#F<}*GbQr z#KS;GKDe#e$2r!UN_wI_^#A#z06H$@Fn$n9<;ih=Dg^Yt#LETL&M%f50vy5@C4GyQ zyrigj3z`ve93XzBvbtll;`dGFMku$_$rIurxj7sbO@3-#cYhS^ez=3ifqQ1Db%?E!f+> zUfOZK=YVla&esB$Rj>3-(IV9IIjk5*La@=t<|AQQH0C>48P$au+HBIGXH|}>g=|BW z4dFrQ+_`g6mc_{2pmr~!5VYsnr8Z{a5_<;*q(I@opox47;>i-1xlbC)t%?oI+T8BU z@>&cep-|jv9fK@`m%v8U)x6t3 zMPTNW*6!s)izGt%r#7o5HWMoodUt>^6L95^j`hb1y(awBcTet5jiAmXf1SVbE@uroey-*U#uG0U?9c)jAixfO(F;is&7xkG){{r^)Xs;No@1J4bns&>+KbaWi3 zP5|vA2=uQnYaU!PuJa7 zr)06iA0v)~L;yxJG(z_L-!Y2y2OBt0!-uUxXb2ZCZpX;FLb`>@nqRVV{KSc7U_%H9 zq2}R-zVt7Y>k685Df=&vY|HO&8F-2oV_6Wu7XE*AD@J~kl9$I7Kybd4mmhEFa&>cS zFLcS)pLf4@ZU4%`MB@1eeXo+a%liMW&fOwVT!>ppPGq`n|M&Wi`{Q$~^dMG7xhozF zbg}2k#s56?s1vGPdWC4Vs=UO^du;mZ($WirMu8=i3Ts%rO)(Ozh_H_dpZ+Qm_H%%Z z$!I!p0^tIds*vKY09&WPH1ev)&ED^-RLsIDf6asN~d32<#|w%eT36=Q04fIttmf#>Pf7 zbPd9UM|+n;gkdnh;qPCIt8Ww;&frXw9r7HXPzhS0%Ewja^>F@z#m<35pdZFb_VYMMl6l6#l4(((9Pp`zuLUbSS`s{huM zh*dvLAaTkd{1f;aTq~**(Wf+$9oBU#YNMFXqD#njVb{g?W{t6rK79Ig6*9aNcL;Iz zWgjhVJao)|WB~bvOVxZ_T$kLYt4^dq1|@VNVqsyMB@H4v8YheV&kfuN)G&dl><4nVJ%iH)%v) zk^#0(Le0MlTyO?QUP@QQ`S`9B0ti=^mrD~z6Tq#m2H)G=$I_J(`NqgXEH3O)yB^yz zS&w#tSABb&Ky==l51Gss>^#;Us-%+%D)KTG5^n)&;Q|q{XuB}ZGiQSKo>00B5O(mO zV)R26d4Wi!N@&9xI5`8ag7?{8+BX2-Qqt1aNE12F|23soV3#tD3GDk-zGX;ODpO>7 zCqw)44ukPs-)GGR8a!FAuZj=+P*K|{;vTZ!rdNW6$@9@8@=T+;J}@x?3=;YZ)5YsX z0>#XEii_!N&nvobC}iDsQs3&eWm@f!?%%hDs*l;6@v%9gt#<-yHu5Z4T5M*j>@=1kjW z8lStuRd`^jzn86T58V*Ue_rUlN0mZ??1lau-iWK zlI*?rp!U-F?J*~!cTDAoFos`rl%g#@l&9z%yzVw`U|eqdd7aWEB|)-1RWyoB$)#r_8#C`QL)lZCw-K=Qk`#kf=pzTDpQN388fg_IGE^Io zR8dgK?YPJ0bo#^Hx8nONffVMY$`ACN?^dFu+z~J9CJ|vV_>G;(ZJL`~hS9g;l&Hpb zNWr^9LMvj$c{#iHmd1lD|vH|KW&7i)S>L=e>B8|m#PFQc?B2dQ)T+g zwT8F5l#R8P1$MpG?I*cvkJUyb&`4kSCpRX@+c@v%pw>26Pd8E0y#%bX&H2(eCr?|c0s|715WIVn^6%$MCc&Pzq2 zp!%3PehCWiP*AmjK1+az)aY?y4|rGJSADwHm`x1wyEyf)wcnM0v-O)?fWkU!l~UeN z*Ilc*Q|0tOHMq||ILyD?>M=K;#F4Om^_P@W%bRXLd}K1J-ASj#q3NLN?egz#`uy+q z%Iu`Dm(H~4k$%}U8vq}Q(=ks+nAoX`zKxBc;V!BCIRMBnk zZH_{x-X{kS->>N(I!rN6VJ-1bjAfhZyK-9N!@>~?2U*+E?}teIj3#>_SYJGx_CO59 zf`%`4Nke^Ywj$>U^*q!d% zW_ns$DL`c6KqGoZNr%XS{3yTx=k<@?I6po4UCWBspv?QorEBmF`lTVBi`zyn?QXOX zv-6GM-XS6AvV3O8YlovA)gtX-f^sZO7nbHpQAl;7DujOwK#c-5!l_8r7*_SBDnY_j z5c;pKj&1xT?-eTKTh(B!N-QSd1jXMp(o)ZR$Y)7m*H<@bXlaGy^(o_i`V#JjB72>tjPODjp6NG4&8ql1(Og zWTLm*$IwNNqAE|PmJ>iGbIBV~26>LUdi%9p- z+-x7NHAeH%&L7M?bfSF5><_;>?Ah*#1588!1z{6bEDyAE;+!i%+=N^gPr)+;i8xRm zd`IrcgNtxHChV`Xa_lPG!?e3R_Yb?5WAjrcs2)u*UV`6)_k-DZ=MOBpMKhIvQpL2I zZGvS@9Kl6ow$vU;OrV*do}c&_u^}bh!b@mW95C2l`crwv`5tfJXCpk0^WF7E^_RE% zhpar$D|B%6de(|Kp#Q71{)wCFM88~kj` zJb18v-G_mJ!F6@25=XDeUWA2R|8|4;N}2TI2^l6RI16QW&afXMDNs-yN^#k{KlXUM zD#Iuny0^+N`Vwfmp|kqkn6Vhvxuh4oTTp-^RiBE}_3h}{SJx3|eG5$}?ri{<+kutl zcXFhn^m(ItRqt&_D<@WFNyt;=hBgro!FU-TZ#?xUMg#c6_Vjob3)5RWV?FQS6Xr_> zH;)I1Jakm6st(6CrmVlAjHCg7&4O;9z4Lz3{P*Cy?{uGICAM(>D?~JpVoJy+A5fn? zWqJZS!R?r1N0F&p1SS2tM3PgE@RI-h$i_ddSW-cLaR z)tX7dX0=F}`WJCx7OMctff3X>F@$ zEV%QvM*wM6{2_El$;y|hA^mo1Nc zX0a~h`pRjy%EA1ITi$JR4o3lXxb0jsGPC$^5*PS0a2f9oEN z?~Sz#J6YtzR=79s#hF4xTORpdT2G{Sb1D4Vv8tfEr@hW?*XK5U)xPR9u(Nk}suYg+W6{ouy~?*^AFf2SQMavHQBz}i(1=Ro;Dx{$=P+N^kpI4 z6XhyWNr&o%;f^8hGz-VuVETIRA$(5>mj`I_0#OA|$D?Niiqh?8t@fOo zklExY(n-|rvZK=JU>sTDBZU_y*IQ2@w`Y4N90~SW?hC5c4>y-?_d_Dfw8iZ7w3q=QguzKV>`=E*&>fiUrI~C+fEVjGE6c~3qXQ< zl9t8=LypvfGh9&I_z>7chW06!DRzZ++3`0SCJy{Q3pxYKV|Ph!Ir$%cpVi0qXWb_T zOhps>?bTg&A)IwZa1Y%Po8mDFuPXd`1e~-E3I}VP_SN1#bt+I*Dx$aw*l_)pfQy#IMv{@Cf-s27W0zDxPI=6JhbJV(`m(7_PPQUhG1w`Zq zTX+km|2hw7^)2kIMos)K7Af8rn~tMMmDOt()?r$RfG%JlX_r9oY|=y}s&K2TyfO7d znlG*d3i3YkA}HhzG`2VJ7jp!a-{i3 zwELxxi@ELL!U`-8a})^3V6h8f*uTHp!6fM(4PAaV{k z(SK(f$#-kVwK)SUiSJj%GTy&Hj|bt9Qzs+NV8L)iptY6F9i9&|F%?Mh%;XODU%Ix3 zu5Ze2#DJ_7S&?Xkrd}I`xEG3sCR|y#-HHQ`s=KA+gX_0Soe9NoarM>6@kO1C{UZNh zAFwL;3_HxUHDw<{xdxDL3f7nZ5CSUotS3C#7{rp1M(jtAg3gGrWS~koWNSRA;1c}N zJIF0V;m|I0ZcTzALWzQaN!rB2!$UmF0{8f=1G4lhWULU~SAa;3c-!rC*P^v~Eh6ck znHeV+zzU6g_+FGB&QHWQ1I*`De9Lt)om*mE&z=(lO~-nhkx5LEQgpp!rhKczFxM>wH0k01(6v<%dejg{h!ejsOf<_BeEWl2!H%YjdcU>ziC=$FLv zmhAuj*fetDHSy3703Ra5j*zh=&J`b(d8P-8kc1j+;%fz z|HBwA0Z}3BGwg=9I)#M$#mJP3ha({2`rfFHk%ZicB%T-$3Z0rH61fZKKPu3GAiOyB zbPZA+ld76upQsGY=X?6Oj?4)q9yMZdZPKvm^xVym$g#JM=`j+U!?s>-oaxL($dUg--i^r32nbZ9c5U0bbs^{yF0zLd!t`yI6d)~$xR}@HnH5gZ8pRre?b>K(wTLRgcArspmK;poX4YU z;EMEP&j)g85l=mn__moakfnY0Pr>8CPPL%V9RB_LDFz6Ih6pi3T-}Fbc6jUqJ))&7 zEG+z%9kk!*;vw7W;duqbgM-S-%cpRzoewh$MR*fELZ<*SzkCI|^#JCHVSs`A0mqUq za1(Akl9fmBund%a;@~u#&0E&yEb>V(yAf~S4OALMG3DiG$aCV02~Tr8r+a-(k*)$JAj56Y&BF63>+CWMpOepg{{*bw5MIAMfr18zG)tbtxZ) zvJRexgHzB-I6vfs+%2V_Kc<&~XfC*I72v6&^<{G+#@=M>Z#p1J>z68L%Gq(Kv`?H@ zJ3lSj+t4&7<|dWZRxgts$r`L}J;AeYEzr#H+&i`eC_nn<$3v|5N`9R>z+}K;VjWU& z?;)EAY*TIT6G$9>s_diWbE*+(Z+e#@;TFE-*PmrQ-E&xh1B+CwQDjkgOa*)^j4n5+ zV5;H(5gaC*J4|d`tC}fUXF3+93U|_CBLB-xW-DQi+H6! zb$~Mo4}hp94vi28Zc%)}%5UQ725+x_+KGdQNQI~z%ncTrrjqpjVmp8RG@)y`ZXCaz z_~+dpODjvch2=r|AN(&E2M73AAF>@p!OYk;iP#2GeGHz6Py`uAy9E=+dr@`}3=EI0 zMM{{yruutE?*PGrept@~^2NM8x;e~@sL0x5X~;JKWk$iIj*N)FsczOyn>GAxQ9y+de{cnoN$v-J|#tJLvV-i6zHS=-g?delFay=*`#G|9oI);%C@cOg? zMM_3bPfukC%~+A`|3WgC`TvQT|0S8gSAZ=&?kik~3k%Tk=-k4J@cOf90$>i0FxYQ; zAMmOZ1k+vOpaN8zO75OQDXkkGf?vYSMpY{TVl|_PYYE`oJj49;uqw+mo!!xYG%{=B z|4t)Wve4#zfma)WzH0$QK1y23}vPa$xw*MR0sFs z`s}^AeedseUFUV4$9bH`fwXatE7C?Y^f#=0=Uke0A#FqnnJfG5vkda;Ryt7%8f7t~ zQeaDBM(p=^C7-QLu&u0es7a2t#9xrVn!WhqNLl)qeKBh_L+Y5$TzZqvyRB2BTt6jt27A_;U0 z(fns@1ts-l=1u6e+2Z1OUDF@Je}1*f#nAf^|A7C2RNi!|wc9}eRGmgf7cM{oUc!0b ze_M8;@rMb)0BmhmogF9#hdw?(&NdQw4sb$Q(gn&{%jAa|mWE_2Zz@?Aa6oecIe&bo zBC7``eUi{R^1kQK^vLT&KTAtpJ0b4|2&Fxm>%De8Ern+xaz%Z<7A59=cF$pLV0APu zebi%^w#Lj;4Ct6FCJOj_o5nQ-i-(HKkc0kbNl8x%5~i+V;dIJnN5{H}P)#t6!1%h{ zSAQMZAnQpxW#6tV^L8619972$ORHPo)~qV|`o%A19bpaMe`kQM2u5I4&fx>16kM;y z*dnZh?xv3X&rd)I)ziDGj~P9B+yGyixUN()r40<%5QuwV?wi?M>;Zq&@WSWl=2H~R z>f^fJ?O&}`)3xD~-b>jB@RJJ|}73i8j zjB0dZdOYRA(yo*@)nD%yq21BAnPUAHXa_(A7`DpR;3$L+nlJ*3*AT)XJ_!d4b!O>u z9_`ueL%9-jj5ILJRb3+!a&)#t2m#8BxxbR2CbL!Vc$5I+A~y~n@eY*&^?VPPSz zUj{OxhWP~|Us)cae@m!w0}B+w{=ED0-w%Y{IaR%ln(eI}5D%3Gnz zQJ?S?U0}^3MaEpLB%1M66GowW>SF7_LWRD892)ATU>1|9;?PhQA~=XrN9FS6%UV4m zD#`0(@00?nIhii2DaS!=iZgA07F0rBSd0c!$MHD zMA8sXhIrmoR?RxzzU-F~3sNd^s#g5{Kva;P9do-jL$lf~@3^#fDdaPK>ujJAP)l$W@F(BIg# zYu7D5zegxCR%U-PlQhd}R@V5__hYBgwQc0`y3nDDwkM#wmz~Lbi`K6Fpk3E-_{#`0 z%F4bGeab0)eP&M1liYc$wYK$L_IqxcO4>aENvR>bR==sMjafWQ(}$9nQ%HY8a4P~q zhRMgRon$%`Q}u*i`slryZ>5gWCBf>cL7^)uZGY}A)7RNrjqToiV!A?`RKZ@ttFYM- zGiqYwBXKJciVuVd0G5C79RzG!uDf(4sDD1j z?W3VU!N&6C;R>NOA^KN!q|5^=#H~$PXpJ_k9Y>8oAoN1FJ=_+&PMn&E29J)0UtWPq z`IuHOf7$tOcCUHJuugBGc5;K*_AM{!-(cJBiHjcAvms3!nH>) z&&kiLimAky{6j$4!BJG5u1jFBX4jvU{_rs=L($;9!*Xc#%Jo^!+q)scV+67fGG&@h zl!NAJg%y}cJ28+-CAy+y_~k#qyQusafOpUP_MxlAbIIwv<<{7Bc-SpLs3!39#^Ea= zI$%%9w(fY3X44U*vpB7`A%a^~4%y8PSR%CO*>1YuaNB~yZ7J&fc%L&#yM8*5CMog_ zUwO)4yEg-$haru<=|q!wG9?NL6jXMZ!Moj6hUfE)jpZZE9u|+TjIjUjhQRyg+c=wL z=X=KLn6lOhgdL>PTY*HSySp2Nqf@C)0G%OlS=Y_0EXVu**AiHc%ide~S7}>QZVfE=RvvEJl}MbuM*U2NKghgTjQFhe?} zcT*I1h(6a<)&2WDP)so&M)qZN$C*qji2s}16z~jjo{`&Lhdu3%Rs5NS$19yG^QrxQkRwe%W zzRYP1a?{9~(~H&zKS&1B_IJ)%e_W&1F4g2cI@i3%-Zp+Kk!zBsy|aV0b!uk&(Nu$n za?gNAoaHG&hvMx8#&JEf@rxtgwe~wc+&|yAl=bGb0Xc~(50BC981|M|d_8W+uU~AY zFvSa|8uf$MT?!tc3-%gnh5xyO^6BG8UkEsZHPv^yLaeMX)6-k{t<~nFPl?%LDM6>- z+UMW%z9|-yA_BDxWtQyQ$7Nn|Pt8+oLma!^);;{N`pH+CXTzJs*`f+c%8wW_@vins z(6jj^X*d$Zk24H@5dmY+BD1qZxWXJH`&A=l7PdqdS~0<$h&`V}bgQb~FGYSw5qhlp zh~^CLhKIKl8C^_EOIHTpj|)24tUPS`@WWWEMnUduX>R=4i!>Y8Npe3L-SYCq_NfLw zQ$!mO`+ns0#&owic9gfYq@ z{ljjNwE9+G{%Ye;xF|XLb+Sa!{cIccCMS*tzSV)oKZ}aj0Smw}RdykTbb_|bpkx!i0o_&G8~$SAt$ioAi2{<7Hm*~MSk zxHRa|h*;Q28yxcd%@_5>ookTy`O8yW+&>15SF3-j96CKI?^?S5;q3;-EdhtBOTZ8z zApf`i{zE8+GP0$3H!WdGhxO!*EfIhIAzkd%u=f5)e$|aL;$>w?8@tehC;ZFDPucIY z*(EX{ykCyEID4|d#m%e9)v;S4YqHQaE0%_fHZxI|X*t)(bs9HXT%5B;HPb}o3=-2M zHy%#jPVt_BOvEz7hOY<=8#iqq|7g~_m2)InT~x3${DVmzjR!(vkin6PF^Z69OxPahIV4_S?&-MQ3a>sAn%3 z2%f;uEkEh96sJAwF#*UsxnT3+UIuBO^o8DdVmbS%KuFhfw)ak|rb4|<`eJ2yV-%;K zz?70&BgS>?Ktct|>kY_8eQQ4z3**ow?Tz$~mFZ4L);3xv(VV^bkpJalX`0AYA74K5 zDM-Vs6i(>4`9^W@$b^BSvvjIuDqo9kp@`n8UU&ELCUT5XZDT~s2$eeKIKi#o4^b;l zDGLs0cVZAY>&XO5kW3;=zE~N_ihxm6&6?`?BxRyuO-qKZ6;d6RlWN{$jhX}gMHtYk zuyn0yUOzDPh25=vcWq>>umhqIQELY*hS5MmyxU)Zq@QTQgS~VON&p#MXGQ4+9__g@ zna$rWTpyhdroQ>?+2zhQcB`>zY4T^h7_F9(it6JZ*j*=Q2gDi$)wdv+f@}~8%C2@1 zR4$!BsqhU9eBW#ENK)2idj!TPMHT;QMJ@Ni(TaL}>QbmkbXfa(bfFyQwsD6i#WvZ_ zy-;|Z;qf$j(%Z0H3O8H04&`w|LT6|2+*LQgicQV$PFX06{p%>YHDp4o_e$WDqRK;u z{JaLx~Dx8H^u(+hiuQqIJGDGG15bh)zqK;jC)X zr*WX*AAp<+96lO)P5RDX1SW?{n?3(YVCs+}=hir(kKMd|g88((owPwwhTEF3jYmB1 zU2gDg{rhIel~oCZqN=KjKysZJ*uWTnChh_hG@(lBTN%nWqZeEbMqY5lbM%70{mp#Z zpyWK=T3CVPkFK=V9{n>~cIB&&6ikd6vtmET_H5U!d)9yJPF(_ZI+7k#u@5l+jO6Z5 z(EiBi1=7-rM%^!KwjCb1aA9KZn;x>WJq~-`GNtv79zg7QpXK^@*M0SP_($V6{aIMf zUa9tgd|i(NZ{iHxZN_#Qx^;y-f;zOl(D)N5{QXycz#DXE-M^c&0BdaYr>x+CRgkj z_K{aC$+#E%+)$Fw#qo(E(+!^+YAYvtgm^EmbTcM0Cf|f0f>2UYayo;Km3L@eE+$Q0 zISi|Vu?|3x=q?>-fyB%01M%Xs{SC=?wIU&BMM93Fp1PKwL*mNF*Ze{RXmE!bFdRh@rkCU9rWsNGVu68bRN$yM?vo)0h%U6C^aeO zsvl754}~s{koQwUpKozu;#%m--;&c=F~@ejI8<9D)!HsswC=hwkN+;Bqa|;pTH1cn z#zvtvFA>?1(({;lvlXG%W?z1lbtjdGd!W@pByjMI!NI{qm!3n)BK*T=rNvL4=8{B? z5Cj1(BLK&O0KIkV&IS^OFw`KRC#?aIR|*kKCbLklF5g0WNi=3Bz&!(>%_ktBC~Tls zy5l=?_8;F5Eo3peOpidJk`5rN#85u&C8EcO@B1Khse9+mP1|=xGV1b}ej6z`GOd5g zEPVF#nOBX|B0V*zEX9*PmFBIR6}b{M!}Yt@W@sa&bbs7F4w?JA&HaK>D!=_+Fl2S2 zYpSgDArpK68pv=zNKmR!t1xSRxs}l5U^8;?PIH0tE_B_9j1k(Q(Bo`V^+r$1#@>Dx zi#r9f3zcB<01M!1CS!R==c$MkHoC+3EMv1z=w-!Mu3OeMdUP=6*dhCVoo%tHdk$qD zk?PT(r<#{~mAAZm!nM24^-7N&rqTN?8g-Ih_{pyozfP_d zO?C^NGxqlJp~d=n6!re>IL{31XI%>M*m>8?v=+Mwm>y|qQ z{~MP?ED~IjmuVyA^Jm1(BxhItuwPDd5ANXmDE7_n!k!ClA1W=*Jaltk&AZB2ByzXB z)~oQ-6bwP$#jIW?Icb2)F$>@y8L9tJr~wumZ)9T;+hwv5q8;x4WCI)IttGc|(JS^wbnfkcZ7Z^J_+|CI4tPu6o!|qULJ@r^ei^rm z@B}VBR;+coSl5>8XlW+LeMym4N}}i#OEEQl3FJeVczJP2+as8;0jnj$E9H9+J;Kxn zY4RXL_y`#<46KnxlU5`qo}iqJD~#$_QY!ouE;R`DPAy>AsjeCm8f1oNT@L1U#-_#c z8g=CUg%b1Uf)|63{(q4er|cwNPF~3}{ZF}-3tFb&RGeMIer}1oNs&?8y6-&OmsyR> z-MmzbhkqrV^4fV9&kf-&h*@%AUI@kao95Yck%{=RJzbCxG53{1c)3^ zgpi9(M-@dbp-~EHJkoJ7BL^-dBH|X*_K14?e~bz7n&Yzxf)wfh{JCW+=i4oZp=YqW zvJ0$@^7beCH=TlWm}&M?_iJ@93bhm%PPzEY2cVci1t+&Uv2)&JVN0{-!kU3t+n?`$ zEJieluZ}9DZ}ny>PXxP*ZTgvL>P&CsyW&W5$&Kibil4yE2PVPFI5fS)VP2BB4lD?ul-yDp29a&=q7;H8DFmb^UwoTmVc#g&)WLkXWO{<^FK&IYtv9S z_$r6qU+u#-NM9UjI#NNSKj1R=)Pbscsp$3tVYw~+zb$vHWb*)BNN^a+cn{$IfsG8} zSRV0v=mO%Bgg^$-{a`Pz6_{gD!%mw)%PBz60vQEbejFHzVZ^jTA8aki;H;*mFJGvrW_qmi->^JtlG>&jcLHzB!vUkOl|#XRWD zmbuuIJizLInR6=@3sO1dH?g`H;G)`gTK+L#3ws{RU-iI>D|5>6-#Sm!7R=nb7BTnx z%!aBgk0l!W!s~w%l>ivp&knSS#7Q#zItx||m`Y80Z?Et#=TN4vZz=vNbp0SZQX!wx z?_c!FwdBj!Ycp%^9;EtB$@EYi_bUi32~|8Ikzv1kAk+~cR#ppIY9=$+_3-hO^qlMj zH5$cLQlGWkaxNF$!e>@(Idgr%ep2!6k|_J*46lJB{b>#Bo0J8w_^SDVe9_=XlR=nQ zKNrFXGxskld;TVe@)v<9BR*!L2R4Km-(*tjg?^m=IXtsoGnG1e(O){yV7Uf3!S;?l zNN_7fBN+05dH3$zIzUs*GY_w(9=rShxD{%6Sg9sFVP*VQdy&E~@kR zu>F<8Qw{w3$nK_)g&dyAyDA}qS_tE+jx9(r>94Y5M+wo7EtTL>gf3sd(nH68y9|eN4bN&JFli* zS}u>Au+nYina2tvM^|n1+BbI8hJL5HpE3(O>I!h*K0qiB93^FFDjYg==p4kaP!O@w z()v7lpK*L^_XW?SyW9VJ6z8-7MUipKAFP3*pV-}O)kZ27ZcOS9Jo&)$%=p7KtygmO zn}Z=0h6n)C)hFDbI%DzGUK|e+)!Q zEArP=q4+030bO7uh@^>6d<&x%a8X zT#k%ho#&3aQ)HaNx6AXZ)7{;%vbV3VimUt!n(aSMzd96{bkp|i6YB_8!N z8p#7|d1qgzT}yWx7UeH<1W{ z9yl@)W8k^?DBL4OaRuY`*>j!WFMeV1c4EOtVCp{v1MMJEZH|hLK3Q~a4>B!6x&`%u z^-3TrDD_C$8~`FsbIfJ2#awAk2NaXz)rIxm{TT9g(i3#Oiccs-zkJd${Y4k1b0G#h zjxohCOt*8@G7t$Q-sXD;7dGq&sopdgs9-WkJvqBC{@c-PKj#VNE^)xbeXxz;m?q*P zNSvOW%oL=+2uAqT5ZqYM@9UFKYFYPN!`s2mM^{GM;gU;28sLzrxJuSBHR9$g&-jKYHvwubiG&; zcisw#U#54`9lTz-BDxfqhhz7vCnK-$V?CVj^&SRLqa6nU#PkP8uMyG(Qsm$6CT$>f zu=uQfo5ES$y)I|GgtwwY9{=c3{iUp5gN=-0VrgCP4xt?!-{-(R6uS%p`27t6m`|TD zBb0h!e*8)p^nJkhi;%M1ctl}lGsd73Q3pWyo<-MLz44#C6J7-};{Tq4pB4GqUvF>qI*Gx$V1@v>OeRx$#SsB=|<`{Yw( ze8Wv`x$evh7uz?smAw0c`$&tj$4#+Jv=dW_W0?BSMEz*hntL634O%~Ry54d@CuX2k zCO-D9i`n`Fq5ktaQ%8IExPI%^uPm5ZbB-FnTq4>D?jxxZFo{`<8pj#>BQSXse%Fe< z61w8+Nt>$yZo@?rk)svz+XhU3ei@{lO3c}%qR+fJ-g0YnikD_39I}yT!7rzPXx0BOg&8Q zR8zG#Jn1{%Z+ETv$aZNG*F|mGLmVPymRop2+(WFoyjVm(e@$A`#z6$dXEcj@)_-TC zl)i~uRI(90k2BAtsXGFdVJ1! zOIAFVarIuF(@oE?gNVzdYwO=&Zs&Jn^7vc)51lv-H!&36#_a{pgn{q?r(FWlfJn)m zh_DiffkyJWcELD^iAT;MsuC(+Nm+{O3D)LY7Y~ z(I{KP@AW(A&W<;Wd9$(KQ;-a7cl1>5TLWjc86Eku%5X#N1vt?axSrtNw(!59w> z^#YX~MFR9k!ex07vNp@oYd#0M`WGB}{lJ@t28KuvfNg6Ab_h;UPMtahkmBBH=6#qS zx&{4g$U&&yiNfXJa3`&F(K+3nVRQMw`Hl1o4_pIo?q7yHS8IL87oQm1{O6G)l@$jn z;t@`-hu-kdM=PV!on|>lV%x~@@yL+PgtT=ar0NneMg&=4 zA_9hiNHfUnc=`}(wfp_J$tSDYoMsLnMl=jD=wzE{99gY(l~s>|&=dx}Q5!HDK+xQn z4cSH}2v>u%=r09My;DQ0ToPVUr}Dug4V6fLrZRD#pO(*jEab(6>IL#ilsMEZ#DvJv zaoXsRIxf#WuPkH=b&4H2@&X*YN3JjZInc+*z)Sul|A_HNjuLQ&Mh}CI@6;O&A6V7}*(}2)+ZUQ$uUx$z5I^&iK)`k# z)H|VZ16CP^p?H+s_v)oCVoz-@rOao$}3Mc9bc{WdP|woz+ojCWVh#O+57y9yu$N`sr3iKY?7Nf zMW5H+0f8#qAMuV@q9Ejug8L!}#esnp=Z(-Q_uIUOpe>)wdjpL(54zhG#7`u~-qz@4_cfMs^2j#~A>oIM7vK`hS8=v}Q0wp4CJd4U`1J>*NwtD0K?mz>k zhBXW~Y1lkQVn|)(ackwK5y>pA!8m6Wk7Ami=U3Kvryfm-t9#LvcyX{}ht&{D@ZvVxM zT%f)#Sl*buSNza@`QexU>eZd#;4vk}@H=;ufqKmVTA65FL^Fx_)9u3G1f)U&z;A{W zCG^ZWo5_1a0+0a>C44|Rpm`z|zpe$?Umv*baNxpMm;g*afjo0!+1rHNc4#C?z~vNj zI|ngKL(CDN4dxox`-hh>_1ngCgS}%X&ge-f6?C>NV_c(Cp?;qxk3J!RGN{x|~h z;dd*b>2(xf-7)p8L<Dcr_jRiq&!i zS60xPJ#He#+Kio$Y#}-v5cQFUTO0OYrp-6yiXgr^l*V+=ISOG?1W+2ijCLmbD_0Uh z1XWQ{q2PYMj)n$iif&5%H<+Cc=A8Q@!OcgVSPpr;wU#5UQBhKRg6@Wap^gIkwj20x zS_huG-KkhQRr-v<<^pG*M5!3Z)p+T9(C*6J^qbT&%h*d1? z2_Pjw%2EspDQgJs&@6Tf%gGs^lv&2hF$MvpB8g@zV}hppXhpgkX74bK#TS6m5;JuF zI=jC^9EuEQ^z+9=FbRZ3_7cj0ar4Iwzr;mkpG=BM@}?F$q#*(bpa6XWUFyN-ImCE^ zXoEqs0~iF2kPt4WG!-JpMu;Kb93YN|?Qc?Z&{ysD4zBmlJPQ?Hf1PyfwmM}dxpshY z1uY}WQlzzBZwD#VL|qGmJdfV3#DEhe)u7NXEiH}T4g5vas-|Z4C??|Pp!~C*kIy={ z7-Qy8XWM=0uKk>wrCoL}jNRGv^&<`mm(gehG{*L{Npo#@w6x|@oSloAobpndcOuE| zd_R^Yhy_Zcx%LP|4;%|qb#<`vK4=<-GAj@ma{}e8$C2Z`?eNo17(h&=iS{`ql;QoudU4fj_6FbfCxf6cH4k ze(b;;IQ@?YT5{6t?Ci9mIC=?0+X4Lg0ZTYz{D+A5kN-i#2v%rSl6L$f>-iEJI!3om z9_nn{a#}$+r9te?J-@Hm5kR)tuf{#fnhhBBG zDt)LrYd%r&7qsL4K>7)@ovQ@VvMjcb8whlmOtBhJ&jh>%Sq+T ztp>4g8}in^80kBoz2j&apX5dc;}n8rcrgirpI8&&fvmy%f5LBCK4u9%K}t37=SCXg zpMvLCm!01(&NfvC(3$_oD+QBtD?jH0_Ml&VeJNeQgX9o|3di4volA;;A_0d~JrK+ij8j#j(3ozI3L!;pemB!%wC>Xw7Ax7YF z4Zz+MBh3on9s)F5H;yM-a(9{LWj_)9+kJj_>-rTRL#fg@1pI^z#_m{J89$0hy_k~s z_;FtTObOjP4a;U-%gkyk^Q`-g>e9P2)h^zORG)8<*v+a^KIdJ=bu^F8X`k23f~`^T z@s}55WG37ccqd9`qTc*g2pQ|K@3CiapZyfe&8DfsE$SF#TiV0J_okfsd`&gqsdbWU zS60Z5detkipqSXG-#Bj3V@ZKKer~hVsH(f!FjMh5aQ<#ZcsY*%-%dZn zrnXZJ`~qD9R!=BX{hxf`LYfZsd5S0-J($5{9s$|CtYn;T>x#&AFQhgmIZt1s+7fo# zws>#-i1_()YH@6~w|sLSaJ^cK`pDD??vNx3&CJZ8drN$kQBKc5ip@VZ*6_rI=MFD# zpMLuMHFZ;7nM`eDeu_oGKDE9v_HOMRyaqi#nAeMkxVd$7uEkW$Cd6+z`NTj2@95E^ zN|1?x|7>LZ#I35d@ouW~TdZdVgy&~0xp<4}2ZAatwg>C<^f0dvxwMb{M$wwtb;?h@ zyEM|>6K#i!-k4WcnC}+X`B^c)=9=}c?J>Rwuf)f8G)7R#fqag*EBCw8lS2G~SlHN_ zbD;k_0h%3rc)OcI1?&HO*2*?U|j3TPbjrBgf3#PAoSsVxyLd%F`q|`p)^8 z3F0$aNchi04-d&0RTIo`kmx|1ey>8ZFNgo$K+D}Ga}L|RyZkG1t+$)WvNQ*Iv}}xs zBp*_U4}rWZr?l1SybQuINI1kyA!GcqqXqHQ!d+(Ub^9uk(w(I)j0$rxTAGUv_+DKt zx0_i^KtTHOYicKGJ3NYyAFgw~cFiV#C{!DhMqvLsp5D7&*KuH{g)?LJb`Scb0C7ia zv#%X8wfbq%$>S<2-@hC`MK&5g0osMUH)I$a)Q9bfSSr)C$bbIGHPbsW5*!`!!kU&?>uZg+6yF8E* z5kW`L5yru^)M{qk&PI<}Cq-zGq*mWo4C(lOna#qL@8cp(ubV_gt6ac|0-nXSljlo~ z#HHhXePs#<+v#>d=K}@{gsFg>bhQ$=RA67*ImxU~I;u_W)5w7%leR+tmN@TG#%4yJ z>^CLFsd=2LDrJeS^@Sc(7|$h|IouJdWqDDGmaTUkt53^Zd14{=EJeJ9{R4BW_3zj? zU*Cg?ACB;ayt`lc$qCf+BXNCE;ypZ+=d_&DJ!AMxI9fBUCnMhVBnFV8PD0bT6e#^fPG3=ge5`u&n0 z>RVPE+R@^zTxo3$xn3HBYPVamAV}YO<2a=}i|2^vclK|KTaTt~|K6+Ad<}7Cam{%? ze=bRv5@EMKhG<|c+(zu&ny#AY5{R=*)*^TE-13lf(tbRgk>7(52zG+nE z_h<1fudp9ZXj6sicPs^#e3{-fykExs9f$q&jVEpuS#twf`9GUouTO5`f74WFB)(%( z`DTe$uyOa5__#L*eR(PW*p8~n6!powj?~$1l;nv{i&XKR z9;#Xwt`ui3hax*IAH12?ovcd9yvzIXe75x{T{!a-xgD=LL4+nf?-?jQ0b#1kf0PaPs;W(Wg{}qJq@#-)$-!nyxU<;9`PWn zHWf={`q$1r6Fgy~gz#303iDR0R+pTG)vGU^CE;?tZX&hty}_YX zZc^NT+_25=FdpFo-qRkpy({!Pd@T81d+(|U_hEc_ttr>c-i*tB0!P9(nl5hMVN1Eq zm`Iac%Wu7HPeR7qi=={-15PcU>yQ*|1;f$St>+(GSG(BER@Hg3tsXTwoiA3vh2ya?K{jpBvAe)aT4}-OjfvZR6u|R&t1stUUUzrKl-aX!L$wdeV-B1={xu7cA^2 zBz49ee*0%U)omOh0cT4xg)Zv7gnG=nri>;I4MV-`HpQm!VRPBF^MemIkmuSKL>E^= zPMuiQ_54bmXivKeO7&IyPULh26lFPnxk$HvW=5c^CVWDX$)Au%8>XYm#Gs zAr%@xyZh#+4#T{qDwfp&$&YM6)Y4`>PC296zUE-GsT`f%ZE=5DN%#6()yN#hnnn4} zRiUS+$X|{Mpo`m;`L(kury_dq)aL8Yn>eN!Z#o2V26-GkKU8CT{<@lyyqRo+-a@1! z_xwQkJp=p_x5~2 zEzv(SzNKl}ut|beqId^a8V^Ip9}g!tjjfYF)`C!`Xk|kCo0RqEGW6cbL-ldEMeKC0 z63`wnE-N}ZVv(%DUH90?Zm5RzL0TR&@^L`Phy^7O$9pZN!1>`A!UnN22>wJ!TN|9< zHu$l%$~$d|$~x=Dmi@PXn%a7r6rQcp_U)jKK9EcvtcvyNkF{ryA17wu_ZISe)K1o5 zMg}9>#`a-lO^>_7>1uFabt%4U{q@ z2F%RNZ(wyzAj}AqpJLG)BlO>Xr_oc`W6F5Ym{~=T+GGv ztHNY67ZSe@>~gMu`ftN7%ejBak&XlK9}N;+Ogb>b?Bq|#EK?wu#KOw@0WkYq5m>U4 z7EQqzs-aFtosJ|8k{H>e05{YO40s`s|6mcASi<7hSdKQ-BBlggV0=Z+=CRy41(=#G%2Ctq!a{c-9Cz-#*M7M73vL&zc z&+qSKYEtr><(C%BP#czD`! z&Jf!Juh>*C(_|gicrBko6beQ(K7=T*97i=lDCK}_D7>V}EGw~S197^bFhEvcZoG_{ zTj5$brqDASM-2#Ei}$8%Wb`P)$7(F)eCu85m%HU;YJc|`>P~+r@m2lUa666DP?I>Z zRf98y3Rs=FgQ@w%X#C0m$4bJAfZMgqp05XZqf zzBosP16RiXYa)MR3^mDz)>q=T!@q2CS>T-s>^QLUDAu*C9C;ExC6|L$iTo5hY8L#z zT}H<#_yCpD$UDgn@<(>L{L7z53`%nDe9Z6r@#9BC6n;X*>Ue*hrEU>dDqZK{s=7K_ zOy{f;6v7XO7>Xz=#=;UU^L+SgBl{n-E_cDgmqFtL^J-;A8R0xh+TVZt_<-qCa1;kN zNLPIs-z&|NX8#HQQsYglHTeU-4}7z=_4GuW%>$}}HRzZ?&#YsJg8{NQof|sNs`ooZ zM+P?Lk$=SpHl8qDRL?UR#yYIGJ@?P=`EGn_s%L3&bZKmAN=jD!Uj0A+j;?I`)5oft z{(2+3{PyYt4AF?C4o?!-8-(DPG&Fz^y zRLf)A>WQ+oUz@1iR;~Nh>bukQ&{rbkuzKy#(Gp|4oiHwfP2F3<|A5GQ?r?TXO<>Q?w8E*4 z;BlUX^amI&K8*%00pPGlyD!akn5d<&AOIy|{FET2x^0lyN}C|EFX$~4!J-1+0~bj* zD(MqZFYWLZ5dr?#zC8d<%RBe)S3m)z0@Wf!u7cJa5~-XlDoO;2Z zcFSMxV{&Y}!j8cG>`eZB6t+8|%mWDasZ8?Sj9c@{R#vI&(g9Gu$5(;DpS5}O%jE5Q z_I&+<>GKw1WZ|&c2ac)*!>Rcr60!&G0VWQ!gs0b!3S2IxTyjq7hi-Axrf)yy+iv?@Gm?^N51k&Mq!3MCF2cgHEa;@91X`8@{e;0vAeq_e1W!Qs&E43e^eZ-_DuxIskm1`pZ_%|T-IfL@?6Vk(Ji zWC#NtyhxtfbHs<9*ZKQ;WI@oAOTZ67eT#TXXU6Y24fjq8iu)fGo}Qk=Em2=#kwtuN z!Kf41w5eoBhJl#o0>>_exTLWIi%)fJZDL%U2c(AX!Jj7`NoG~dEx~`Ac zODi{_gVO4R+u1d8*S78MFf2nq;Oj-xrJ|W0F7hX!5VbJZ2r9V~T8bAT&ii$ITib9> z2asK#YFEY-x(8G&_;!S;h8)xw8K{@HcLdMdhY&wfKzI10mBsI|Zz>>ZgIRzfio@zX z9H5rxb-hp^o)rLR1h?1~fZ+D6M`v+bACePu7B_Z5ob1h|EFkF0P|Tw^J3C*SZga#I zdDm*gpnYl)BRYibMFh{jhH#T_q+4LU2cGjVaoY)l=DXT^0zpE7h}({7`DfdnKptd# zToekB__?`i^dw$jnj$vBP0EjS|?hH@Kx z-Td)`Xq}dzJ?;2F%2FKydSFRxhAS1q)dTifL4-2g3UUxvLgO?fG*rdbHe4-Gcb zKogm=b|_366{Amuik(i%J*Y6BxYD4GXom1btXRL}Mfc#i5J@mm!=fmBhX?G1 zW2C@BtYGZM^YrxkA+vi%cuBeo(z58yM%J2~rZed(yOoV$g2Yj2zmvzn|fX{{PBf)!gfOoStYf`XnS&}W0AAHm*qNY6q_ zC{MD8q!F!5+o^Fk|Gy+5RdrY>HNeS<#UtQ}4&@j#uTN$`mXdJFc_^bYT~BmM4coIH zQgtvE{(U0t*u6w^SbUI4GUOn{>K;`PI&f3Nkl^A6?MwXy9%wbvo@57@vX+8Wv&Z@8 zW?;%Vabqw%e84mK6#8NuGB%q4!<#~qkeqHfs2w|g{6a@%N5_)iT#lb_I8ZT_r#z_2 zP&Z)-;jB)=8yUM`RGdHCVG8egq)BA>3u7m*as3Y`!Z6AC<G~yw(=e4ZXFIv?VaS znHe-(Qpa!@I@g4LjbLu)zJ#efLLxxhb4udscC?L?a1cpNh^>M*xeqxAQ5GATo41qt z`IGbgM>X{JhFf+?NRT-S{2HpKT^FjD;2u;N`CDw8fOZU0y5r_6SFR)iGw8V3Wtw3% zFW`}gFMCe=Rewyi?Su~=g^)`z6|Hgnc&MwOE$Sr_C*i?L)GGdtZQG0x-&<`fc_^3~c!0*q z>0N__pa++m{g7&ekkTWx-7dog8*Xkeopk+Nx3%^{=2s#Ocm4Wxm_N~bV8w_{DK3pm z9WZn1fJ4tJh_iOY=&O7;F& zSfMZpSxO}x9Ubqq$e0*SXzYoIYN7g14^#9A4rW4}PRlDs{6dqg6J|50PpI%aF|Jc5 zAtXsg-L}DVN)^-!|vN z@@hg(j_5q&1)&E->w(W8eKlUEPAbIbrff?tgb8X0mOUH0qM@Oq3RAXf`5ZmbCX4Jr zw{{-K)>7i>1ZB~S7cY|S1H-M~59Y+Mvyhq)XKvDK=Mxhaj>CZV6!qy@8JkXz1<4HG zs@jiR&#q6NLIQ%U9(Izv9)#hB!qmX&+sZkGusQ~66u?>_DOo*(eGvpNYrZ9Eb4gqM ziPe#T|JjKgYls8l?vend7;|68t@P1Fm;vh@7nwLO?=0JPfxw5H(mj3PS!^v>Aw=Z50(ImvyV_bQ>YPfHwvy zZZb@D5@Wa4@ArbW5B6FmcoT1HYA)abh}$TV=n=5|M5gMXEAY^Vw<|=Amw(5O_ij;% zB2j2gK}D7Y`3#XL;@*4N7hg~O+V3$Dy63)C)<7HuKEFq^9kGfZn;qpkw3pe4zO5TF zX&Tas-@wew33o1#2uTYBIr4p%0K(*pS7QVpn-?weHz0hiD8UqrIu;mz3dsu_lsiWr z`<;NQ5>bl=8DI;%yI_%vR$nca>Ef4XUs>ly+w#MrqPQXPWUW|%-3PxED&*KdAn=$7 zz9^17GY`*UWo2rljX&5*5klAc4rx(DHRX}Y3Xk1l9D)dNQZRH zwSC_C&swu)=EKalaV^&K0OxG>zT>)nb)TT83es0_Z{ng*s4KEE5=tl(rY{PGF?9(W ze!|-~J_r91bdpqeQnod9axri)K|L{Wva_;vva&F|A}~O{FusasTA)x-X0j3wR9ur*CtO@r28UX= zHqrxlG;ymhUi!3u7gOnCJ?3jU9E!NlBU{A=&1`|ee!5tMc#;n!urAW=lDOm1-@Y%y zV7*Y~LwTv?DJC8Fz1p6gxpJ4iQOE8N#&$!iMfsfiJT7=C}x@I5LReoxH# z|ChHrG=5P`4Qn# zEsX9wwkWLefxH5d0F=UeN@*6-dVUi22RdC1N)$nHz8>kuC-l}k7fB}i>@gv zE9=eE6aO=u7akpb-D7`!K7hu1Dulge>SyE~l`NIEzE2CmdftbAJz~c!!(t+*r>66Oe;0=^qo4Su8x_OyN!uH~ zE=o#7y1KeoD{JE7NKcRVd;0loCq=qb#Zz-mRmuGy$jRZRq@z4E0yLYdwyj*7o zjm$-16%Dn|iG6>6|G{(sjf|{pePd%IH9Y%0R zd|B+`O6$gU?oAs!*XyxSEe(GfRzpYZ2?mTR2h16h%GZbtuZ_v--SvsYD0=ys>FEd2 zcb};LFn<;+7PnB5qf;51nc|M?=^^O2@VLbC6dwDB#Q-)tJG-Z+=h9@g zaHY#ecfZ-@RK2T*hvQQ3?TVKx{^8*Sr$>J;Oy$*{&72)?WEwUHmsM6Oe|mVaC6v6; z50A7^_XvWY-N*a(N-Hn>eEVRYY`EVOZfP61+CPxCx<)y2Z_}+zkdB%In!lQ z%k9*0nP}dg@381kzYN3V3A2Wx6!VNf-l$E5`&as|&Z+ssyuLp}zDVS}A3arDn!?^S zd%V*lUi8CfZ`4dBNArfFqT&Z$%N9MKQ^`u_HS^(Iost7~}a z*}H(ip2gv|J(n0^IPy1cHfOgD!OujW!F||A5_9HS;cOL05N`wA% zS*wYPm}1M}g+Jy}3f}Cf3EqG@M66!Dscee*>1N)5_30F|VV|sW$}M6E0{@s14)e<77fkOIMl?e9rfM znwpzU%B#JXRcDL8>sEg_+*#y?%?Hcj@MNb4rj^;izyKZ+#}}q+;Im{%=i5FsIu#aZ zj6tJ6Aq`FHTI>#mZPly9M2a4f9sFU@m<93+pt2(+HbDboXg2 z76<=iYoq@aqodvBaks@}k(13v81>CzJ)f-}@pC9?(VgBt=coMQCz}_}kJ0CwTU!P* zO+mYV215b^FUiF)y&N1?`ldwxUDa}-c8p>Rc>?4j8oy0@Qo3OCUA}Y)bxTk%p~QO3 zVS7%N+GCZIN%i|r*z#n;&Mc9Ukr!>QekFeBFM~lsN@|8`5#1k;UK@d@e#dRrZG1+@ zz+gtb();Pnvr-$KJM{GQMO~&v+bHB zva5J7b#uXbnV6slY_%U6AKz1^9T$w_NvW?CGqD}v-BHPJ7ER| z>Y>QyEO|%9*-+Lmj;=jB>Oh6U7B#leE3q2AF_xDB?L;a=E+*HNC9{^aks}lyp4_*< zYP67L(G}M9mAV6H4P0YHL`0#m@yVc~^TDXZT2cu*&~@yn|-Y-nu#)$wxfq8#`Qw!SA6^8{;{ zP^mZAS3-S#QFmBb*ZgOALM_j2@~}8iMsT?V>(($TZm21tP{a9)tVi+$PWV!e|LrYcd<^zl2 zT&lCPvjp)t8~)~|rp;CwpWaMG8W>Umk3AOHg!AL&j!w({eiv}A+HKFZu`Igp_DL6w zr@R>Waz!;e2Br`r->@0i(8$PbvmS@L$7OF-BPluAVzNpwTQ#Sh1id-kSX6xKp{ot; z4X&5*JX@8_zaGj>-tn<|zCMPxx3|-uU-#rG-%;?ljEx-!+m8pYoa(ZDQ_8^Asc>rR z-|Jwn?ftI74MnM>lh4-HmfCCgSs1mboU7}>mF7Z=fxF$w!mW40MWRf2vh-@bq4>=N z_mFcL%fvp*gXM}^$XWJrw6~vzV%6cfy0Fk<6fP>|y!kF8bvn@b5>4G<@ z7Z_d?KR@9{*7IngiO6p6BiIY08>;A5D9cTT1)G1e^Gt>JHufp*!(#ac)ox+d{qLXY zm6gOb+XKBtV*#A3J(74vN6eH-s=lB zLZry6{`Ey@@cu;fa>j>RPOBq?*@N!QWBasw=~{J49}f=>P}=q#{_M3UQE%U3DWr-e zo6H>5zro?ee-o$Yod92l!He(0!oEOzO9*FH{T@Gmknwh=zp4VJ8D-Z><)XdiSyNM^ zL0wr^ro9zwEFpoFSGA2BLc-e4XU5LPwjR8ARtm4ZMoJpzM)9Zib6Q%SM;L{DHM)cT zIiSA1aTp7otr9P!ZiMSq6enDdi|U@5nqpaFV`EcGHi{cKfMHLxj#L2fgmT17X70Mv zVLh0w)-$AI0g;As9tu|jT$&`q-CG&43ggnKZ9X;si0Nu{ukA8`BbQr{i5$yR<^{xg4)5WkzeFP_5SR=8{^{QWbS09Su`z0NGvEB5co@D5-! zv*U+mMWah_Up>$iZlroFMtA&98HyJ3nmEVnw2N?!1ADXe#e*)AUU_v(S35$miVK zx3jM~spYcT`LRw%#K^#Bu8wfc$#w_xne>_5Sf#dN9GlMO-@o%~rRck&qNiWF-7M&4 z(OWnD>)&3!Uii2Aec%cIXql7nA1KH__mV9Q|Pi z@ch`^oY79O{A@qzUiRRJH9j+d`iy{v0BF24Rl?*j>rT>|#ALX0=Z@pbP2V3sc;H6l z0eEsR&d>8GaGZM!mftwCT^Y{n;R@I|*qS{7^y0KWP7df33i9$`HYpUNs+qupuBtpo z!>yTS)UP}}nxD!0_IbM19QbeSXIo4>y1PQVb=&-}P{_#1wGUB~khGLLE`HT0T6msX zX*tYB?R{Wyw7=1FT~Wlo89>#p0Z<4Qy&93Rf{~FCmW^kG(!G~p_+TTO0izQ+n0oUI zN_P=apaB`Bpu=0Z*v#DA`+1TsSavOdJEbNnUb+EV_zLR@z@sT#E=j=t_1ah|`YAqC zAWr~)_+%WuQtxhV)mHTO90r)x z9{V+)hGW%qU8gVBobG9@SM4ZBg;PI)I)VT=1kz47_$8G7v>eWT0>uyjmDNIEZenLhB_ zc0tMyF93GdYLpul77K2m~$q*9zVI3Dv*G>JK{5FrF-wV5}&p};T1YG}~ zP3I_9FW~2sqMaH*vVTPw*Z&5j=glU``RAbfODr)7WWa@-%o+&}k{6uhPXf z&2?+WKOi6gsw1}%EEl!a;Q}M+#)*juAj>?uo?DVeP)^iNC}80GzN&nSnqFVG;jtX* zR0rJFS7vXN21{ymMmt~sLF^(m;McK@3K$Hjwco|>o+R>-1MJ{IFeU7D;4)hA4vM{C`Chf$3etm0%m9??7 zDIu|a1$0RzbCq1}1Q;t0`r9L6 z0n>u`V)L!t7hXORZa_vyNB0znO=s34$#+C`T6XXP5O}7RI6&~6yGtqVEh3-L`&r`h z6f00Zj86WDyu7?OX^1+S6c`?!`OptHA$3+V5_#)#3H&Y(kxnBqzc4DIp&ZowlT|tX z&$6l`YA4=+EIl(bIx=#4>1k89wzjt2%a^SEj*lfI=zNqg;{%kGl|dk63H%Cd1FAr%lFu~dHCoN z)CW5!br5ZRiRwh6qoQ7SnWn*Ng(@a2L}`x#EecroNU1Fi&>b8AD7`W;j&pdLSW&IP zFM`N9b&iffD+xq(HLA}(53f4JbMc zmL%Xhd0f<}YD>=>HIKLb#R}v&QmSQ3XU1Y?#pK_`ox)N}lZ{V5IjURlmHU->pSmM0 zbh6r`#0XHy7ig6L;|5^mGmH5^aY4j3P=R1N>!5DN<@7*5fwlx1;2WUb+dyEn`E$d? z&*FdnlmS}a0(i~w#C_6zg%ui?WPxEbY~q9G$4>yLBeVcyKG0q7NQM5~;)S&_#4>iH zZF5wskj@A7%>EvJYPFw9B`p=P#&jBCoo8nx`Zeg74PT$7#dDe9W-26qhIXJ4237R^ z6$(C(g~P0R-oXL_bOuZz5K>3O1vFLw3o26aO1%StRp)&zAJ7^2|@y%7Wfc}xDE+Q)W4G;(POt09*Fbe)K z&@rBt+DtH~9D`z1wc9V>nIsqu5EIA{1w}~(E0Ds(Y*z6 zv%l8I2cF0M(V}{-w`eKaTNp}Uf;BKq19Xj75)4O?BCM(+kvsr8-}P$GvKA-G?C*f2 znW2~}CLtxoWzg`p(+KDt7tDwupy}O};cy&kS6@+&y*Yt}8_cTuMWX_4+jM|yKZ8aF z^*>;?HGJ`al9twC=kxX4l#_|a;^ll3m?dd=%c>9cG`u?&Ieot#5dW#!(+WEZsGamP zv=Ka4R!rdXgT;CQ8D-Gc)T`ZjVG=s}cG5n7hFTyOTT)k7*J%V&+$|<1rlK{p*XPfl zbKP}8kp}&2Yj>9pcuz+GER0lGAY{J$ldf;z?lzY*Q@6oWSY%v)i8m@5bv<4yO#lD} zVgNGuAP5A3ly59+Dk(v?f9PJe@Kw(@oNut_%1w;-EPHEX((3AD$coh;DgxZH@qDps zJ_g2-!q#@9GZiX_<(@4N@sd`4E==>HQ5i)=Gmy{_8H0pXa}%J8!&Dsxw40a8c@HEc za(g)Ny~o{OFOu5Snu_Bsh#Z(cm;23-|4`wMuk+mUpT`F)I=N%)t1|d+GOep@YL_2< zSXiQYotf>dG=pvSBJO!Gg-Dnh=PK_rF;9 z_)W!+x!FPLPnxJGc^*u2X<&1PHf+PE7RnQ;T;9~$YpmYOT2B-IoCyl)DOg@JGdAV` zD?sdI^AXgW*ux@Fk`VL>W0aV-gX~;h%b^I6=toOHym>M7T{eh_p6mEK?3s=o)$i(& zf>COP#?_ujx5No*me4ZCs0G@0sD($}3M9H~ zgzZq>R*zWC0XV_xPXSrggkpIG7z?oSX&ARfpoP%Qk?Ib<#7K!Xg??B{IpFQyM+BTU z;{w1}TEIl;$B$C{RZA8@cM29MSf4@vBksA28~?-nDOe4qwCc>PpYEOy+`$r$iqi@&$_{ z^^ayIzTU3wduy7yk0RqZcJ1%)K~3HYE_L(x`==Rt2W)#`q`qaV<#me;UCy9A~OH z6iS=h&cash`Dr+pNjtLiP0N#y;hh{tEumJN2#t5N?*PvaI6FSL3$1N!L9k*9twsTQ zJMwXA!1n0mz*k)lTIkA{rWB3CzkiC`>{cwz_>L*|=MZ|d?P14@j8!VrNJCDQfL-+Vzkp;yCkZ+C`Y6`>A}%XVNi*DckrGT?Zn=&bBie(k-aFP3Th0370L&GeZ& zZSAL>+CKQ%U3FcfK?c@Y9G|^7CfDV}DWCXY0Dx-ag(g&LKlJM?~+dG-W~ZCQ#;VvuD~dREx4Z<)9>$%t@ zfz(dn+EtTfg(8LOyZ}7KmstQuFxrMK$4bc~;5C|LkwUk{t<3 zq!tVm?4aJWPq)cWSoUQ&KMiA644S=%IOCBkLeUZJI34?26AQCs{u*Z962~t@#=kI8 z^FMXe-NyL`2OXYUkn@>-7jAEg!I3FbuUSjMHgP-azSe%=CL|zKuJO-Pp9?-4@%X?W zyE^@Iln(VLW*@0GJh>|U^^t8k029%p-|eiZ=u)sZ?tlG-o5b^rjh5DJQQwKymhH-7 zkCz#Wac!;JQOB~s@|jyejBWIIMwi=m(Wd04ELFTcDGR0P*#^VQ&OMQm|L<68jR)!UH2ex?@ab6L|i#YLN10hzXnUDzP`Td>}Ul%7Gpu@j8wq3 zW+`S+51=RF{MV+C9ge7*ZEbCW!DGeXb+^jF@dc$J z0kCj^+m0!6+hEW0g6NaoDYi0{gVYDs8ElCFk_C}?Wl1W;jees)^*cSsBHRx()ak+HGPk80HjBTtr;4oif^4x(+(#2)&0 zeS9Q?s(okCF=A7^xn=j#DKM(T32!6?|3beb#|z`4hP)mOH70vg6p8wth>CSw(O7+M z^AvXM0>jAihhes1SqIvIxpSr-+#Sj06hAg+?fHg`z(2f9V++oG<^V05kXs z)+>l1vuWXCGkwxD7xlr5aa#M02n!_tJ8a;v=%>4@nBqA&B6fCQbar-Zi~I#J)40b# z!xRS7X|wWF><;EQ;>rSN2JI^v;M2}rv?3P}WXg?=AF%vw zYEPZV$JsV8(O|VsLizyW1&Yvr5iqDI`d1}(@g*RYRPQ4Yx6by)Y(Xeij-A^;=aQyn zW-@@r+R?Xy^g!SVoyo%d+=rFvASEK$-nRBs6@oOxG7LuSo89al>V=I}cr&xp4e?>T zWW9w%xlCx)rDb-O(Z~OT>lRplm6Zvo=IJKSE=o&E5|WX{XRP(le*OB@aQq8}5`n}EvAuB|-*TPOEGq>ysvD?BI0*XP+oH^PUZAr*xO z$~>^Y-PO)eyOG%#;8SQUO&1$7KX&H%h3b)Q_UF00KoAN=%SpJUXLA=vgyIK|k4}%g zY;$qD+g>`F0}KX*bPMJWb82ShA$$vBJ1zn}x7=(7ksSeF$%g_WB1z!C=oV}&rury= z-~@Ek817dij8&r$3lyLJfdR;WAcjoU-fv5O;tn5M=JT;yX+cSeZSF=6^$PAN7w^%I zwh=rOPqq?N;I~SZ-_b8qSpD7+-S;R|cW`Dd`As#YHKe_1-|Xf~vg2AT?BFFI54o^VzP;y?*^#!0X5GC4zhrb3gBZ2$rbOCpGw1;YjMfLTe7dckX`T}q!Nf;z>RASp4Rh9FT4W-Kn3ss` z56sK+(IPQnL8fESx6o4q2GP5xPe%I4M6{F11`4oi#Rp^8|F$z8GB>6NB_HyGkBG@23AZC4q>K>b_TkXyXwH5^y=}&+vfx*Eu4SskDK{FYw z&k)}XG57hb$RP4!dUkU7IG*En$LDZ{6xY`#9kE*w&M9=+&_yaR)Q%d+6G4+mgSU$Lb-lu=nl9C%wAgM7tc%lq2!-t{-)hkPuUjlL;=JGNT~)?7auy%d>HdHV6|0PEBV%MXUP zPNiD(5wMPW3yfNsCl}TL?Lu;a8k{D5xT*$;pLT_)JA}Q!83;{HrKvsLqX0$VBS;S* zrG8M;b)$F0BlCqK#_6)It?Rx_kBE$5(RV{eh5}bmjerA4}gb01y>!cnL}Fq zHZ(|husVzmx91^XA>^1cHK^@QvpQN707?U=dGD=YQg)kEeaUngLC?F9{Bi5k;njVp z_uCG$qinq8wXzqJp4ZSzRxEup)L8O4egT9BWxe*%V0pf8=(4y*jw{{31a)E&w6^pMY&)9W?YAK+w>vh}^UG5Nm@K-7zZRc-8s% z!&#M+8sp$eH5Fy@oXbB;qXYVA|`K`a$!fD!2b3` za5JV?qRP~AH}BTIy^E8p5(<&o;^f}a-@QAtmQzk9`P|Tu_WlBO5G^f#0|$QWTJTJc z-k#k|72JcxJWKvF@CJn1kQ~BvPJrtctF>wbjN`kM~N1z``6b2bC__QuMh!4CCGjx7A+_!Kw>#y zP63TCW=IdzR(q^;ljf`>+_sT6pL}Y4rpd@Uo3qNA_xWaob{ZB3fd&f+(nJAXK(6XG zE9(`=ad|m1V}eWw-((MhDvJxn=*NpeTs5_|HhNmMSes(b<5VNhDns$Dd*mpmJT?CU z7yqXZR_X;ZO4ELF|$1$OkAz|UW`;Sr|A(=)~f`W@{eeV>H9 zn|Yo~Y^VIg`N9RG_#`%h^&TDj_IGdJ@Z}qn-+`NWeZiBGGMSkE-x6BYmv3@wVg22; zcO3vkdq(iqw$7(GO}9lwYhJoixu21Ur|?~;k^}|I6aL0!TwFu2BN2TKqNm_Ixq&K0wWS0?IgPwr*HqDS zoWlk7BG1I4Xg>^ArY+;vKg8@`xKfq!)gfX;N!8RP_xN%8votAB0NYiE3yDZxLs9JT zEkG=Am=Yj;3kD;$J_I^{Wjzl8(;d=ecu0>~uUKIN7%r)=e+w1OptyiYW5CG;vqmXs zXu_fT+uPe8933qzTizffY|S6V_x|l1wN<-Le`I)AGWJ>?;i)gM00ulr@7cig#&ZRg z0Q{+Bz}co2XoyEHFE4BSe)RC+R|x8XLyV&jJ}X2Q0Xtq;>d(Lfin2OceH=V2|Kth1 zn3z}xh&jZ%V_~iRmfJ!pM>fKJm%pj7XoTir^Oz3ho64P~-)GJ*^j2r8Ug#N z#OT?xXAo?CR^__IvIc<`2}wzly+fC6m*s;DBem^r;SCO(@iOf|T`*aSmSDx}l!W_f zDWINqb|pl*U~#XOFfpO;`aOL07zKI0ZZMeZ0oiSC=IaS2LxGizk32r!M0?KBxDq(5K97y8(QPW~ggg^mG zGlVV#w1bd>BGH6+6V@2k#fuo%h>0cC)zxEnbT#QczxDW(S5|@plG2eUB_ToC1@a*J zdRL-+qo6Yzxi9vO;2q7L-#kwb`R={NHO3qPC(RiMUWWD0h})3l*aY7lNzuXr(kOSJ zhn0+}50DSM6a-A6G)t`7v}~&-A%Fx68U@iwOt7rMKv_F}4FN5Kt4Rt|f9a=BUQV%~ zFvQlY?949h^DqWPM?>S8HjcyM;Ny!$f*7D*IvBPngqrsDKE=i-L#zvFplj^a zyF`FAdKpupOTa#wFdGtY&Hs%*o|Nob_Tmg+OQD#|IZcV28SG0FJCD#KMrgHIhdKLcH+1SRBY(Qc}_qARdU;A*w7AYT79S zmmX5(2H*;VKuH9K5%!gvO_1Ea72LV3+D4w_M~dH-8827>F#yl1LWEOE)WiJCodA>V+fZz|>uK|nBn1Ry6hGg4r*hYRXsFbc?(+nDV7fj)2Q znSI0$dz)eZa@*Y5yM$vI$A_$kmFMm#YaIXX(;ncK$N?$|v)A`d{{IF7_c9EGku8rc+eBkzku2&L`$j9X=!=0erOPnWcG4)ddH&>+g;)x!(aVH>=vuOSZ1bM@8y5S;Nj#51- zqUC_{x3-xC&~rR*!5w!|NK#x#*4r<1lBPq|P_u0p~qPP&eMFa>25iK~J0{GI_!Rw~et$qdE2t06>Ny4@Rz_Cnh7kw9=%K>Kl{Wf;c z$B2G^X=f~KtWM-`E*kn$9Mmg=V$Jf?y)g|yfJhJvtbrd8k+}bFhj}}m{#Cu09W>Xsjt8ND>lFm`bXT4w-i?tL65xvb+-P%o z3bOP|1DOOS?eFUi3xFv~qxh^wKEC@TDG}`3Xh!5_BrA};r^AF^XmQkexHO>-H@?~h z@3YLSmVyp|?23J~kNEoff|57nz>r+izkT6Mk{Z>W$xOguoug6HH8|Q3G4!0wO`4+y z3e?QCt7x43TLWAUgpt`rzwv9(o=N+08?#oQHEPzvB2c=2bVIVvCa;Dm1ao^~dL9WH+THKx9A?p!C#H^LME z>qZySZ6A0nq67&5d*a3^7m$*jujrCki(m8&uf$Vy`riFfH3m959Ssx=ur!U~+*CJM z{Hrfz2?-0L-#anu<%)HZW)nn3*)$ry!ugA{i1eyw+v~*ia32Z$QiIKq zr6xdh;l74AL5p*Cv(8_hE@`@2D1h-%Q4P@8nm20C6`;`<4xXMarG>BFfWvCzuR-td zEHf0}X`s#5VL|V?j=d0Z_TUwn_)$Q-GPpC59UW^{sF?10ZQ!&Zv(+cqEP-LWI7(T>of!SJqe0 zM41Q1!(J#1L>~F{D4-1X5csf79Qg0x2;H2rbobq@p?*66G*|A+vh$~`DMgDtVVe35 z<8?6>#tR<44+7wzEBG}VPS?Gy+h2FvR62x_b7Mog4qgrC)YMHq5Y?;1DxtdJ8eya*K-iiwr=&fa?+YD+ z0kWkxp{Df|GT1K8S3Zn62_hzProcFX4yO+KB4mAg`a$%0iJ)1evCJ{?(FpgHHCK+> z(_Zyu%BXfd%+>snNB;4f5UpP*JVSbVI?ElOI5;6TwVtapBPl^i&&1{jczHV0+Vqgm z)`c`>Nk7)s(eWAFY{O5R%lcpp#tS;$wXNF1*0(t|1Vb9M7*HXr|J`ngQh$!;&ai=) z*2_S!%UMX42FfsdoW2FshS$W05Szj_M|*6D!ikc)FHaI>yi z7LhoZXv5Fv0Pew(CL|>dfXq-@BlMK49a#&{ABN(Ne3Xr*zLg=@5qqO`?0H&z;za4& z8}^LIwx)0AzMI$Zly=IDJC~^d8rlm|g5}+^Xrh1!zh# z5d?XAU!Q=FNJ*IxDDVMh5IkGRGLpeDlb?{$=z>fJ!o}b?nV$JXMe)CD?1m-FBUE0U z(EFw@QM0yNh2s-yE7fQ7W9j<&8q*^}G9p(dUp@VHLqJeiDC=Q!uF*LX>IL~cO*ZWjwq)EG+oGknvnJfg0!++hw{r zI}}}2X~hmK3iacg?gzDX+zj`R;cwEemt#zaOjW+B^BKx)k^ZpeWy*B9lisZYw+v{o zAYOyvG@PDryCId*$3#nL|09QRk-StO$-31DQgbZxpr|2$2;odYqi&*e%= zC@L+NcXI@Fz6a5!wM^ElB&r7U5r5C)u&Ms8sYuMVq^D~oZ0{4o@{gF~VMbL`#4VPy z@m}8iYiH*~%YSc~#VRGGs3s_Lhv)t0hTP{hkW`ihB8`+CIFkp7COB)y;^BXbR_PY> zs-eSK-l|$pnl=m7o2o3`J$E#B>QDd1oXFN2k=Z%1dWz$V;lI*BFRr>xzH*~bBQz)_ ztP2-A3PesWMBb4$wK?8~p0;x^8}0~aO(5NBl!vsA_otcH5k1I$E!KbeX6KBa-z$7~Yk?!ZDbkwoQiLE*z7n(WMa{C&9Aa&dM#=bX zC?W6H*)L|)f{z@d#T3+g8Z9G9$Bw8XTcCH34Z$Ve z=o)vgy2cF$4|7HCw#peX-`V1ekJ$>fFv%z>J3-WFg&aV9h8M`+DtWpSx(2|OEmy84 z&;MPD$)pQqP}Wp)wcFs2nIWZVJ7bo!t*Y3Gpu<@j<0&XH ziY{68Z@QRfW~_$)y3_JAoMOH`w+h>%Lfe&B8}o86TW($>W=<$_6cn_~juSC0#mWbs zW;K%k3W>>q_jTD9+BP8xi4+LO|BX=8`w#V`KGZYWwO6BK4PtFq&{ecXLW3V&Ir*gn z7#zIJ2tK5FjV;vq?U*J;hX@7_8#AiZP$lis->oeeqm5{gfoYsGg(|E#roaWVZBiJ2 zM``g@wr1deUrZx_UW>&=VjsuCRiuZsZT7QK?{FS8VoY71D?7-2l!|ty#BhQnAs1Ja zudgr58WfT{w{C%S^a5FalrN6A)DdAdHc%bK^nQ0PWBrrU)hoZS52I?ErRo;Q^G)v3 zN$Oesxc`oA!CcQyx@(a6)@m$D*ZLzTFYgV0{)vTakqzuZxBd3x){N>GuA_(@9Ze;U z_5CMQFA}JEnahcp6g9lMv0#pVh5k97(ky)K<`o{FU^OT6K!@3F5sV}Ods_Wi;Ma+^ zn|piRBL5?JfC=eFm~N_`P_oAeqUL{GjF;&j7gM=N(3VH^S-*p&NJ8r*sAKK< z?}q~hPm3r7Duq}?%6Z*VP~Jc|1n zqS&7wK%*5!jyuxJEs49+DjiS>B-gFTHyp0`0ysstCNEa{+vz=mLg&f2oKzm{vcpqE zIYxg&Gv4v|;Rd$aJ5|!V&WRVwAQtbTBL@=7Ow_=k@w~TbuDB_5d1piQM5a)4n$S|1 zVsAsT1#hp!FAeLdbuV(ITDx%mh@+nP-`BSe@Mm;mP&~Kf@jh`yGXDjJ!|Xag3>vY! zQ$*#Vm+x@V5k`s_6q9$3k<|y(t})!bcg0r$ks+!{V&vQaK}Pz>2ECy|Cj{v^9n9}> z{r%L&@pS-iygKj9^B(aw4+cK)0EkK<*-6AVy8Gk<9A_Z7FC~QyPVNcti_R3$M8M9R zjtiYt_|g(|iYJZ-kpBoMV&J0o{ev-C)qm$b-{2_~Wx~(eq~9;@dI{GCI5{dXv86mM zjdM#Z)i!EvVQ`MgygUWsA#z+E%Ehrgfs>MqIu%nS0>cV3w35mWn%L3jB296YSED}|G`3+9 z@aFwgPJW@(FMs?&PV8DW4&ReEYdg1iyR96Zxk(*)$Z>CIJtUlT(uNJEjRl8AB;bPP zy&qpyv)!YOg0r0ZeS6BG=P%hK?eC#}{2!^A!`rlnGEz)$*}0^TX@_)d*q=3P_x63H zalJAAfV53VGwLpF)CFP1CQh3z8$K%Tkcqhem8XHNA7qp)Y-}@BWqp+{m3xe(`&xe& z<>s-n^|EGW zXq31;zGa2rZ~h(XgCB(76V31X)XaaJ2;nd#-A%qSxc+pTK~3eBG^!(xy$6o?d;>Sl z-vFXq`0F*tHYGL_NJJJ%av>29uqOfcal*lAIO;7nl&gamPrrnm{d)TJ8u+(&ppZds zWaiJGcJR{Irqmc{4#J32#oiawK7bq-`whT>i2qlDcUk$o6;bKk$Y5fH>^-TS zmMFWcsZTIJ>bi+TNKkH8jvkgiu`C}m6gqs0)mh6Fn1wm)`fyH9YoX$l4aQGh4U*Y(ItfJz-6NFyyy8mZYJZo6)f2rcc z)HrF^$wgR0Zx8T099R)$R8P3&xrlln=~>eI82SYDZ4L);6kv2NTMsSpT0JelvYUc! z)bMFGTkdS`%ZPQ7E5MadIIa$d##z=#*|hZ`o%}di=&yfwDd;9}YmlABg_U#y=;p1z zf1&jlAK2L-5W2>m{S(y_8s|Z1*NCc>Z)K;d{NOU_766X$#M2~@9h-Gz76)Q*;%n9! z$@wloYUz=dn!y}Z{ef$l5J)s~_!q*?Ov3ioG%!n?iY6L+w429VFC7fqS%oSwf+j@< zR)YZ7|P3SGwX1~rS6@--=O1E+5pK3X7)Hvd>mB!h= z=w8eAVlR8K{%tM=xYXPwf6r2~LWnp3IIAqHqs`<4j2ldY0#ie#yU6StnvM^C2!Wg~U zliHtkp+n*}a5HqeD9#@;IVj^_P_TOaL|K17Ji=g|H7Jq)*NRctUd*?}5weWl_8lxc zP_aQdpmG_nhoHedjqPobn{X})QMn*wYibyBef$IFY7}D z3PZqQ?h+(7I%7nOAo$b)huvgBK$De`(T5Xx$mh(!c|A(->ygl`vZAOYC~I4P|C+$Z zMj*Lh2uP!P%N@g+6Af>Vv}OixziwixBe+)n?PVSs53J& zi(am%>UtlVAV)tCRlrYuBr@Let`BN4dSKLbSA;b?rchZ$$=Eo(ezF;Q?rvVkS~K$p zJfWL=IJT@@Q782_mp`WJ?P;-sy4TRv^$tG%B^WsR7&9^9y>tlnC!b81i$_ul`VjLe z2ILgoUJe~KwSRrn1wd_9EAwGQBOW&VD}*Dq(gE=2@B1otlQ?1>xN6r%|14JLo~moMLGSr%{B)yb9cfScxyOKCd!Y zw+*Kb6YDTRt08dw{eg1635it##ufv6saj{&qkD7PFG)zrf8j{hm2gkF>n%q zYkL*%1BnS2qx;FYyzYP{Is+Y>^pwIR)?tPCrc<-rE!tsYGCM2Sl%-~b>RmVc%8nB} z_ISxLF^VZE(q!23S7;;PlPR`Aqer69C=h6xk&k-;@o$YBMh`R6o|KG(KJ-mr(1BY8 z*GoHPP=+Gi#z)&e=jhTcvNbjAxxq@<)5E*o!3W^x&p3{a?o~WRx>Cgc0I$()CWv7P z)OsYKj)KGF1VFuKA%$fMCh#7vqy%mmTpB;A@RhRtJ*-1_4o7uv@QR(Y#&0$HMr(DZ z+YUecS*Bl7Ny5Fd#Yc{5LLtN_6)9p^Dt8O^-=ZI>u0B}h8o$MlSGgy>kF6C_MBHM` z7W970YB!ygP=%ZP{K3)9kf}U~4$)}*pqyKlnbsKfnvR#y*~|8>cjOp*Db8D1eSeR9 z1KP1jOpi`VW-sYmS+RiV*)=o?l_tgK%njKK7f1APx;IC@chO~Pd{dhYw|JAN)UFl1 zNgtrF!53Y#wsV`c9zbHi@BI%!dVZ!%J$EJjK`KfS_1K1|-3E|lYH<$bt$Zc7^543A zD({?R*m+`|u64x*kF9GC7PBC$|(P=v^%m^ zoAT+?CnOq+R7%8$Aiepq=P6Huc`CawzQdXdJA$~(RT{CR z*1ox`UAM2bX#t8en8y%1JVl{SwN#9?dxU;>OXhZdxatwt@a3MJao4HYC7gk-{sxIIxnI%vNYM0^dj&r~?90m{At z5G^?FA7(QfD8t7oYk{9Y(z18m9^t|c=Pl#9jp#muptMmdJL6*5ZyTifCh==2^dBFH zn~Pw{;RwUR#cY9E00*)U0Q4>m4s;o?sSc;d$wzG^g!Vtm%gvNn`&7_=h(zcqH= z@m%)p|NmH#t?WWHB$AR%AtV)=vPWfSmXR4{hRDd)kV;0$-XkNcMfM(*5K2V+UT639 zy}#ez{rmp$yB_x+_w~4Z&d>Qd&-Xaq$MJeSk5jZcW1P-xvyZKqoj*Hy++xSU{B!@% z*Wsci6Sdyvg# zowD<6UOx_#za%zSR`oD4oO&ddt53cJ7?ika4JD3xk9sQwqO5G{+yhPwsw2bGAsXu< zocZ2PRZC;*x1~0uc4{$GI{Y8krfJ$c{BkkCPJ1F{moNAf#<2t%j23Gv6Jyw=y7zb<0!cq4h* zT{2SsP6n}wbei>`Xl!p}q^UxC2X@CXEWbo19tp~(KU+rAac@WTHhueDePUJfN^#!| zpV=n#;B)RqPp6$2wH-(!jM*P0K{C(|rQSlQIo%&Shx<6(=zUBMN0p+Wr!sv3kB#pfdYN%Ypb!O$wzA4~72 z&AEM+#`seBqU!U~KBEUOi@lE5t__{*F&z$OJ%^zJu#?;C*L)E8qu2~#Dv%jsFo6~7 zs0)}O)le;bc-E{ffQCdIVo$kJ+MK#zdToZ;HpR|vG|IEhHc$FUs~nd3XVcZk9#+6; zTUHe!O3hCG-$ zgm54AM5owAsX@=Xh=JyC{F(zGX1;z4UVOi6udoP9)5YMYT=J4On<1g9#Y7VH+VZ~K zhzk>`SZIdQHr{G&hl&xBNe)MyU*%l4aOk|fJ#w|qj5EMAf^KT zZEoh^Xn=Lqs^^su1iFhfUt<3+mrgk2(H(;_arfQ~S#9Zde=jn<*x|dY@4VqcIW1Kp z8{;3-w&~tV`rDyD`^#7F50fnA8=WQJU?UU16X^w4xl#M#@}wr+g!&6Tt!W|}W# zqCL&0{#MkaflnYvdcf|TfO~-q;-c+?o(l{(fC~`E-VBI57HN;E%r~xm*htLj4|7kW zg=d;tOk1B!9V?ek%t zuWA283Xwr7riklpmXerU?5N-{I9H%W%Zpe~hD^lv$A(Q!)*Tg=0qp}PG)ltM*h0mz ztA}uWn64s!EjCoQOZ-dkABszl?oHbbXy-)8^yoZJxp!}*0CR@zqC*O;Xc)Jay?i`?DS@n23Pa+@DFlWC_0JnouZgI6dtOj;uO=rHuY_6>}sn* z<@58I<;pCP29iH#x0hAy*y`)S9X6bFTr~n~glkApVb#yrs8nJn@NqqB=jq z9fJPUGB2&5kPKDu0b~_0c!=!o4i02ZsVk>P^Uej5INz5XK;_|_RpF}WAM$T&ERvcx z?k3_W_skCK1D~(iP9BcbpfMSgs6b>C1<+#O9X7>-fr=pqGFykzQ(fk-bUBiUy5o9& z=Hsut%iZyRa@`YjQ}+Hx?0i>1DRpq!gwX^=8bX-DgFI%RFABa|ZN2p``%g*h4rO^v z&70(fgfkw`-m#rwQB-nrk>}5plgC`hTesX|t2|fV+M3NQ4Gxy%ZpcpU(o9k>b{gM` zsH@NSX7p9w!+;-;9&V$*3NGti$gf-qw^^G2A}xs&Pr^9(i{ zwqCFk{VH9wsYtrEL9S7xwbOFjQj9AC*Qmo?h~XfA{IAG06`6@MsI(ICkkl8q69*_B z+YWs$zNFz^42`<@*XRZ3s~5{Pv1(TN@i+w06Ds&`YAkFE4X+WOJlv1GYc- z=)PSOVrjbU@oy_mLnl5I#G2ISyiHzAIQXq87@J5 z!54-dx4LUu1>Nk18J|n~%PEsD!C2u|V%71)&@kv0&q8b6Y|B9N^yMx1rfV}4QvD$u z#itOjUL^ng zECV%$LLuK>oy7Eh-ij>ReJ+{UhZpZ8(3Dn4ZLVybj_ajR#^#0c&yj_6)g7)FKS(s} zLy=_EpXpEB%yY)WXGadWsKcnh< zh^i+LRSOiiVGQBZzQEHCRo#HzmNbMcAvQ>^!`@{mzD5eGA1gfYwKwZI&Ec@SR0G91 zqF#y5Ug@VC)4K6JwWV%$DWG|JXJ*1N<3E8_nbE``sA(5NuJRTp+R2V)9em}cE)o_3@Eb~P=Snb zqtPYG$>H`CUqXEj!u`VU~oeJ*x% zg>iL*L6Yex8!2op} zEo=q&CH(Jf!?e7j=BrWKpKx<`*8#eM7T==LxZccH5}1}H{&{4 z;SNx;(Q0@th&~d@{v!F&+04*T ztj)xwlfg`P8~Z-ZUV8#>p3CnZNU)9b3kXItv_$*wwiXe(IC(trK2!PTC)HK)6% z%@N>5!p4b3s#MW_P2{vTW|DlRgCJeuz4ZS20j?T&AY`PUk&k?o#FoCS@JKNJ3TiPK z90z%5FK>A&pBThyiJz#IBHsia2GkK|0B{i zDw)8-;nhmT3;BRAh7lIdTwo5t!?4ad9>RLek>kC)TfLejuR;XG8+UoFRWjZx9u2(g zgUq_s;Ye3sU_v-^2YR(^A*ayPE#;o zJXnurNRsv;^Wk$fr?*nG>=sz6pf{!*WZ02Md-QSWLpT2ZZ6kc@hg@HDb6F2qVFSLx zB(pjj8^mhxd$nzprE1;oC(OqeKQ&2j(4rf)HRF!aV7u7)cH*qaIm*f2p63&d#sy;$ z%~vqN*Qd^O5*u!sjO=cK(>KSKb^7IIiu?g9E33Gz9+|)PR)%-!D_`5L$1HmFakG5( z=MLUIEH=6NXQg1apR8ObuBVPt&;Mnow%~Q=mtjC&NRQF#`(e24{ zXUlt)m~)gxbUM~e*5Z%Gc`}RA8UK9(Q8}!QO`-%;1q3IA+<^dyLhj28ennim783o0 zp9@e@_$moknPzI+?_sc_{};Q%LV8f&D|b_tRr@w`D2h>7zEuC#TvcvaE}uKjEU)Z?HWP4t61g`j%uK<9fFr> zZp~@oxYpnNz<=!jw6wZIM@Kyzye|bYH`Uwpa0Gnb& zouB?WuS1q9;~aoT0{3YvuBr)U060%@w8r7ELXiuX9+4`;Y_@v$fQmT$5@;Hz%>~5X zZe_S9?|y(#jYDcu-P$@`@~LBwzzeCw)*-m0#Kvd0lj!Yr!X`^Tid;|cf6kS=a#Vay zuKWWIe~B@&Z$1VN8kKa-4X*bWFUfrs|IkOPrV=88P1%al0Xyl^%4C0vo}=T$MApvZ z2`kB0;3I&N6=I}&-GU&vz?WdY%NI6^4D4j_O?>wf&oLpFgU9uOAZ~p+hH?>bvI~yj zKN*$ph_rp5C7H6~O?}u-VPh36{BsV80tGLw>uo|pWa_Yg5lvoeKIcJh%DwB<$n{=% zEo^j|uWC+XO+_X53^_`Osz5=`kM*I-06KaU;t)qrE5MA5*`xr zCTi7C*859WOc}(#fIo=F8Q*C9X{eqzUn!HQn?FmBRcBz3oXNRm-u02P><=cgn>tCO? zG(cN+_DS0BXHkV_cRz4SUfi4*k=#(*5!}8aF%o`9;AIg1gxK>$%H9b@wUF-f4`^R; zQ!((8>$GPc{?x?v?9~gcBQXR!gD4bzo zGv}g`_xgPhT$Ok)7%*QZ&A#6=eB5iTxxb&s)%BNwH=BSC2U}cC+EdeSa>>3xGn}E8 zN$%~=iD z?lSU@c&trHd6ScqfiQfd7(%~A@-~s_Cm8TkQ_Vm<5q?!9&q-;-WDW>80Jz^7sY20zHO3 ztn!=x@oJzV?daH~YxMl`SQJMmk9_lXajD2?^K=NCA2V60S4)*}UOlP-N4*(BBXX5;;NB z0`ZZw@@qB&%Mg(wfaYZmB;_t))=1CSV)VQIINo8>`9}S>=CzO_D=o(s^_5ppvbIOd zq}}X*uyeExeOBthUtd2wU}Rw_&C{PFoW3vNie6h?(2|!I_4zQ{^UE{C+5 zi`hB4na@jo4L2F6C}iH@6F^3NzUtM?_g0<>7g0{_ayt4oDqbTiyUyohS}Jw?-z3SG z@MiV{v_R11FS8s)@t@!kB0_JH!ZsnFXCfC`kU0K^AnZWkoxSkfvn_$Kl-G=ALQ$4t2 zaR8OtCowz{GSI#+=kv9Nin0fva%f_*HnRwk5Hv|zy}t=(%K@ZuhUU+UB6V|eVxk4_ zV)@ZQq&^!9Mqjv<$S$a^tG&vMm&$*+U{GU4voep%N$0f+SDpBsKu^^^!pH#3XEvca zLvpN@C}Fy}Ny9!0H}?&2=CB4feC^02bYVwS>kUm1nlq{ij!b@e^RfD*mBCYzorlxn zw&&}t1zsNRs`gJ!EG4+V{_F@bLc)|d+z`NfSjRcR+{5lR{?92Cq^%TqCwg$250v3d zZmbg8BFz@3d?$xmJW%4HT3W=z+LHZ(l7 z{)S{!bW)Ftd@TQm8tK#|&5rj*En7Qp&+nvFx01r4J6nvyWvjkNak-j~_*`Ze`N0Ss z6@d0?)Yb9-Rz;p|i*{*N_ct7@?Fn`;kLaEl zqx~tG{h8s(c-Io-(T`CWD(g|ai0O(9Hk>qd*|FcGU*B8qRY!Ukg10z|grVt_cHyB% zb+xfv6CneX&Y|3Wo@q@cmWQ^k(tfwT%)&zU?G6c$e-<&FKi&ZUB1W;`&C|;Q{5Rmv zojYZWN9tzGvkt!z4t2T6`L^7S>(EzyKG!(UvN=cPkFUAQ&+z{o2{D?jY8Jk(u)1{% z&;?@&DDM;2ud1zN;ItlSYl}Nf>Ie7(%qe&t+or@+zSUz|J(sT%tmGrXGZk`sDn269 zBT0cYwF^Zslau1T8s`E#Idp!Mu=@6P0A+Rr!Z&%8yGh9ZPC_%BrV>nEG=58+vD%ByPOuMH} z3ou5a5czbr;01sc>~v+F4<-He&Y`TMi=u-`ar~0%^U6M>yu|pWbGE}pT`=s~eUsht zr!IIiVZcGXAF70xTUQ7Z08TO48nBJdbtf)QRp}Ze??nlcOkpbS+SLnjmmk%%QQ^tw zt+YrA>O2|z)K}JB`S{}KW-JxZaTcMt0_5B=C=a?zUH4u4`f(U12xv2aw?l19Jv;Q6 z#zhp~3Q~h0+7<_0YhsamEu67AdJ}bGM(tr^Mde4`6Ek!t1MUf5_iC0tD9^&;NRN^R z^3CIbR1?_zguc7@>!oj08%}gr4T~RR-8b>(73R~0{d_IXVG%bO zjH@17-Ql(`SdQMW^FxyNIa@jO;7K^3!0u1@(GobWK?Qb;4ufR@El8Y^%oazt1y}~6 zgfTzGOf)#5+KQfAFoB7bl3KdxRd4(sJOrKvtR#C4KN!5z|K*+a86MZF@QrD4aXJ%a zm7rERfaY!eDVw1R#}Z6=_3SQg#}o)~HYFx$O8D$EXRy)i9!UwO+daaEZN4Hsu6Iwt zK@OL*vk!j z7QcrcM}K!xl-QEUu(;1ZKecL(A+Gnx%mG~0)^7bC%x#K9c?Y1H$b0u_svwPp*Z$JK z^tOh=zUftje=kKhH~DI&QsUS2_`b^hMvFKfMAFJth}-{6>9;SCDOLJIoi@JvdyeU# z8!lM&qFFGm!+IP;3EBrHF?;IF-+`sc~s#izW_ z=xKiZ5|!(FEZ!`|mx-2A9tMqHjQRA|c@_54QvmYRVV#dm+@60^D59&_5BzWC6W;T! zx!op%`%w55_-6Ky%DSH_E5(=gT5> zr`Aqy7lmy~01A>J%uzzz0~7c~NRu8teoPLKe*>}AqB3O$ zJ@bVE;V8$@+Th#An{4w)8?+Uw660$VPSx+@I9{5}D5djbW|h&F%RJF1D^&Qphm~p$ z5VtXgI%G(7#6whgzVrug@JoT&G~n{j{`g@ItA>qn7syaI8TXnmUY3 z)mb=PcI;}tGPr)gx3P$|CcN(LOTDLCRlc33e7pUcEA7M`9?dFV}c zi1*Vht1Ee@vBA5qlu1*E=t+~av z@hg%l*#Z)^Z@&428|6h%(abLp5-6S7tJkHTCnKj^S@u9GZSgf*`L7#!HrcO%zKG)Z zR>HK+7vMDLAQmg0vpTMePEU+n;;%KoWVhnfl)jTMXOX70f>b9q^m!2P&tF)yP{)oU zEA{3Oqux7VEI>r&6GBT!gxX<@2@Vhc%LDSpDuSIrwWYZ3ED;EXZ;m@&y7Td4i(YE6 z#(yZhZI#w*J**A(18 z#3z^j4q8?dToLqh9T;&nAc~#7c1&ml4tye_d@yom_ta!H3X2;Vi=-zHda|@Nr)0RS zK5f?O(q^A=;~LRIAnj3a`)fC2E3br4*`Mh(SqxvNMErhKiL_siN$lzj9ec1BwjEio z?Jt_Xz`!d$HJILC!%^)@FI}HHm3;c&;PR5%yyX75xXw@%FO@= z${s$XR zdAOi$>z7h?ec7eh4i^yqPFoVOF102p5sdo5e6a9VhMZf>gp=d9x6h9o(6rh#t;&26AB(5e4{h7HGlKOj~h4749(CzopZ?7+h*9{f7f|n!#)9l5k)*k&#zB2 zIH571X53m;Tf0549PJwr2G?T^;g5vGtX5p=1)e4$F?(NF-Ep^)qO$g5w)wnH$u9Xd zjvw(<6_;Nw!Zzk*u58&ZA7PA`F%oAt#0+XgD+$|atW4YY?0G|6&*6|z7$TdO({3Uu z*=;9y-`*>b$bPA`@YpK%hn3iK^ZtQ~JS5?xpV0I7x1OsG&S;hKiP5vdc~B*U68jI> z+;t5N7B+)ujIp-%EPI>GW-eDkxgyP(tUhO!eS)ViT8-`arCH0o>NlTSxGP9M`EK%V zu6{l3#3yL+M`qm2@QZ)Ik#0>0I#{)baiDB8Q5tLg4SL8N*9 zyJvbr72I8v_P>NZ?PW^XCln}!UTBwX`mw^hYSX2F*raJ4WvD=wDu@Vj5xo;g7ZNe1 zt*xym98sIXd=3-QuMHx#^fOn3p1ryDFEpo#g2BPHxMoj358cq@`V9$&Hxf6fCvOz8 zv%|1#a1yC8bVD-%9zTBL5PE|Vm_%TEN#FWQIIH z*_in2W0O&Tt(ZwGb?(=b3yxVS4ud*FU#%vCu#M5i;v@#XOs#XfLR|V4sDiO2viTyq zUg)++1-qvT8jy+i3MULbD1AXbARtK>)=GnF6Bt8NZ(hl3ZOBqnYWP&$l-MApSdf**>se zl6<0%$zstjQ3@J+3EAGmCIk&%q&@Hi+87Wd;Oy(3&{#(A^SQ-zUFZNjL0n>&DSW<# z)gwQdLoHe1H1Fy}=h@qhL0oEWf$^5h~&(WtEELJ&+&k@Nk2YP%KReSPO2wwwNB*bdb#(;;~%j*`E1 zOmWTZT zgsP`0gzYddqs^ic2@)$I-ItFPME5PX91d)sYrK7O$0KuQluNjdpd-XW>U%q@W4Yf= zyMBc(7k!v|YyHalH~jBoOZK#{x?I(P?nd|7Kv zGq6^Qr*$mnf)Hn!3b9?PiwfV_XaasDm`s!Cd09F#2Weac!J&ui4afze(;`xzO)obU zqr(_jNr_O{=YmWKrbI1}rPeud+GC!@znR;;Dk&1leo2Y8bNt~R9{!zLQW1E*`lBeb z>sAe_+S#BLo}7@Nfs#fnUvUY2X4quKU}XGiSh@I3@Ch!TT%)HrUqKeC zme6F}zhXM1MU*d8=C$u1Cjk{tdU<8#{Qumi<>dZ z)U$=IZZt9Ch7ARbtoXwX5qz#!)t66uYRFP#1iTPfJ!mJYd17Yp-l3CgcSQsns#-iu zKK&XRBX{-L;JTVx;Eu5Jg}-v)Lpu~2OwMluknx21N_xnSxZf&Ak6O4JK}UiHJMrz6 zn-H4!^-IWJ+e-+24ockq-stApXSjrM4D4J?{)gftVw2uMGL$pkZ(Vnty)t>n4NE}C z17#`l3+WncFsNK8cDih?@98NI1!EfC8;S5+Ao_vSEvb7FzE`vjA>Ki0gTV!rq~ni& zja|EWwEj#_ZWF%U8!QXnqVZ?;Fs*MJQO8xVE-`N!t8Ka8O7p#ZwX|N$WLoh1ip|7mLjV0wpN1x`rGLOLSLYS}4vR+A zB8%VQ#T0X7sUMklS)P7Md1iye>zuC2XC4J)+dM zdn4t;0}8qasVK)(W?g1hA3A_y_ce(Be` zLD(qZ=iQbD2I?w9KL5O_7%jYF0mgJn?d&fGW_!^2;L>E1bXi~0@^zEVdQ@>0ef)d5 zyggYLMI`wK=MKDb*OTzVgPKPxjHo7SaWuv_f@T0Xxkm4uslH>iMaEMyILgTG1mFAU z>*Jxu-pXbNJy%Fcee`X14(%M;g@v^vK>bA~fqYIP`kkOth)R9>r2-kE>d`1>V8Ya1WFV;AbIKO7k6L2obZ|Te@w^+D< zz~d-=O^jRjXxB&~bzyW)|OPr}Y~CdzG^BRuz9$?&{`428%<#zY_Ky4x#Ys@WU3H@gKbtFmGT9l)++lV4ff-R^NOo4I z^Y7%vX~4(J(#2MSoA=M=-z}7b2XwVY^gC^trmcQ0VOH#z{mkybe^qpU431(n5w{xv zkt3?HmCBCNu8k+w+P+a)xPD$1`Z#NINQhtqOX;laN|BsgJ!hRBd6m{#z0}~7M#6CYtkedJ#~FN>x;#V4f%<6R9{lz4%}rJ0w(v}BILWa6&`$sBb4-H)ngKOs6UHj{FpTJGJHe z_iMIkxOCJkZp0TkmD-DWl95q%53e~0Rm`06H#^MeOHmomW4DFEwd}dVDuS4?5L{QR zayr~>tS<|27zF%P9EM(wsohjaOIs%0bM7U| z=~yy)ncvV#dss{Kcpz8YXmaRMKG#j2V1581NPJ9-$>EdeEkvTX_re1q&3k)qUXQJ%A6yrTjTRp|we@$4@3ZNxJTLJPRz(fc z!bU*uaB*3=e=jx>uepufBK>Sa*lH`;W2q;Vo1QV=1`kh#_5i*@1t!<8JD(5JebRc# zBW!n!+@v&rj}Xtqhq6mM<&F~T-mPFjVVTcd_1u(G(neYJh4##EdWzL#v*41nWpDg< zCmRsLH&-{w3E2b}o6S>C$VR-3<@CGj+9M@~_b+sn_|N&CQO@}Y>4O?O@CXExJpG*h z`(O9%$tNFt$!W06n|tH6$glHHW0EO|^`=H`qlx$M7`@@(Yx3?WMT*ew_t(n0kyHT< z7gy0z_E1iZzu?(?$*KU0$szI9QQVF|A<@M~3fi|va$EJOgEOk--j+>g67!X%3H0BE z?SCiYyHmIsb^dhyD&jM$xBsGpBL&n5WG?`l4+-Y3%A=rvb^JJ8_ZKbAB4qZrNk|au z{=XDql@QLq@Lqg;&y7Bi7)j^|=jyNn7mPX+cc^fmS2%~N2FV`QZE_OZp0f^r|C7^0 zv~fmg?R=G!(RBY>Ww~5L@W@OpX-z~_v_as!UbkV)5wcS%)#?&vY3G|yWuCKA^0VaM zl~sK)Sm1FjsKIIq(`ukI`(%$NGEU8PDb0tDVgYxTa z=p7m<7d|GP<33t85w?&ZB{a!KNrslNw=^^SV`45J+7d48n{0CV@-5U8-tZjRgb%z3 zqB|kiW;5`w51oAGzW3UAPV(hWBjU-@)sw5^NnSF&Kx(?FkzRv#TXZoRJ6)sgs@+?+ zOiI`%eJa!KDeDj0M-DKgz)LX$GUEBY6ch2q$5hw@sO}J>rY4uP2`^BWlU=a}ecM@> znMu^t)IVki`9O9!dhT3I-;0t~)DY9Occ*=t8V?tU2Vj^A&dz|lcQ@N!xq_a~q4>8q zJjV}QxpGB}lOA260<*IA2GDc)fu3JwyEZckHWbnI;`3G6-K?}|m^*l>avO~s&OvD% z)}}T#p=i-I3ZD1;&1rI;*500;5D)`_|E(Dq;FV2ggh-*@x>xK#b_9n0e4A`K0VqM@PTuRw|IBEC0kYLwB3a0neG8e3ac zZES>L_J7;gC*pdrDOtvOgMNW+H54?&&jNRg2btsCf`WQrUM0~Q)@u@8>rAfg?)eq9!Qs2Myw zJRnyZfx@pp>6OjZgZ9Ud(`g((ZYsv9t)~|Pj2`c~bLZ|!UP+)oR$6~|X3!-*KAxzt zT$MGH+IhGB?nG90c0GFQ4oy#o`T3C>6giM>@Fzn9;r^tLEi@`jmbSL6B$`{dZaE!| z{0K!J6)@!dQc^nL2e7m6GZJy#aSRRa=|FJ2Bd1oFaNu$XGasM*%PZh8D4#fS`$X^~ z3dP2j7S_X(++ltgzlVN*-tO27I}9bp63+el0XGe&s@?h0i;6CgwtejEbkW+qQNeBi zy7r9}8|azeG&fU$ddDvzk>8tlZ1~iInyTtXjE7jkJ6xl*+Z4ti{v`RLT}M-riXQv~ zM9V(3G!b!SJ@yCbdQPxAh@>kq-XMlVmyg807ds??q!}9@A4Y0}=-&rV%9yn zt+pK{F&fCW@G>6wtgjJ`Yy+7>KYTDH+p!rx`+7Mq-aR2B>vP;e*p{PXW6dBh!c*;o znK>7XRis}=U}(AIJ6p&9LMWnu(7dOT3I=g^J)98U1~FyQJFb8 z)Ff#+xkOu67Z>(l@p)i!^2^9@y?gf#jLQgoQDjsUdHU&KV2PV}RGq@Y!Yr+=YcSWC z+1Ufok--G;41&@}OGh^z{wwEkv>fTD2%h2Yeft{F7MB>bpi&T>jWM?KgC_5AhN;~K zg%HFlGIWtzd01Aq6(H<;a<17eUmndturPunay3$gL!+bqFJB(`{PQ~IWL|Ro+I1xY zLqMri1wYPs`1atas7+u~k)@}nYwu=tYKTmFXGuvaLkl02{V7SntPJBUjW%;f(att$ zZmpw;T>Sy+x7+08wji;>DeaJkpLgc;X}|h;0TmZ068^GIkg{J5sB7Fe{EP>LZL(2=(o)T zLJbUb6(uDya5BcjcRU3ZZy3VIgWc>L9MtHYf_d@~65<0p@2Z)Y3>~qba-JJeEh;H_ z6Rm!I@7}$+FAx0rQ-D7hvG$We)15%Ihe}39yr{sCNUk$|)vyQ?(lqzlV~@&LkvrRn z2jSr46eSmR36g)l>jO^cU5x(+Frna?Jzsvz^lt%cgx!^4iV^D++SWsFN{5<@ufMqer`Xdfp^uPsvD2%l}wa!%8BJqUrboFFN7w#|*)++kmb|yG2FoQF(rW#A@-w zW9H!d5?u??yOemzP)iO&{GsaUS=RTiMCHtx&7#H?BHjjP&Jgb(T@;znw)XARPl8y8 z7Qh>k^Wmi5fI)#qNrn|~li$88)5~JdDPQEqq7|8(99B>uImeB)?=bFPKf7za3u_iN zU3PxH#6fNbpl5pePnFi)oj9qXp$xP(l0fJwt1>n=woO==j*5zE{+1-QQzd=;81+zO zA$kvM%vkoO>lncaG!pdA!2B@Yzn+b z&7YNDn@e(P@jrPqLL$y9X zKVPzwj^*746S5r-cm?qxDZ9QZZmvT;0~j z=ugcQP;J6|TnBkULU4O)S{fTkq`s1CboLd?yU;1t^x{Q-mhEbo{=H*Ue1|+a zp(^*sz-j(Gdg=0Ielam-ti=RL7|aqebPIwz?wI^Ubw^`mjzhs9a5r^-#>dC8#0TnS z1pteVY2t{+s+yihgM&`IAZr}QOzR7FG#OIVTL zu0}b_#Kwj$UymXE^u{o??Yyq&e#6Sa@$lu#O;8Mxe5?Jb6FsLpJI|wE(M7QKNxoQO zhoI>2vF$`%k>IDJ0nIHic;K}PM1w|DFci~IE6h9hh;Q`sg*Z=IR@MxH7m_aq2{<8q z*cn(N*3qArXhLI9<_4#&%115)h7Wj&hM~KKg^%d!a)pG3vT$>UKzEA$KBNJqHx6u$ zZ!HgMXLcZ`yYuVUud?#?_(RZZx=e%ddp9@pku3A|4oXTMT7($R1ELJ(xP8X;kVD{6 zyueG52dKl+%Ib?)J5(QG4;~0?m3AN%6cqg3-?tw=%x9giSLW{FK|y+!nJFjFhf!`u z+*Si(K>ULlstAc_f&F0k#DuwRZvg{I`|R19K&FN`=4=j5w3Zw+Zf+wZ0{L;0$ zo}Qkui?@`?l$cYN+>Zp%SA&v}i>ZjM9V3MtyRp}|IjkHi(2X7t7vB#_xuXYGNOY>* z!#=dw3srAjU~q7dY$y}i=2HP0l^INc-B#HRsnpnq~QPeNiMUvcG=Co~w)wJ2nuErj%4FLYI|$GR{yF|i>%D$Y_M zYJ(0b_(?;t&-$USQ&XpmjU(Q?(GW2x(l+3tAR(qBMkpBPPteR9EoX4MC)l{Gcn4!4zn6-cC{u>?PP`m`Dk3t?ac zh86)jV&XwVh6rHPOiCAKA;nzm8=O0o+G!h&=8#^NXeRk$gQVkWifyPNz4qRoTH#HpERO8f>BO8Y?acd wOdNg8{VO&9>&)~2yO95{2d4k+!!14}`7_JImwpLdB;lW9s+ua<$|ipQ2L~dUBme*a diff --git a/examples/running-llamas/artifacts/A100-80GB/rich_table.svg b/examples/running-llamas/artifacts/A100-80GB/rich_table.svg deleted file mode 100644 index 09ae22bf..00000000 --- a/examples/running-llamas/artifacts/A100-80GB/rich_table.svg +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Inference Report - - - - - - - - - - ┏━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┓ - Forward Forward ForwardGenerateGenera…Generate -     Max     Max     Max     Max    Max     Max - Forward Forward  Memory  Memory  MemoryGenerate  Memory Memory  Memory -Experim…   Batch LatencyThrough…    UsedAllocat…ReservedThrough…    UsedAlloca…ReservedQuanti… -Name     GPU    Size     (s)(sample…    (MB)    (MB)    (MB)(tokens…    (MB)   (MB)    (MB) Scheme   Group -┡━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━┩ -fp16-ba…A100      164.02e-01   39.80   19165   16520   17779  471.00   27988  26442   84511   fp16A100-fp… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -fp16-ba…A100       82.04e-01   39.20   17087   15037   15701  290.00   64889  19997   63503   fp16A100-fp… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -gptq-ba…A100      164.15e-01   38.60   10900    7080    8604  333.00   65676  17002   83596   GPTQA100-GP… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -fp16-ba…A100       41.07e-01   37.40   16022   14295   14636  147.00   26346  16774   24960   fp16A100-fp… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -gptq-ba…A100       82.23e-01   35.90    8826    5597    6530  206.00   56629  10557   54333   GPTQA100-GP… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -fp16-ba…A100       25.79e-02   34.50   15392   13924   14006   75.30   17003  15162   15617   fp16A100-fp… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -gptq-ba…A100       41.22e-01   32.80    7761    4855    5465  134.00   18085   7335   15789   GPTQA100-GP… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -fp16-ba…A100       13.28e-02   30.50   15153   13738   13767   37.90   15866  14356   14480   fp16A100-fp… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -gptq-ba…A100       27.06e-02   28.30    6872    4484    4575   66.50    8822   5722    6526   GPTQA100-GP… -├──────────┼──────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼─────────┼──────────┼─────────┼──────────┤ -gptq-ba…A100       14.58e-02   21.80    6746    4298    4450   34.60    7606   4916    5309   GPTQA100-GP… -└──────────┴──────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴─────────┴──────────┴─────────┴──────────┘ - - - - diff --git a/examples/running-llamas/artifacts/A100-80GB/short_report.csv b/examples/running-llamas/artifacts/A100-80GB/short_report.csv deleted file mode 100644 index 6d6dba2d..00000000 --- a/examples/running-llamas/artifacts/A100-80GB/short_report.csv +++ /dev/null @@ -1,11 +0,0 @@ -experiment_name,GPU,Batch Size,Forward Latency (s),Forward Throughput (samples/s),Forward Max Memory Used (MB),Forward Max Memory Allocated (MB),Forward Max Memory Reserved (MB),Generate Throughput (tokens/s),Generate Max Memory Used (MB),Generate Max Memory Allocated (MB),Generate Max Memory Reserved (MB),Quantization Scheme,Group -fp16-batch_size(16)-sequence_length(256)-new_tokens(512),A100,16,0.402,39.8,19165,16520,17779,471.0,27988,26442,84511,fp16,A100-fp16 -fp16-batch_size(8)-sequence_length(256)-new_tokens(512),A100,8,0.204,39.2,17087,15037,15701,290.0,64889,19997,63503,fp16,A100-fp16 -gptq-batch_size(16)-sequence_length(256)-new_tokens(512),A100,16,0.415,38.6,10900,7080,8604,333.0,65676,17002,83596,GPTQ,A100-GPTQ -fp16-batch_size(4)-sequence_length(256)-new_tokens(512),A100,4,0.107,37.4,16022,14295,14636,147.0,26346,16774,24960,fp16,A100-fp16 -gptq-batch_size(8)-sequence_length(256)-new_tokens(512),A100,8,0.223,35.9,8826,5597,6530,206.0,56629,10557,54333,GPTQ,A100-GPTQ -fp16-batch_size(2)-sequence_length(256)-new_tokens(512),A100,2,0.0579,34.5,15392,13924,14006,75.3,17003,15162,15617,fp16,A100-fp16 -gptq-batch_size(4)-sequence_length(256)-new_tokens(512),A100,4,0.122,32.8,7761,4855,5465,134.0,18085,7335,15789,GPTQ,A100-GPTQ -fp16-batch_size(1)-sequence_length(256)-new_tokens(512),A100,1,0.0328,30.5,15153,13738,13767,37.9,15866,14356,14480,fp16,A100-fp16 -gptq-batch_size(2)-sequence_length(256)-new_tokens(512),A100,2,0.0706,28.3,6872,4484,4575,66.5,8822,5722,6526,GPTQ,A100-GPTQ -gptq-batch_size(1)-sequence_length(256)-new_tokens(512),A100,1,0.0458,21.8,6746,4298,4450,34.6,7606,4916,5309,GPTQ,A100-GPTQ diff --git a/examples/running-llamas/artifacts/Llama-13b/decode_throughput_bar_plot.png b/examples/running-llamas/artifacts/Llama-13b/decode_throughput_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..9c8f6b344efd8196f596348fb3f7c631215b9005 GIT binary patch literal 41316 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

d`ftpE~Yhk}NtHG-TK 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-13b/generate_max_memory_allocated_line_plot.png b/examples/running-llamas/artifacts/Llama-13b/generate_max_memory_allocated_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..8b1327ad94ba0f0e341bd43d1e213ff87754169e GIT binary patch literal 61570 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-13b/generate_max_memory_reserved_line_plot.png b/examples/running-llamas/artifacts/Llama-13b/generate_max_memory_reserved_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..12a575252fb0c818cbf0b7104ec25d07352b1517 GIT binary patch literal 61567 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 At^fc4 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-13b/prefill_latency_bar_plot.png b/examples/running-llamas/artifacts/Llama-13b/prefill_latency_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..903dc1b67feb14582d45444adf03286a856e84c9 GIT binary patch literal 36349 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-13b/prefill_latency_line_plot.png b/examples/running-llamas/artifacts/Llama-13b/prefill_latency_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..4d47c480129be7fb736e96f039b529aef4a78b56 GIT binary patch literal 59534 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 z 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-13b/short_report.csv b/examples/running-llamas/artifacts/Llama-13b/short_report.csv new file mode 100644 index 00000000..27e5a935 --- /dev/null +++ b/examples/running-llamas/artifacts/Llama-13b/short_report.csv @@ -0,0 +1,31 @@ +,Model,GPUs,Experiment Name,Per Process Batch Size,Sequence Length,Decode Latency (s),Prefill Latency (s),Decode Throughput (tokens/s),Prefill Throughput (samples/s),Generate Max Memory Allocated (MB),Generate Max Memory Reserved (MB),GPU Name,Num GPUs,Effective Batch Size,Group +0,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16,1,256,17.0,0.0543,30.1,18.4,27506,27946,1xA100,1,1,1xA100-fp16 +1,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16,4,256,17.6,0.206,116.0,19.4,31284,52164,1xA100,1,4,1xA100-fp16 +2,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16,32,256,41.1,1.52,398.0,21.1,66527,84414,1xA100,1,32,1xA100-fp16 +3,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16,8,256,19.9,0.363,205.0,22.0,36318,84401,1xA100,1,8,1xA100-fp16 +4,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16,16,256,27.5,0.707,297.0,22.6,46388,84422,1xA100,1,16,1xA100-fp16 +5,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16,2,256,17.0,0.106,60.1,18.9,28762,31409,1xA100,1,2,1xA100-fp16 +6,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,1,256,15.3,0.0508,33.4,19.7,27506,27936,1xA100,1,1,1xA100-fp16+bt +7,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,4,256,16.5,0.194,124.0,20.6,31284,52110,1xA100,1,4,1xA100-fp16+bt +8,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,32,256,41.2,1.43,397.0,22.4,66524,84422,1xA100,1,32,1xA100-fp16+bt +9,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,8,256,20.0,0.348,204.0,23.0,36318,84418,1xA100,1,8,1xA100-fp16+bt +10,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,16,256,27.4,0.678,298.0,23.6,46387,84408,1xA100,1,16,1xA100-fp16+bt +11,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,2,256,16.1,0.101,63.5,19.8,28762,31383,1xA100,1,2,1xA100-fp16+bt +12,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,1,256,15.7,0.0518,32.5,19.3,27506,27936,1xA100,1,1,1xA100-fp16+fa2 +13,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,4,256,16.4,0.194,125.0,20.6,31284,52110,1xA100,1,4,1xA100-fp16+fa2 +14,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,32,256,41.2,1.44,397.0,22.2,66524,84418,1xA100,1,32,1xA100-fp16+fa2 +15,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,8,256,19.8,0.353,206.0,22.7,36318,84416,1xA100,1,8,1xA100-fp16+fa2 +16,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,16,256,27.3,0.697,299.0,23.0,46387,84412,1xA100,1,16,1xA100-fp16+fa2 +17,NousResearch/Llama-2-13b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,2,256,16.1,0.101,63.5,19.8,28762,31383,1xA100,1,2,1xA100-fp16+fa2 +18,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,1,256,18.3,0.0772,27.9,13.0,9708,10208,1xA100,1,1,1xA100-fp16+gptq+exllamav2 +19,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,4,256,18.6,0.208,110.0,19.2,13487,34418,1xA100,1,4,1xA100-fp16+gptq+exllamav2 +20,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,32,256,57.6,1.49,284.0,21.5,48729,84418,1xA100,1,32,1xA100-fp16+gptq+exllamav2 +21,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,8,256,19.9,0.382,205.0,20.9,18521,84370,1xA100,1,8,1xA100-fp16+gptq+exllamav2 +22,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,16,256,31.9,0.749,256.0,21.4,28590,84420,1xA100,1,16,1xA100-fp16+gptq+exllamav2 +23,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,2,256,18.5,0.122,55.2,16.4,10965,13669,1xA100,1,2,1xA100-fp16+gptq+exllamav2 +24,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,1,256,19.1,0.0683,26.8,14.6,8796,9300,1xA100,1,1,1xA100-fp16+gptq+exllamav1 +25,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,4,256,25.3,0.177,80.8,22.6,12574,33516,1xA100,1,4,1xA100-fp16+gptq+exllamav1 +26,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,32,256,53.1,1.21,308.0,26.4,47817,84418,1xA100,1,32,1xA100-fp16+gptq+exllamav1 +27,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,8,256,32.5,0.328,126.0,24.4,17608,84389,1xA100,1,8,1xA100-fp16+gptq+exllamav1 +28,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,16,256,39.3,0.733,208.0,21.8,27678,84418,1xA100,1,16,1xA100-fp16+gptq+exllamav1 +29,TheBloke/LLaMa-13B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,2,256,18.3,0.106,55.8,18.9,10052,12721,1xA100,1,2,1xA100-fp16+gptq+exllamav1 diff --git a/examples/running-llamas/artifacts/Llama-65b/decode_throughput_bar_plot.png b/examples/running-llamas/artifacts/Llama-65b/decode_throughput_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..2f0547b3305d49d1657086440b8aac4457675703 GIT binary patch literal 32942 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�EaGcFu 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/decode_throughput_line_plot.png b/examples/running-llamas/artifacts/Llama-65b/decode_throughput_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..912bb8f16a89ebb8dc13144551709f04899b4084 GIT binary patch literal 43750 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/full_report.csv b/examples/running-llamas/artifacts/Llama-65b/full_report.csv new file mode 100644 index 00000000..7ebf49b1 --- /dev/null +++ b/examples/running-llamas/artifacts/Llama-65b/full_report.csv @@ -0,0 +1,9 @@ +,launcher.name,launcher._target_,launcher.start_method,backend.name,backend.version,backend._target_,backend.seed,backend.inter_op_num_threads,backend.intra_op_num_threads,backend.continuous_isolation,backend.isolation_check_interval,backend.delete_cache,backend.no_weights,backend.device_map,backend.torch_dtype,backend.eval_mode,backend.disable_grad,backend.amp_autocast,backend.amp_dtype,backend.torch_compile,backend.to_bettertransformer,backend.use_flash_attention_2,backend.quantization_scheme,backend.quantization_config.exllama_config.version,backend.data_parallel,backend.deepspeed_inference,backend.peft_strategy,benchmark.name,benchmark._target_,benchmark.duration,benchmark.warmup_runs,benchmark.memory,benchmark.energy,benchmark.input_shapes.batch_size,benchmark.input_shapes.sequence_length,benchmark.input_shapes.num_choices,benchmark.input_shapes.feature_size,benchmark.input_shapes.nb_max_frames,benchmark.input_shapes.audio_sequence_length,benchmark.new_tokens,benchmark.can_diffuse,benchmark.can_generate,benchmark.generate_kwargs.num_return_sequences,benchmark.generate_kwargs.max_new_tokens,benchmark.generate_kwargs.min_new_tokens,benchmark.generate_kwargs.do_sample,benchmark.generate_kwargs.use_cache,benchmark.generate_kwargs.pad_token_id,benchmark.generate_kwargs.num_beams,experiment_name,model,task,device,hub_kwargs.revision,hub_kwargs.cache_dir,hub_kwargs.force_download,hub_kwargs.local_files_only,environment.optimum_version,environment.optimum_commit,environment.transformers_version,environment.transformers_commit,environment.accelerate_version,environment.accelerate_commit,environment.diffusers_version,environment.diffusers_commit,environment.python_version,environment.system,environment.cpu,environment.cpu_count,environment.cpu_ram_mb,environment.gpus,forward.latency(s),forward.throughput(samples/s),forward.peak_memory(MB),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),decode.latency(s),decode.throughput(tokens/s),generate.peak_memory(MB),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) +0,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,2,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.348,2.87,37657,37657,36106,36182,36.3,14.1,36.0,14.2,42020,42020,39404,40544 +1,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,2,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.957,4.18,40956,40956,38279,39480,41.4,49.5,40.4,50.6,60776,60776,51488,84401 +2,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,2,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.77,4.52,44979,44979,41176,43503,67.0,61.1,65.2,62.7,84835,84835,67597,84408 +3,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,2,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.56,3.57,38916,38916,36830,37440,39.3,26.1,38.7,26.4,67076,67076,43434,65601 +4,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,1,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.355,2.82,36315,36315,34753,34819,49.1,10.4,48.7,10.5,40694,40694,38052,39197 +5,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,1,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.967,4.14,39623,39623,36926,38126,136.0,15.1,135.0,15.1,51725,51725,50136,84397 +6,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,1,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.78,4.49,43645,43645,39823,42148,139.0,29.5,137.0,29.8,83501,83501,66244,84391 +7,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,1,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-65B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.574,3.48,37582,37582,35477,36085,77.0,13.3,76.4,13.4,65743,65743,42082,64246 diff --git a/examples/running-llamas/artifacts/Llama-65b/generate_max_memory_allocated_bar_plot.png b/examples/running-llamas/artifacts/Llama-65b/generate_max_memory_allocated_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..8258f208dfab6058450e438c07bffea233eaadd5 GIT binary patch literal 39213 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 L7;$o#?W+F;OfX2* literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/generate_max_memory_allocated_line_plot.png b/examples/running-llamas/artifacts/Llama-65b/generate_max_memory_allocated_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..dccd818875b37479cd942bc9ce9820ad69454a55 GIT binary patch literal 47608 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 bZL$sbZ2OGAI^({?KVMnRusmk5IOIP7_l=sY literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/peak_decode_throughput_bar_plot.png b/examples/running-llamas/artifacts/Llama-65b/peak_decode_throughput_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..af19789f6be74117698ce5034b64ef260eff3341 GIT binary patch literal 30405 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

>v~1Xe5CkeD(Uu@{qfCCEXGc+01SE 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 Z)6LaeF1MV2jw@x2i0~-OfzX7s{{s1Azf=GK literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/prefill_latency_bar_plot.png b/examples/running-llamas/artifacts/Llama-65b/prefill_latency_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..81d1ac8504ad65ea58783b0fe9a5a105ff0bac49 GIT binary patch literal 30959 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 i_uU)ded3WzuO*?KW`gU)>9!1*O|J&H z{?+Q!E-Ww40nvK4_qg;zee{0v^y!QE+NV!@N(1GP4e`XEqKf<;$V8sUo}xwWzwSV* zY*$TRQhF2m2`S3K{~#?t({oU8cEEZ{2T6z+jvhUFB-DzoMx6NN`T3ba_ETDar`)=` zFMTgZI2eF=fP3MEy)qX`hwJe+FRb5@(FEcr;GDagq{*fI4 zpxhYM0h{qlmj{d09oS&fs0|kj*Ds=@Z ztWvb;_h@8rxB&$I?5GT~X?sN_2UeelBb;dDzBnWH{-af-&WMEeh0)zQU}69yjIX;7jt$b))wAelB8@ibp~*2w zge{n#8`s37y(pX;#iiuNZiz^Y(aWoO8uA$1$+=dTII_#5*mB494g2QPKq>f-X!ZUjXj@i6w zB0df)N5Wmv(BQwFI)&rE=^Py$q4h~k%adC-vbb$Xp$`40YDvyCxLOz*^iPsA2wkRu ze||N)R@kAS5cd{FT{}>(u-wwqZVMk~f)4}3@DB+EK=&yGu4Gu|;MM*9DAq*$G@8K? z(&!X22@_?&Cs;KPo)))RyiaoT*zrCDdhY} zATi4?OF_GWb}ZR|aSSwiSDdf^!|1+{0XBe~_D2LjH0#kHrr?sJM@~{1G)KiEr)6La z@fqaa3()I`p%1=6YSn<{l?^yHje(ri2s7rd{BVMOMqb26(&tHl$9k7*quJQhlmcW1 z-ffN4u6q&WIE0ed|H9bj@rf=JYDL`6Zg3V5szqgGx8e)v#->Qczg%IWM$V zRfox)$eqP;gGQ(a+^3N$E!HKyi-#ny|3&}J2&0{}qG}Sm>V^TC4`Gfax=p&zitxYHDh3X!qa%t-?q< z>OUEw?fFsi=+QzZLapjC7hofJ`mCf96QMX2e1~lj$f*zrFg3#qDKH;%CIUY}Ksdm5 zMMkkP5loC9APaGdhDA;y$PJw7nr;AVo5s`5h2(IBOriZ3F!usv5RjN~BJIwZfhQ=- z;x-qY8PRaab^#-HwHz5`0bpga7?qRA7X3Qp$Pm%Bt zx0vwIY%LHXlji{s^<>W~eq3H&ZrY1iZSQf;(pbMV|BF#8hl

RB#L+ovQZg{w+@$ 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/prefill_latency_line_plot.png b/examples/running-llamas/artifacts/Llama-65b/prefill_latency_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..de56dbba32d38eb224187aa40142f282da935ea9 GIT binary patch literal 41751 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 O=lC)0qiHIZ*Zv198s|0u literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-65b/short_report.csv b/examples/running-llamas/artifacts/Llama-65b/short_report.csv new file mode 100644 index 00000000..943f7f5b --- /dev/null +++ b/examples/running-llamas/artifacts/Llama-65b/short_report.csv @@ -0,0 +1,9 @@ +,Model,GPUs,Experiment Name,Per Process Batch Size,Sequence Length,Decode Latency (s),Prefill Latency (s),Decode Throughput (tokens/s),Prefill Throughput (samples/s),Generate Max Memory Allocated (MB),Generate Max Memory Reserved (MB),GPU Name,Num GPUs,Effective Batch Size,Group +0,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,1,256,36.0,0.348,14.2,2.87,39404,40544,1xA100,1,1,1xA100-fp16+gptq+exllamav2 +1,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,4,256,40.4,0.957,50.6,4.18,51488,84401,1xA100,1,4,1xA100-fp16+gptq+exllamav2 +2,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,8,256,65.2,1.77,62.7,4.52,67597,84408,1xA100,1,8,1xA100-fp16+gptq+exllamav2 +3,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,2,256,38.7,0.56,26.4,3.57,43434,65601,1xA100,1,2,1xA100-fp16+gptq+exllamav2 +4,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,1,256,48.7,0.355,10.5,2.82,38052,39197,1xA100,1,1,1xA100-fp16+gptq+exllamav1 +5,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,4,256,135.0,0.967,15.1,4.14,50136,84397,1xA100,1,4,1xA100-fp16+gptq+exllamav1 +6,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,8,256,137.0,1.78,29.8,4.49,66244,84391,1xA100,1,8,1xA100-fp16+gptq+exllamav1 +7,TheBloke/LLaMa-65B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,2,256,76.4,0.574,13.4,3.48,42082,64246,1xA100,1,2,1xA100-fp16+gptq+exllamav1 diff --git a/examples/running-llamas/artifacts/Llama-7b/decode_throughput_bar_plot.png b/examples/running-llamas/artifacts/Llama-7b/decode_throughput_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..ccff3652161b29000f1699518ac296a204ac39eb GIT binary patch literal 41663 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 JVMmWe{{uu=0;~W4 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/decode_throughput_line_plot.png b/examples/running-llamas/artifacts/Llama-7b/decode_throughput_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..378f14947cf991da0a139aef3e42169a6c824d57 GIT binary patch literal 70079 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�V#-;?uo0M|#hcd!!ne;c9V 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/full_report.csv b/examples/running-llamas/artifacts/Llama-7b/full_report.csv new file mode 100644 index 00000000..abbe8b67 --- /dev/null +++ b/examples/running-llamas/artifacts/Llama-7b/full_report.csv @@ -0,0 +1,36 @@ +,launcher.name,launcher._target_,launcher.start_method,backend.name,backend.version,backend._target_,backend.seed,backend.inter_op_num_threads,backend.intra_op_num_threads,backend.continuous_isolation,backend.isolation_check_interval,backend.delete_cache,backend.no_weights,backend.device_map,backend.torch_dtype,backend.eval_mode,backend.disable_grad,backend.amp_autocast,backend.amp_dtype,backend.torch_compile,backend.to_bettertransformer,backend.use_flash_attention_2,backend.quantization_scheme,backend.data_parallel,backend.deepspeed_inference,backend.peft_strategy,benchmark.name,benchmark._target_,benchmark.duration,benchmark.warmup_runs,benchmark.memory,benchmark.energy,benchmark.input_shapes.batch_size,benchmark.input_shapes.sequence_length,benchmark.input_shapes.num_choices,benchmark.input_shapes.feature_size,benchmark.input_shapes.nb_max_frames,benchmark.input_shapes.audio_sequence_length,benchmark.new_tokens,benchmark.can_diffuse,benchmark.can_generate,benchmark.generate_kwargs.num_return_sequences,benchmark.generate_kwargs.max_new_tokens,benchmark.generate_kwargs.min_new_tokens,benchmark.generate_kwargs.do_sample,benchmark.generate_kwargs.use_cache,benchmark.generate_kwargs.pad_token_id,benchmark.generate_kwargs.num_beams,experiment_name,model,task,device,hub_kwargs.revision,hub_kwargs.cache_dir,hub_kwargs.force_download,hub_kwargs.local_files_only,environment.optimum_version,environment.optimum_commit,environment.transformers_version,environment.transformers_commit,environment.accelerate_version,environment.accelerate_commit,environment.diffusers_version,environment.diffusers_commit,environment.python_version,environment.system,environment.cpu,environment.cpu_count,environment.cpu_ram_mb,environment.gpus,forward.latency(s),forward.throughput(samples/s),forward.peak_memory(MB),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),decode.latency(s),decode.throughput(tokens/s),generate.peak_memory(MB),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB),backend.quantization_config.exllama_config.version +0,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0336,29.8,15239,15239,13738,13767,13.2,38.8,13.2,38.7,15954,15954,14356,14480, +1,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.109,36.7,16107,16107,14295,14636,13.8,148.0,13.7,149.0,26434,26434,16774,24960, +2,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,32,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.826,38.7,23464,23464,19487,21992,27.2,602.0,26.4,619.0,53264,53264,39331,84422, +3,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,64,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.65,38.8,31911,31911,25422,30440,45.9,714.0,44.2,740.0,67584,67584,65112,84420, +4,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.21,38.1,17172,17172,15037,15701,14.1,290.0,13.9,294.0,64977,64977,19997,63503, +5,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,16,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.412,38.8,19251,19251,16520,17779,17.5,468.0,17.1,478.0,28076,28076,26442,84420, +6,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.059,33.9,15478,15478,13924,14006,13.5,75.9,13.4,76.3,17091,17091,15162,15617, +7,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0318,31.4,15239,15239,13738,13767,12.2,42.0,12.2,41.9,15954,15954,14356,14480, +8,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.104,38.5,16093,16093,14295,14621,13.1,156.0,13.0,157.0,26457,26457,16774,24983, +9,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,32,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.804,39.8,23334,23334,19487,21862,27.3,600.0,26.5,617.0,53531,53531,39331,84408, +10,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,64,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.65,38.8,31651,31651,25422,30180,46.7,702.0,45.1,725.0,66915,66915,65111,84420, +11,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.2,40.0,17143,17143,15037,15672,13.3,308.0,13.1,312.0,65229,65229,19997,63755, +12,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,16,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.4,40.0,19186,19186,16520,17714,17.4,471.0,17.0,481.0,28109,28109,26441,84410, +13,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,True,False,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+bt,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0558,35.8,15470,15470,13924,13998,12.7,80.6,12.6,81.1,17087,17087,15162,15613, +14,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0321,31.2,15239,15239,13738,13767,12.2,42.0,12.2,41.9,15954,15954,14356,14480, +15,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.104,38.5,16097,16097,14295,14625,12.7,161.0,12.6,162.0,26268,26268,16774,24794, +16,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,32,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.786,40.7,23347,23347,19487,21875,27.2,602.0,26.4,619.0,54047,54047,39331,84412, +17,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,64,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.56,41.0,31676,31676,25422,30205,46.3,708.0,44.7,732.0,67563,67563,65110,84422, +18,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.197,40.6,17139,17139,15037,15667,13.1,313.0,12.9,317.0,65229,65229,19997,63755, +19,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,16,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.392,40.8,19182,19182,16520,17710,17.2,476.0,16.8,487.0,28256,28256,26442,84404, +20,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu118,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,True,,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+fa2,NousResearch/Llama-2-7b-hf,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0548,36.5,15470,15470,13924,13998,13.0,78.8,12.9,79.2,17087,17087,15162,15613, +21,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0457,21.9,6620,6620,4991,5144,14.5,35.3,14.5,35.2,7479,7479,5609,6004,2 +22,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.122,32.8,7635,7635,5548,6159,15.1,136.0,15.0,136.0,17959,17959,8027,16483,2 +23,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,32,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.833,38.4,15184,15184,10740,13709,35.8,458.0,35.0,467.0,45304,45304,30585,84418,2 +24,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,64,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.61,39.8,23439,23439,16675,21963,53.4,614.0,51.8,631.0,59111,59111,56364,84418,2 +25,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.223,35.9,8700,8700,6289,7224,15.3,268.0,15.1,271.0,56502,56502,11250,55027,2 +26,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,16,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.425,37.6,10866,10866,7772,9391,20.5,400.0,20.1,407.0,65550,65550,17694,84385,2 +27,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,False,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav2,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0708,28.2,6745,6745,5176,5270,14.7,69.7,14.6,70.0,8696,8696,6414,7220,2 +28,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,1,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0416,24.0,5892,5892,4265,4416,14.6,35.1,14.6,35.0,6752,6752,4883,5276,1 +29,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,4,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.106,37.7,6907,6907,4822,5431,15.5,132.0,15.4,133.0,17231,17231,7301,15755,1 +30,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,32,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.688,46.5,14457,14457,10014,12981,33.0,496.0,32.3,506.0,32224,32224,29858,84420,1 +31,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,64,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],1.32,48.5,22711,22711,15949,21235,51.1,641.0,49.8,657.0,83617,83617,55638,84418,1 +32,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,8,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.191,41.9,7972,7972,5563,6496,19.6,209.0,19.4,211.0,55775,55775,10524,54299,1 +33,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,16,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.356,44.9,10137,10137,7046,8661,24.6,333.0,24.2,338.0,59378,59378,16969,84406,1 +34,process,optimum_benchmark.launchers.process.launcher.ProcessLauncher,spawn,pytorch,2.1.1+cu121,optimum_benchmark.backends.pytorch.backend.PyTorchBackend,42,,,True,1.0,False,True,,float16,True,True,False,,False,False,False,gptq,False,False,,inference,optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark,10,10,True,False,2,256,1,80,3000,16000,512,False,True,1,512,512,False,True,0,1,fp16+gptq+exllamav1,TheBloke/LLaMa-7B-GPTQ,text-generation,cuda,main,,False,False,1.14.1,,4.35.2,,0.24.1,,,,3.10.12,Linux, AMD EPYC 7742 64-Core Processor,128,540671,['NVIDIA A100-SXM4-80GB'],0.0621,32.2,6018,6018,4450,4542,14.8,69.2,14.7,69.5,7968,7968,5688,6492,1 diff --git a/examples/running-llamas/artifacts/Llama-7b/generate_max_memory_allocated_bar_plot.png b/examples/running-llamas/artifacts/Llama-7b/generate_max_memory_allocated_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..1df43ed87b8aadd95413b4d39deb26322872f5b2 GIT binary patch literal 44722 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⪙L@j3S#`$q479V+Xm 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∾rr6>9!5+w6x;jGMF9*do)Ho} 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 Uk8{3&0sqKKD?ZGVeCGFm0py7IhX4Qo literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/generate_max_memory_reserved_bar_plot.png b/examples/running-llamas/artifacts/Llama-7b/generate_max_memory_reserved_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..7681b998c278f0665c696d2d736af7d872348762 GIT binary patch literal 47072 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%0Dxfa{}E+mCb?g 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 literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/generate_max_memory_reserved_line_plot.png b/examples/running-llamas/artifacts/Llama-7b/generate_max_memory_reserved_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..cbb732e0989694c731fd85433490ce073f409601 GIT binary patch literal 63481 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 Iol`;+0HlTAIsgCw literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/peak_decode_throughput_bar_plot.png b/examples/running-llamas/artifacts/Llama-7b/peak_decode_throughput_bar_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..6afda2bf242e869e9171f7bd45792de5b655677d GIT binary patch literal 40604 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 z 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

4UQw=MdPh(cgirM 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 nMP-(H>N%&V9widw#V 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%0AoZtbQm@w>aTC0;V}Te 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 Z#80c^o-{NjSmCb`Lq^%|8RWI}zW@+^KPUhI literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/prefill_latency_line_plot.png b/examples/running-llamas/artifacts/Llama-7b/prefill_latency_line_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..5399864ee304f5dba7bbfcd759742de6bb89910a GIT binary patch literal 58741 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 Z3xazg$BZ-mc_{ctN=)wQXHkRK{}(6K_F4b{ literal 0 HcmV?d00001 diff --git a/examples/running-llamas/artifacts/Llama-7b/short_report.csv b/examples/running-llamas/artifacts/Llama-7b/short_report.csv new file mode 100644 index 00000000..bda8c65e --- /dev/null +++ b/examples/running-llamas/artifacts/Llama-7b/short_report.csv @@ -0,0 +1,36 @@ +,Model,GPUs,Experiment Name,Per Process Batch Size,Sequence Length,Decode Latency (s),Prefill Latency (s),Decode Throughput (tokens/s),Prefill Throughput (samples/s),Generate Max Memory Allocated (MB),Generate Max Memory Reserved (MB),GPU Name,Num GPUs,Effective Batch Size,Group +0,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,1,256,13.2,0.0336,38.7,29.8,14356,14480,1xA100,1,1,1xA100-fp16 +1,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,4,256,13.7,0.109,149.0,36.7,16774,24960,1xA100,1,4,1xA100-fp16 +2,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,32,256,26.4,0.826,619.0,38.7,39331,84422,1xA100,1,32,1xA100-fp16 +3,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,64,256,44.2,1.65,740.0,38.8,65112,84420,1xA100,1,64,1xA100-fp16 +4,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,8,256,13.9,0.21,294.0,38.1,19997,63503,1xA100,1,8,1xA100-fp16 +5,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,16,256,17.1,0.412,478.0,38.8,26442,84420,1xA100,1,16,1xA100-fp16 +6,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16,2,256,13.4,0.059,76.3,33.9,15162,15617,1xA100,1,2,1xA100-fp16 +7,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,1,256,12.2,0.0318,41.9,31.4,14356,14480,1xA100,1,1,1xA100-fp16+bt +8,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,4,256,13.0,0.104,157.0,38.5,16774,24983,1xA100,1,4,1xA100-fp16+bt +9,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,32,256,26.5,0.804,617.0,39.8,39331,84408,1xA100,1,32,1xA100-fp16+bt +10,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,64,256,45.1,1.65,725.0,38.8,65111,84420,1xA100,1,64,1xA100-fp16+bt +11,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,8,256,13.1,0.2,312.0,40.0,19997,63755,1xA100,1,8,1xA100-fp16+bt +12,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,16,256,17.0,0.4,481.0,40.0,26441,84410,1xA100,1,16,1xA100-fp16+bt +13,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+bt,2,256,12.6,0.0558,81.1,35.8,15162,15613,1xA100,1,2,1xA100-fp16+bt +14,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,1,256,12.2,0.0321,41.9,31.2,14356,14480,1xA100,1,1,1xA100-fp16+fa2 +15,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,4,256,12.6,0.104,162.0,38.5,16774,24794,1xA100,1,4,1xA100-fp16+fa2 +16,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,32,256,26.4,0.786,619.0,40.7,39331,84412,1xA100,1,32,1xA100-fp16+fa2 +17,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,64,256,44.7,1.56,732.0,41.0,65110,84422,1xA100,1,64,1xA100-fp16+fa2 +18,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,8,256,12.9,0.197,317.0,40.6,19997,63755,1xA100,1,8,1xA100-fp16+fa2 +19,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,16,256,16.8,0.392,487.0,40.8,26442,84404,1xA100,1,16,1xA100-fp16+fa2 +20,NousResearch/Llama-2-7b-hf,['NVIDIA A100-SXM4-80GB'],fp16+fa2,2,256,12.9,0.0548,79.2,36.5,15162,15613,1xA100,1,2,1xA100-fp16+fa2 +21,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,1,256,14.5,0.0457,35.2,21.9,5609,6004,1xA100,1,1,1xA100-fp16+gptq+exllamav2 +22,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,4,256,15.0,0.122,136.0,32.8,8027,16483,1xA100,1,4,1xA100-fp16+gptq+exllamav2 +23,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,32,256,35.0,0.833,467.0,38.4,30585,84418,1xA100,1,32,1xA100-fp16+gptq+exllamav2 +24,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,64,256,51.8,1.61,631.0,39.8,56364,84418,1xA100,1,64,1xA100-fp16+gptq+exllamav2 +25,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,8,256,15.1,0.223,271.0,35.9,11250,55027,1xA100,1,8,1xA100-fp16+gptq+exllamav2 +26,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,16,256,20.1,0.425,407.0,37.6,17694,84385,1xA100,1,16,1xA100-fp16+gptq+exllamav2 +27,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav2,2,256,14.6,0.0708,70.0,28.2,6414,7220,1xA100,1,2,1xA100-fp16+gptq+exllamav2 +28,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,1,256,14.6,0.0416,35.0,24.0,4883,5276,1xA100,1,1,1xA100-fp16+gptq+exllamav1 +29,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,4,256,15.4,0.106,133.0,37.7,7301,15755,1xA100,1,4,1xA100-fp16+gptq+exllamav1 +30,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,32,256,32.3,0.688,506.0,46.5,29858,84420,1xA100,1,32,1xA100-fp16+gptq+exllamav1 +31,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,64,256,49.8,1.32,657.0,48.5,55638,84418,1xA100,1,64,1xA100-fp16+gptq+exllamav1 +32,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,8,256,19.4,0.191,211.0,41.9,10524,54299,1xA100,1,8,1xA100-fp16+gptq+exllamav1 +33,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,16,256,24.2,0.356,338.0,44.9,16969,84406,1xA100,1,16,1xA100-fp16+gptq+exllamav1 +34,TheBloke/LLaMa-7B-GPTQ,['NVIDIA A100-SXM4-80GB'],fp16+gptq+exllamav1,2,256,14.7,0.0621,69.5,32.2,5688,6492,1xA100,1,2,1xA100-fp16+gptq+exllamav1 diff --git a/examples/running-llamas/configs/_base_.yaml b/examples/running-llamas/configs/_base_.yaml index 23a3eaa4..552eb57b 100644 --- a/examples/running-llamas/configs/_base_.yaml +++ b/examples/running-llamas/configs/_base_.yaml @@ -1,38 +1,41 @@ defaults: - backend: pytorch # default backend + - launcher: inline # default launcher - benchmark: inference # default benchmark - experiment # inheriting from experiment config - _self_ # for hydra 1.1 compatibility - override hydra/job_logging: colorlog # colorful logging - override hydra/hydra_logging: colorlog # colorful logging -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - job: - chdir: true - env_set: - CUDA_VISIBLE_DEVICES: 0 - CUDA_DEVICE_ORDER: PCI_BUS_ID - sweeper: - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 +experiment_name: llama-experiment +model: llama-2-model +device: cuda backend: - initial_isolation_check: false - continous_isolation_check: false + no_weights: true torch_dtype: float16 + continuous_isolation: true benchmark: memory: true warmup_runs: 10 - new_tokens: 512 input_shapes: + batch_size: 1 sequence_length: 256 + +hydra: + run: + dir: experiments/${oc.env:HOSTNAME}/${model}/${experiment_name} + sweep: + dir: experiments/${oc.env:HOSTNAME}/${model}/${experiment_name} + subdir: ${benchmark.input_shapes.batch_size} + job: + chdir: true + env_set: + CUDA_VISIBLE_DEVICES: 0 + CUDA_DEVICE_ORDER: PCI_BUS_ID + sweeper: + params: + benchmark.input_shapes.batch_size: 1,2,4,8,16,32,64,128 + model: NousResearch/Llama-2-7b-hf,NousResearch/Llama-2-13b-hf diff --git a/examples/running-llamas/configs/bnb.yaml b/examples/running-llamas/configs/bnb.yaml deleted file mode 100644 index 61cf1ebd..00000000 --- a/examples/running-llamas/configs/bnb.yaml +++ /dev/null @@ -1,11 +0,0 @@ -defaults: - - _base_ - - _self_ - -experiment_name: bnb-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) - -backend: - quantization_scheme: bnb - quantization_config: - load_in_4bit: true - bnb_4bit_compute_dtype: float16 diff --git a/examples/running-llamas/configs/fp16+bt+tp=2.yaml b/examples/running-llamas/configs/fp16+bt+tp=2.yaml new file mode 100644 index 00000000..efaddd22 --- /dev/null +++ b/examples/running-llamas/configs/fp16+bt+tp=2.yaml @@ -0,0 +1,22 @@ +defaults: + - _base_ + - _self_ + - override launcher: torchrun + +experiment_name: fp16+bt+tp=2 + +launcher: + nproc_per_node: 2 + rdzv_endpoint: localhost:29500 + +backend: + to_bettertransformer: true + deepspeed_inference: true + deepspeed_inference_config: + tensor_parallel: + tp_size: 2 + +hydra: + job: + env_set: + CUDA_VISIBLE_DEVICES: 0,1 diff --git a/examples/running-llamas/configs/fp16+bt.yaml b/examples/running-llamas/configs/fp16+bt.yaml new file mode 100644 index 00000000..bee86deb --- /dev/null +++ b/examples/running-llamas/configs/fp16+bt.yaml @@ -0,0 +1,9 @@ +defaults: + - _base_ + - _self_ + - override launcher: process + +experiment_name: fp16+bt + +backend: + to_bettertransformer: true diff --git a/examples/running-llamas/configs/fp16+dp=2.yaml b/examples/running-llamas/configs/fp16+dp=2.yaml new file mode 100644 index 00000000..80adde9d --- /dev/null +++ b/examples/running-llamas/configs/fp16+dp=2.yaml @@ -0,0 +1,15 @@ +defaults: + - _base_ + - _self_ + - override launcher: torchrun + +experiment_name: fp16+dp=2 + +launcher: + nproc_per_node: 2 + rdzv_endpoint: localhost:29511 + +hydra: + job: + env_set: + CUDA_VISIBLE_DEVICES: 0,1 diff --git a/examples/running-llamas/configs/fp16+fa2+tp=2.yaml b/examples/running-llamas/configs/fp16+fa2+tp=2.yaml new file mode 100644 index 00000000..a239e767 --- /dev/null +++ b/examples/running-llamas/configs/fp16+fa2+tp=2.yaml @@ -0,0 +1,22 @@ +defaults: + - _base_ + - _self_ + - override launcher: torchrun + +experiment_name: fp16+fa2+tp=2 + +launcher: + nproc_per_node: 2 + rdzv_endpoint: localhost:29544 + +backend: + use_flash_attention_2: true + deepspeed_inference: true + deepspeed_inference_config: + tensor_parallel: + tp_size: 2 + +hydra: + job: + env_set: + CUDA_VISIBLE_DEVICES: 0,1 diff --git a/examples/running-llamas/configs/fp16+fa2.yaml b/examples/running-llamas/configs/fp16+fa2.yaml new file mode 100644 index 00000000..b045ebd1 --- /dev/null +++ b/examples/running-llamas/configs/fp16+fa2.yaml @@ -0,0 +1,9 @@ +defaults: + - _base_ + - _self_ + - override launcher: process + +experiment_name: fp16+fa2 + +backend: + use_flash_attention_2: true diff --git a/examples/running-llamas/configs/fp16+gptq+exllamav1+dp=2.yaml b/examples/running-llamas/configs/fp16+gptq+exllamav1+dp=2.yaml new file mode 100644 index 00000000..f9a58bd4 --- /dev/null +++ b/examples/running-llamas/configs/fp16+gptq+exllamav1+dp=2.yaml @@ -0,0 +1,27 @@ +defaults: + - _base_ + - _self_ + - override launcher: torchrun + +experiment_name: fp16+gptq+exllamav1+dp=2 + +launcher: + nproc_per_node: 2 + rdzv_endpoint: localhost:29522 + +backend: + # for some reason core gets dumped + # with dummy weights + exllamav1 for 65B + no_weights: false + quantization_scheme: gptq + quantization_config: + exllama_config: + version: 1 + +hydra: + job: + env_set: + CUDA_VISIBLE_DEVICES: 0,1 + sweeper: + params: + model: TheBloke/LLaMa-7B-GPTQ,TheBloke/LLaMa-13B-GPTQ,TheBloke/LLaMa-65B-GPTQ diff --git a/examples/running-llamas/configs/fp16+gptq+exllamav1.yaml b/examples/running-llamas/configs/fp16+gptq+exllamav1.yaml new file mode 100644 index 00000000..c7555a8b --- /dev/null +++ b/examples/running-llamas/configs/fp16+gptq+exllamav1.yaml @@ -0,0 +1,20 @@ +defaults: + - _base_ + - _self_ + - override launcher: process + +experiment_name: fp16+gptq+exllamav1 + +backend: + # for some reason core gets dumped + # with 65B + exllamav1 + no_weights: false + quantization_scheme: gptq + quantization_config: + exllama_config: + version: 1 + +hydra: + sweeper: + params: + model: TheBloke/LLaMa-7B-GPTQ,TheBloke/LLaMa-13B-GPTQ,TheBloke/LLaMa-65B-GPTQ diff --git a/examples/running-llamas/configs/fp16+gptq+exllamav2+dp=2.yaml b/examples/running-llamas/configs/fp16+gptq+exllamav2+dp=2.yaml new file mode 100644 index 00000000..fdb85109 --- /dev/null +++ b/examples/running-llamas/configs/fp16+gptq+exllamav2+dp=2.yaml @@ -0,0 +1,27 @@ +defaults: + - _base_ + - _self_ + - override launcher: torchrun + +experiment_name: fp16+gptq+exllamav2+dp=2 + +launcher: + nproc_per_node: 2 + rdzv_endpoint: localhost:29533 + +backend: + # for some reason core gets dumped + # with dummy weights + exllamav2 + no_weights: false + quantization_scheme: gptq + quantization_config: + exllama_config: + version: 2 + +hydra: + job: + env_set: + CUDA_VISIBLE_DEVICES: 0,1 + sweeper: + params: + model: TheBloke/LLaMa-7B-GPTQ,TheBloke/LLaMa-13B-GPTQ,TheBloke/LLaMa-65B-GPTQ diff --git a/examples/running-llamas/configs/fp16+gptq+exllamav2.yaml b/examples/running-llamas/configs/fp16+gptq+exllamav2.yaml new file mode 100644 index 00000000..dd314d5d --- /dev/null +++ b/examples/running-llamas/configs/fp16+gptq+exllamav2.yaml @@ -0,0 +1,20 @@ +defaults: + - _base_ + - _self_ + - override launcher: process + +experiment_name: fp16+gptq+exllamav2 + +backend: + # for some reason core gets dumped + # with dummy weights + exllamav2 + no_weights: false + quantization_scheme: gptq + quantization_config: + exllama_config: + version: 2 + +hydra: + sweeper: + params: + model: TheBloke/LLaMa-7B-GPTQ,TheBloke/LLaMa-13B-GPTQ,TheBloke/LLaMa-65B-GPTQ diff --git a/examples/running-llamas/configs/fp16+tp=2.yaml b/examples/running-llamas/configs/fp16+tp=2.yaml new file mode 100644 index 00000000..712149df --- /dev/null +++ b/examples/running-llamas/configs/fp16+tp=2.yaml @@ -0,0 +1,21 @@ +defaults: + - _base_ + - _self_ + - override launcher: torchrun + +experiment_name: fp16+tp=2 + +launcher: + nproc_per_node: 2 + rdzv_endpoint: localhost:29544 + +backend: + deepspeed_inference: true + deepspeed_inference_config: + tensor_parallel: + tp_size: 2 + +hydra: + job: + env_set: + CUDA_VISIBLE_DEVICES: 0,1 diff --git a/examples/running-llamas/configs/fp16.yaml b/examples/running-llamas/configs/fp16.yaml new file mode 100644 index 00000000..432d986f --- /dev/null +++ b/examples/running-llamas/configs/fp16.yaml @@ -0,0 +1,6 @@ +defaults: + - _base_ + - _self_ + - override launcher: process + +experiment_name: fp16 diff --git a/examples/running-llamas/configs/gptq.yaml b/examples/running-llamas/configs/gptq.yaml deleted file mode 100644 index 3f15bdd5..00000000 --- a/examples/running-llamas/configs/gptq.yaml +++ /dev/null @@ -1,6 +0,0 @@ -defaults: - - _base_ - - _self_ - -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml deleted file mode 100644 index d2cd4143..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 1 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml deleted file mode 100644 index 41af721d..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=1 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=1 - id: '0' - num: 0 - config_name: _base_ - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml deleted file mode 100644 index 989520ff..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=1 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml deleted file mode 100644 index 6d8478b5..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 1 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: fp16-batch_size(1)-sequence_length(256)-new_tokens(512) -model: meta-llama/Llama-2-7b-hf -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv deleted file mode 100644 index 8161550f..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.0328,30.5,15153,13738,13767,13.5,37.9,15866,14356,14480 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml deleted file mode 100644 index 88fed34b..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 16 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml deleted file mode 100644 index 1b047280..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=16 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=16 - id: '4' - num: 4 - config_name: _base_ - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml deleted file mode 100644 index fdb7f01d..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=16 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml deleted file mode 100644 index 64882a0b..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 16 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: fp16-batch_size(16)-sequence_length(256)-new_tokens(512) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv deleted file mode 100644 index bad3d7ca..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.402,39.8,19165,16520,17779,17.4,471.0,27988,26442,84511 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml deleted file mode 100644 index f4197a4f..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 2 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml deleted file mode 100644 index 7ef5862d..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=2 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=2 - id: '1' - num: 1 - config_name: _base_ - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml deleted file mode 100644 index 8211b85f..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=2 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml deleted file mode 100644 index 1de85dc8..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 2 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: fp16-batch_size(2)-sequence_length(256)-new_tokens(512) -model: meta-llama/Llama-2-7b-hf -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv deleted file mode 100644 index 42a8985a..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.0579,34.5,15392,13924,14006,13.6,75.3,17003,15162,15617 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml deleted file mode 100644 index 6de5aaf7..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml +++ /dev/null @@ -1,246 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: [] - job: - name: experiment - chdir: true - override_dirname: '' - id: ??? - num: ??? - config_name: _base_ - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: ??? - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 2 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml deleted file mode 100644 index 589d9f13..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 4 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml deleted file mode 100644 index 8e3abfc7..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=4 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=4 - id: '2' - num: 2 - config_name: _base_ - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml deleted file mode 100644 index eef8c9ca..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=4 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml deleted file mode 100644 index eb07905d..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 4 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: fp16-batch_size(4)-sequence_length(256)-new_tokens(512) -model: meta-llama/Llama-2-7b-hf -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv deleted file mode 100644 index 3a40d093..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.107,37.4,16022,14295,14636,13.9,147.0,26346,16774,24960 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml deleted file mode 100644 index ff7402ca..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 8 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: fp16-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: meta-llama/Llama-2-7b-hf -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml deleted file mode 100644 index ed654ac1..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=8 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=8 - id: '3' - num: 3 - config_name: _base_ - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml deleted file mode 100644 index 8cd14374..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=8 diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml deleted file mode 100644 index a180796d..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 8 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: fp16-batch_size(8)-sequence_length(256)-new_tokens(512) -model: meta-llama/Llama-2-7b-hf -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv deleted file mode 100644 index 7fdc7a5f..00000000 --- a/examples/running-llamas/experiments/A100-80GB/fp16-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.204,39.2,17087,15037,15701,14.1,290.0,64889,19997,63503 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml deleted file mode 100644 index 03090426..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 1 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml deleted file mode 100644 index 65926c1f..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=1 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=1 - id: '0' - num: 0 - config_name: gptq - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml deleted file mode 100644 index 989520ff..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=1 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml deleted file mode 100644 index 256e0e54..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 1 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: gptq-batch_size(1)-sequence_length(256)-new_tokens(512) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv deleted file mode 100644 index da04a0c3..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(1)-sequence_length(256)-new_tokens(512)/0/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.0458,21.8,6746,4298,4450,14.8,34.6,7606,4916,5309 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml deleted file mode 100644 index 58457ece..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 16 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml deleted file mode 100644 index c9e56066..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=16 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=16 - id: '4' - num: 4 - config_name: gptq - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml deleted file mode 100644 index fdb7f01d..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=16 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml deleted file mode 100644 index ad91270b..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 16 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: gptq-batch_size(16)-sequence_length(256)-new_tokens(512) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv deleted file mode 100644 index 0b114e75..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(16)-sequence_length(256)-new_tokens(512)/4/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.415,38.6,10900,7080,8604,24.6,333.0,65676,17002,83596 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml deleted file mode 100644 index 90ddbb6e..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 2 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml deleted file mode 100644 index 77d220f4..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=2 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=2 - id: '1' - num: 1 - config_name: gptq - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml deleted file mode 100644 index 8211b85f..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=2 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml deleted file mode 100644 index d946b75c..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 2 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: gptq-batch_size(2)-sequence_length(256)-new_tokens(512) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv deleted file mode 100644 index 1797a299..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/1/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.0706,28.3,6872,4484,4575,15.4,66.5,8822,5722,6526 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml deleted file mode 100644 index 667d738e..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(2)-sequence_length(256)-new_tokens(512)/multirun.yaml +++ /dev/null @@ -1,246 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: [] - job: - name: experiment - chdir: true - override_dirname: '' - id: ??? - num: ??? - config_name: gptq - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: ??? - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 2 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml deleted file mode 100644 index 97f81007..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 4 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml deleted file mode 100644 index d5efb914..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=4 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=4 - id: '2' - num: 2 - config_name: gptq - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml deleted file mode 100644 index eef8c9ca..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=4 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml deleted file mode 100644 index eb2c9cbd..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 4 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: gptq-batch_size(4)-sequence_length(256)-new_tokens(512) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv deleted file mode 100644 index e54a036c..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(4)-sequence_length(256)-new_tokens(512)/2/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.122,32.8,7761,4855,5465,15.3,134.0,18085,7335,15789 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml deleted file mode 100644 index 3a4085f7..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/config.yaml +++ /dev/null @@ -1,73 +0,0 @@ -backend: - name: pytorch - version: ${pytorch_version:} - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: ${is_inference:${benchmark.name}} - eval_mode: ${is_inference:${benchmark.name}} - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 8 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: ${can_diffuse:${task}} - can_generate: ${can_generate:${task}} - forward_kwargs: {} - generate_kwargs: {} -experiment_name: gptq-batch_size(${benchmark.input_shapes.batch_size})-sequence_length(${benchmark.input_shapes.sequence_length})-new_tokens(${benchmark.new_tokens}) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda:0 -task: ${infer_task:${model}} -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml deleted file mode 100644 index 5f8fa193..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/hydra.yaml +++ /dev/null @@ -1,174 +0,0 @@ -hydra: - run: - dir: experiments/${experiment_name} - sweep: - dir: experiments/${experiment_name} - subdir: ${hydra.job.num} - launcher: - _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher - sweeper: - _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper - max_batch_size: null - params: - benchmark.input_shapes.batch_size: 1,2,4,8,16 - help: - app_name: ${hydra.job.name} - header: '${hydra.help.app_name} is powered by Hydra. - - ' - footer: 'Powered by Hydra (https://hydra.cc) - - Use --hydra-help to view Hydra specific help - - ' - template: '${hydra.help.header} - - == Configuration groups == - - Compose your configuration from those groups (group=option) - - - $APP_CONFIG_GROUPS - - - == Config == - - Override anything in the config (foo.bar=value) - - - $CONFIG - - - ${hydra.help.footer} - - ' - hydra_help: - template: 'Hydra (${hydra.runtime.version}) - - See https://hydra.cc for more info. - - - == Flags == - - $FLAGS_HELP - - - == Configuration groups == - - Compose your configuration from those groups (For example, append hydra/job_logging=disabled - to command line) - - - $HYDRA_CONFIG_GROUPS - - - Use ''--cfg hydra'' to Show the Hydra config. - - ' - hydra_help: ??? - hydra_logging: - version: 1 - formatters: - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(purple)sHYDRA%(reset)s] %(message)s' - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - root: - level: INFO - handlers: - - console - disable_existing_loggers: false - job_logging: - version: 1 - formatters: - simple: - format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s' - colorlog: - (): colorlog.ColoredFormatter - format: '[%(cyan)s%(asctime)s%(reset)s][%(blue)s%(name)s%(reset)s][%(log_color)s%(levelname)s%(reset)s] - - %(message)s' - log_colors: - DEBUG: purple - INFO: green - WARNING: yellow - ERROR: red - CRITICAL: red - handlers: - console: - class: logging.StreamHandler - formatter: colorlog - stream: ext://sys.stdout - file: - class: logging.FileHandler - formatter: simple - filename: ${hydra.job.name}.log - root: - level: INFO - handlers: - - console - - file - disable_existing_loggers: false - env: {} - mode: MULTIRUN - searchpath: [] - callbacks: {} - output_subdir: .hydra - overrides: - hydra: - - hydra.mode=MULTIRUN - task: - - benchmark.input_shapes.batch_size=8 - job: - name: experiment - chdir: true - override_dirname: benchmark.input_shapes.batch_size=8 - id: '3' - num: 3 - config_name: gptq - env_set: - CUDA_VISIBLE_DEVICES: '3' - CUDA_DEVICE_ORDER: PCI_BUS_ID - env_copy: [] - config: - override_dirname: - kv_sep: '=' - item_sep: ',' - exclude_keys: [] - runtime: - version: 1.3.2 - version_base: '1.3' - cwd: /workspace/optimum-benchmark/examples/running-llamas - config_sources: - - path: hydra.conf - schema: pkg - provider: hydra - - path: optimum_benchmark - schema: pkg - provider: main - - path: hydra_plugins.hydra_colorlog.conf - schema: pkg - provider: hydra-colorlog - - path: /workspace/optimum-benchmark/examples/running-llamas/configs - schema: file - provider: command-line - - path: '' - schema: structured - provider: schema - output_dir: /workspace/optimum-benchmark/examples/running-llamas/experiments/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3 - choices: - benchmark: inference - backend: pytorch - hydra/env: default - hydra/callbacks: null - hydra/job_logging: colorlog - hydra/hydra_logging: colorlog - hydra/hydra_help: default - hydra/help: default - hydra/sweeper: basic - hydra/launcher: basic - hydra/output: default - verbose: false diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml deleted file mode 100644 index 8cd14374..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/.hydra/overrides.yaml +++ /dev/null @@ -1 +0,0 @@ -- benchmark.input_shapes.batch_size=8 diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml deleted file mode 100644 index 06e20479..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/hydra_config.yaml +++ /dev/null @@ -1,79 +0,0 @@ -backend: - name: pytorch - version: 2.1.0+cu118 - _target_: optimum_benchmark.backends.pytorch.backend.PyTorchBackend - seed: 42 - inter_op_num_threads: null - intra_op_num_threads: null - initial_isolation_check: false - continous_isolation_check: false - delete_cache: false - no_weights: false - device_map: null - torch_dtype: float16 - disable_grad: true - eval_mode: true - amp_autocast: false - amp_dtype: null - torch_compile: false - torch_compile_config: {} - bettertransformer: false - quantization_scheme: null - quantization_config: {} - use_ddp: false - ddp_config: {} - peft_strategy: null - peft_config: {} -benchmark: - name: inference - _target_: optimum_benchmark.benchmarks.inference.benchmark.InferenceBenchmark - duration: 10 - warmup_runs: 10 - memory: true - energy: false - input_shapes: - batch_size: 8 - sequence_length: 256 - num_choices: 1 - feature_size: 80 - nb_max_frames: 3000 - audio_sequence_length: 16000 - new_tokens: 512 - can_diffuse: false - can_generate: true - forward_kwargs: {} - generate_kwargs: - max_new_tokens: 512 - min_new_tokens: 512 - do_sample: false - use_cache: true - pad_token_id: 0 - num_beams: 1 -experiment_name: gptq-batch_size(8)-sequence_length(256)-new_tokens(512) -model: TheBloke/Llama-2-7B-GPTQ -device: cuda -task: text-generation -hub_kwargs: - revision: main - cache_dir: null - force_download: false - local_files_only: false -environment: - optimum_version: 1.13.2 - optimum_commit: null - transformers_version: 4.34.1 - transformers_commit: null - accelerate_version: 0.24.1 - accelerate_commit: null - diffusers_version: null - diffusers_commit: null - python_version: 3.10.12 - system: Linux - cpu: ' AMD EPYC 7742 64-Core Processor' - cpu_count: 128 - cpu_ram_mb: 540684 - gpus: - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB - - NVIDIA A100-SXM4-80GB diff --git a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv b/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv deleted file mode 100644 index 5c52e357..00000000 --- a/examples/running-llamas/experiments/A100-80GB/gptq-batch_size(8)-sequence_length(256)-new_tokens(512)/3/inference_results.csv +++ /dev/null @@ -1,2 +0,0 @@ -forward.latency(s),forward.throughput(samples/s),forward.max_memory_used(MB),forward.max_memory_allocated(MB),forward.max_memory_reserved(MB),generate.latency(s),generate.throughput(tokens/s),generate.max_memory_used(MB),generate.max_memory_allocated(MB),generate.max_memory_reserved(MB) -0.223,35.9,8826,5597,6530,19.9,206.0,56629,10557,54333 diff --git a/examples/running-llamas/report.py b/examples/running-llamas/report.py index eccd2d65..316f5bc1 100644 --- a/examples/running-llamas/report.py +++ b/examples/running-llamas/report.py @@ -1,30 +1,34 @@ from argparse import ArgumentParser from pathlib import Path +from typing import List import matplotlib.pyplot as plt +import numpy as np import pandas as pd from flatten_dict import flatten from omegaconf import OmegaConf from pandas import DataFrame -from rich.console import Console -from rich.table import Table -from rich.terminal_theme import MONOKAI -def gather_full_report(root_folder: Path, report_folder: str = "artifacts") -> DataFrame: +def gather_full_report(root_folders: List[Path], report_folder: str = "artifacts") -> DataFrame: # key is path to inference file as string, value is dataframe - inference_dfs = { - f.parent.absolute().as_posix(): pd.read_csv(f) for f in root_folder.glob("**/inference_results.csv") - } - # key is path to config file as string, value is flattened dict - config_dfs = { - f.parent.absolute() - .as_posix(): pd.DataFrame.from_dict(flatten(OmegaConf.load(f), reducer="dot"), orient="index") - .T - for f in root_folder.glob("**/hydra_config.yaml") - if f.parent.absolute().as_posix() in inference_dfs.keys() - } + config_dfs = {} + inference_dfs = {} + + for root_folder in root_folders: + inference_dfs.update( + {f.parent.absolute().as_posix(): pd.read_csv(f) for f in root_folder.glob("**/inference_results.csv")} + ) + config_dfs.update( + { + f.parent.absolute() + .as_posix(): pd.DataFrame.from_dict(flatten(OmegaConf.load(f), reducer="dot"), orient="index") + .T + for f in root_folder.glob("**/hydra_config.yaml") + if f.parent.absolute().as_posix() in inference_dfs.keys() + } + ) if len(inference_dfs) == 0 or len(config_dfs) == 0: raise ValueError(f"No results found in {root_folder}") @@ -36,9 +40,6 @@ def gather_full_report(root_folder: Path, report_folder: str = "artifacts") -> D # Concatenate all reports inference_report = pd.concat(inference_reports, axis=0, ignore_index=True) - inference_report.set_index("experiment_name", inplace=True) - - inference_report.sort_values(by="forward.throughput(samples/s)", ascending=False, inplace=True) inference_report.to_csv(f"{report_folder}/full_report.csv") return inference_report @@ -46,225 +47,205 @@ def gather_full_report(root_folder: Path, report_folder: str = "artifacts") -> D def get_short_report(full_report, report_folder: str = "artifacts"): short_columns = { - "environment.gpus": "GPU", - "benchmark.input_shapes.batch_size": "Batch Size", - "forward.latency(s)": "Forward Latency (s)", - "forward.throughput(samples/s)": "Forward Throughput (samples/s)", - "forward.max_memory_used(MB)": "Forward Max Memory Used (MB)", - "forward.max_memory_allocated(MB)": "Forward Max Memory Allocated (MB)", - "forward.max_memory_reserved(MB)": "Forward Max Memory Reserved (MB)", - "generate.throughput(tokens/s)": "Generate Throughput (tokens/s)", - "generate.max_memory_used(MB)": "Generate Max Memory Used (MB)", + "model": "Model", + "environment.gpus": "GPUs", + "experiment_name": "Experiment Name", + "benchmark.input_shapes.batch_size": "Per Process Batch Size", + "benchmark.input_shapes.sequence_length": "Sequence Length", + # + "decode.latency(s)": "Decode Latency (s)", + "forward.latency(s)": "Prefill Latency (s)", + # + "decode.throughput(tokens/s)": "Decode Throughput (tokens/s)", + "forward.throughput(samples/s)": "Prefill Throughput (samples/s)", + # "generate.max_memory_allocated(MB)": "Generate Max Memory Allocated (MB)", "generate.max_memory_reserved(MB)": "Generate Max Memory Reserved (MB)", } short_report = full_report[list(short_columns.keys())].rename(columns=short_columns) - short_report["Quantization Scheme"] = full_report.index.str.split("-").str[0] - short_report["Quantization Scheme"].fillna("unquantized", inplace=True) - short_report["Quantization Scheme"].replace("bnb", "BnB", inplace=True) - short_report["Quantization Scheme"].replace("gptq", "GPTQ", inplace=True) - short_report["Quantization Scheme"].replace("gptq+triton", "GPTQ+Triton", inplace=True) - short_report["Quantization Scheme"].replace("gptq+cuda_old", "GPTQ+CUDA_old", inplace=True) - - short_report["GPU"] = short_report["GPU"].str[0] - short_report["GPU"].replace("AMD INSTINCT MI250 (MCM) OAM AC MBA", "MI250", inplace=True) - short_report["GPU"].replace("NVIDIA A100-SXM4-80GB", "A100", inplace=True) - - short_report["Group"] = short_report["GPU"] + "-" + short_report["Quantization Scheme"] + short_report["GPU Name"] = short_report["GPUs"].str[0] + short_report["Num GPUs"] = short_report["GPUs"].str.len() + short_report["GPU Name"].replace("NVIDIA A100-SXM4-80GB", "1xA100", inplace=True) + short_report["GPU Name"].replace("AMD INSTINCT MI250 (MCM) OAM AC MBA", "1xMI250", inplace=True) + short_report["Effective Batch Size"] = short_report["Per Process Batch Size"] * short_report["Num GPUs"] + short_report["Group"] = short_report["GPU Name"] + "-" + short_report["Experiment Name"] short_report.to_csv(f"{report_folder}/short_report.csv") return short_report -def get_plots(short_report, memory: str = "allocated", report_folder: str = "artifacts"): - # for each quantization scheme we plot the throughput vs batch size +def get_batch_plots(short_report, report_folder, plot="bar", memory=True): fig1, ax1 = plt.subplots() fig2, ax2 = plt.subplots() fig3, ax3 = plt.subplots() fig4, ax4 = plt.subplots() - for group in short_report["Group"].unique(): - mask = short_report["Group"] == group + batch_column = "Effective Batch Size" + short_report = short_report.sort_values(by="Group", ascending=True) + groups = short_report["Group"].unique().tolist() + x = np.arange(len(short_report[batch_column].unique())) + width = 0.8 / len(short_report["Group"].unique().tolist()) + offset = -(width * (len(groups) - 1) / 2) - forward_latency = short_report[mask][["Batch Size", "Forward Latency (s)"]].sort_values(by="Batch Size") - generate_throughput = short_report[mask][["Batch Size", "Generate Throughput (tokens/s)"]].sort_values( - by="Batch Size" - ) - forward_memory = short_report[mask][["Batch Size", "Forward Max Memory Used (MB)"]].sort_values( - by="Batch Size" - ) - forward_pytorch_max_memory_allocated = short_report[mask][ - ["Batch Size", "Forward Max Memory Allocated (MB)"] - ].sort_values(by="Batch Size") - forward_pytorch_max_memory_reserved = short_report[mask][ - ["Batch Size", "Forward Max Memory Reserved (MB)"] - ].sort_values(by="Batch Size") - generate_memory = short_report[mask][["Batch Size", "Generate Max Memory Used (MB)"]].sort_values( - by="Batch Size" - ) - generate_pytorch_max_memory_allocated = short_report[mask][ - ["Batch Size", "Generate Max Memory Allocated (MB)"] - ].sort_values(by="Batch Size") - generate_pytorch_max_memory_reserved = short_report[mask][ - ["Batch Size", "Generate Max Memory Reserved (MB)"] - ].sort_values(by="Batch Size") - - ax1.plot( - forward_latency["Batch Size"], - forward_latency["Forward Latency (s)"], - label=group, - marker="o", - ) - ax2.plot( - generate_throughput["Batch Size"], - generate_throughput["Generate Throughput (tokens/s)"], - label=group, - marker="o", + for group in groups: + mask = short_report["Group"] == group + group_report = short_report[mask].sort_values(by=batch_column) + x_ = np.arange( + group_report[batch_column].min() - 1, + len(group_report[batch_column].unique()) + (group_report[batch_column].min() - 1), ) - if "used" in memory: - ax3.plot( - forward_memory["Batch Size"], - forward_memory["Forward Max Memory Used (MB)"], - label=group + "-used", - marker="^", + if plot == "bar": + ax1.bar( + x_ + offset, + group_report["Prefill Latency (s)"], + label=group, + width=width, ) - ax4.plot( - generate_memory["Batch Size"], - generate_memory["Generate Max Memory Used (MB)"], - label=group + "-used", - marker="^", + ax2.bar( + x_ + offset, + group_report["Decode Throughput (tokens/s)"], + label=group, + width=width, ) - if "reserved" in memory: - ax3.plot( - forward_pytorch_max_memory_reserved["Batch Size"], - forward_pytorch_max_memory_reserved["Forward Max Memory Reserved (MB)"], - label=group + "-reserved", - marker=".", + ax3.bar( + x_ + offset, + group_report["Generate Max Memory Allocated (MB)"], + label=group, + width=width, ) - ax4.plot( - generate_pytorch_max_memory_reserved["Batch Size"], - generate_pytorch_max_memory_reserved["Generate Max Memory Reserved (MB)"], - label=group + "-reserved", - marker=".", + ax4.bar( + x_ + offset, + group_report["Generate Max Memory Reserved (MB)"], + label=group, + width=width, + ) + offset += width + elif plot == "line": + ax1.plot( + x_, + group_report["Prefill Latency (s)"], + label=group, + marker="o", + ) + ax2.plot( + x_, + group_report["Decode Throughput (tokens/s)"], + label=group, + marker="o", ) - if "allocated" in memory: ax3.plot( - forward_pytorch_max_memory_allocated["Batch Size"], - forward_pytorch_max_memory_allocated["Forward Max Memory Allocated (MB)"], - label=group + "-allocated", - marker="*", + x_, + group_report["Generate Max Memory Allocated (MB)"], + label=group, + marker="o", ) ax4.plot( - generate_pytorch_max_memory_allocated["Batch Size"], - generate_pytorch_max_memory_allocated["Generate Max Memory Allocated (MB)"], - label=group + "-allocated", - marker="*", + x_, + group_report["Generate Max Memory Reserved (MB)"], + label=group, + marker="o", ) - ax1.set_xlabel("Batch Size") - ax1.set_ylabel("Forward Latency (s)") - ax1.set_title("Forward Latency per Batch Size") - - ax2.set_xlabel("Batch Size") - ax2.set_ylabel("Generate Throughput (tokens/s)") - ax2.set_title("Generate Throughput per Batch Size") - - ax3.set_xlabel("Batch Size") - ax3.set_ylabel("Forward Max Memory Used (MB)") - ax3.set_title("Forward Max Memory Used per Batch Size") - - ax4.set_xlabel("Batch Size") - ax4.set_ylabel("Generate Max Memory Used (MB)") - ax4.set_title("Generate Max Memory Used per Batch Size") - + ax1.set_xticks(x) + ax1.set_ylim(bottom=0) + ax1.set_xticklabels(short_report[batch_column].sort_values().unique().tolist()) + ax1.set_xlabel(batch_column) + ax1.set_ylabel("Prefill Latency (s)") + ax1.set_title(f"Prefill Latency per Batch Size ({short_report['Model'].unique()[0]})") ax1.legend(fancybox=True, shadow=True) + + ax2.set_xticks(x) + ax2.set_ylim(bottom=0) + ax2.set_xticklabels(short_report[batch_column].sort_values().unique().tolist()) + ax2.set_xlabel(batch_column) + ax2.set_ylabel("Effective Decode Throughput (tokens/s)") + ax2.set_title(f"Decode Throughput per Batch Size ({short_report['Model'].unique()[0]})") ax2.legend(fancybox=True, shadow=True) + + ax3.set_xticks(x) + ax3.set_ylim(bottom=0) + ax3.set_xticklabels(short_report[batch_column].sort_values().unique().tolist()) + ax3.set_xlabel(batch_column) + ax3.set_ylabel("Generate Max Memory Allocated (MB)") + ax3.set_title(f"Generate Max Memory Allocated per Batch Size ({short_report['Model'].unique()[0]})") ax3.legend(fancybox=True, shadow=True) + + ax4.set_xticks(x) + ax4.set_ylim(bottom=0) + ax4.set_xticklabels(short_report[batch_column].sort_values().unique().tolist()) + ax4.set_xlabel(batch_column) + ax4.set_ylabel("Generate Max Memory Reserved (MB)") + ax4.set_title(f"Generate Max Memory Reserved per Batch Size ({short_report['Model'].unique()[0]})") ax4.legend(fancybox=True, shadow=True) - fig1.savefig(f"{report_folder}/forward_latency_plot.png") - fig2.savefig(f"{report_folder}/generate_throughput_plot.png") - fig3.savefig(f"{report_folder}/forward_memory_plot.png") - fig4.savefig(f"{report_folder}/generate_memory_plot.png") - - return fig1, fig2, fig3, fig4 - - -def style_element(element, style=""): - if style: - return f"[{style}]{element}[/{style}]" - else: - return element - - -def format_element(element, style=""): - if isinstance(element, float): - if element != element: # nan - formated_element = "" - elif abs(element) >= 1: - formated_element = f"{element:.2f}" - elif abs(element) > 1e-6: - formated_element = f"{element:.2e}" - else: - formated_element = f"{element}" - elif element is None: - formated_element = "" - elif isinstance(element, bool): - if element: - formated_element = style_element("✔", style="green") - else: - formated_element = style_element("✘", style="red") - else: - formated_element = str(element) - - return style_element(formated_element, style=style) - - -def format_row(row, style=""): - formated_row = [] - for element in row: - formated_row.append(format_element(element, style=style)) - return formated_row - - -def get_rich_table(short_report, report_folder: str = "artifacts"): - # create rich table - rich_table = Table(show_header=True, show_lines=True) - # we add a column for the index - rich_table.add_column("Experiment Name", justify="left", header_style="") - # we populate the table with values - for column in short_report.columns: - rich_table.add_column(column, justify="right", header_style="bold") - # we add rows - for index, row in short_report.iterrows(): - rich_table.add_row(index, *format_row(row.values, style="")) - - console = Console(record=True) - console.print(rich_table, justify="center") - console.save_svg(f"{report_folder}/rich_table.svg", theme=MONOKAI, title="Inference Report") - - return rich_table + legend = plt.legend(loc="upper center") + legend.get_frame().set_facecolor((0, 0, 1, 0.1)) + legend.get_frame().set_alpha(None) + plt.tight_layout() + + fig1.savefig(f"{report_folder}/prefill_latency_{plot}_plot.png") + fig2.savefig(f"{report_folder}/decode_throughput_{plot}_plot.png") + + if memory: + fig3.savefig(f"{report_folder}/generate_max_memory_allocated_{plot}_plot.png") + fig4.savefig(f"{report_folder}/generate_max_memory_reserved_{plot}_plot.png") + return fig1, fig2, fig3, fig4 + + return fig1, fig2 + + +def get_peak_decode_throughput_plot(short_report, report_folder): + # a bar plot with one bar per group, representing the max attainable throughput in tokens/s + fig, ax = plt.subplots() + + # + max_decode_throughput = short_report.groupby("Group")["Decode Throughput (tokens/s)"].max().reset_index() + max_decode_throughput = ( + short_report.merge(max_decode_throughput, on=["Group", "Decode Throughput (tokens/s)"]) + .sort_values(by="Decode Throughput (tokens/s)", ascending=True) + .reset_index() + ) + + ax.bar( + max_decode_throughput["Group"], + max_decode_throughput["Decode Throughput (tokens/s)"], + color=plt.cm.Paired(np.arange(len(max_decode_throughput))), + ) + + # add batch size on top of each bar + for i, v in enumerate(max_decode_throughput["Effective Batch Size"]): + ax.text( + i, + max_decode_throughput["Decode Throughput (tokens/s)"].iloc[i], + f"bs={v}", + ha="center", + va="bottom", + ) + + ax.set_xlabel("Group") + ax.set_ylabel("Peak Decode Throughput (tokens/s)") + ax.set_title(f"Peak Decode Throughput ({short_report['Model'].unique()[0]})") + ax.set_ylim(top=max_decode_throughput["Decode Throughput (tokens/s)"].max() * 1.1) + + plt.xticks(rotation=45, ha="right") + plt.tight_layout() + + fig.savefig(f"{report_folder}/peak_decode_throughput_bar_plot.png") + + return fig def generate_report(): parser = ArgumentParser() parser.add_argument( - "--experiments", + "--experiments-folders", "-e", type=Path, + nargs="+", required=True, help="The folder containing the results of experiments.", ) - parser.add_argument( - "--memory", - "-m", - nargs="*", - type=str, - required=False, - help="choose memory metric", - choices=["used", "reserved", "allocated"], - ) parser.add_argument( "--report-name", "-r", @@ -276,20 +257,32 @@ def generate_report(): args = parser.parse_args() report_folder = args.report_name - experiments_folders = args.experiments + experiments_folders = args.experiments_folders Path(report_folder).mkdir(parents=True, exist_ok=True) - if args.memory is None: - memory = ["used", "reserved", "allocated"] - else: - memory = args.memory - # gather experiments results - full_report = gather_full_report(experiments_folders, report_folder=report_folder) - short_report = get_short_report(full_report, report_folder=report_folder) - figs = get_plots(short_report, memory=memory, report_folder=report_folder) - rich_table = get_rich_table(short_report, report_folder=report_folder) + full_report = gather_full_report( + root_folders=experiments_folders, + report_folder=report_folder, + ) + short_report = get_short_report( + full_report, + report_folder=report_folder, + ) + for plot in ["bar", "line"]: + _ = get_batch_plots( + short_report, + report_folder, + plot=plot, + memory=True, + ) + + _ = get_peak_decode_throughput_plot( + short_report, + report_folder, + ) + print("Report generated successfully!") if __name__ == "__main__": diff --git a/optimum_benchmark/backends/isolation_utils.py b/optimum_benchmark/backends/isolation_utils.py index 447fc787..90c39f2e 100644 --- a/optimum_benchmark/backends/isolation_utils.py +++ b/optimum_benchmark/backends/isolation_utils.py @@ -3,8 +3,9 @@ import signal import time from logging import getLogger -from typing import Dict, List +from typing import Dict, Set +import psutil from omegaconf import OmegaConf from ..env_utils import is_nvidia_system, is_rocm_system @@ -13,13 +14,13 @@ LOGGER = getLogger("isolation") -def check_cuda_isolation(isolated_devices: List[int], permitted_pids: List[int]) -> None: +def check_cuda_isolation(isolated_devices: Set[int], permitted_pids: Set[int]) -> None: """ - Raises a RuntimeError if any process other than the permitted ones is running on the specified CUDA devices. + Returns a set of pids that are running on the specified CUDA devices and are not in the permitted_pids set. """ - pids: Dict[int, set] = {} + devices_pids: Dict[int, set] = {} for device_id in isolated_devices: - pids[device_id] = set() + devices_pids[device_id] = set() if is_nvidia_system(): if not is_py3nvml_available(): @@ -38,7 +39,7 @@ def check_cuda_isolation(isolated_devices: List[int], permitted_pids: List[int]) LOGGER.warning(f"Found unexpected process {device_process.pid} on device {device_id}.") LOGGER.warning(f"Process info: {device_process}") - pids[device_id].add(device_process.pid) + devices_pids[device_id].add(device_process.pid) nvml.nvmlShutdown() elif is_rocm_system(): @@ -78,7 +79,7 @@ def check_cuda_isolation(isolated_devices: List[int], permitted_pids: List[int]) LOGGER.warning(f"Found unexpected process {info['pid']} on device {device_id}.") LOGGER.warning(f"Process info: {info}") - pids[device_id].add(info["pid"]) + devices_pids[device_id].add(info["pid"]) else: devices_handles = amdsmi.amdsmi_get_device_handles() for device_id in isolated_devices: @@ -103,22 +104,19 @@ def check_cuda_isolation(isolated_devices: List[int], permitted_pids: List[int]) LOGGER.warning(f"Found unexpected process {info['pid']} on device {device_id}.") LOGGER.warning(f"Process info: {info}") - pids[device_id].add(info["pid"]) + devices_pids[device_id].add(info["pid"]) amdsmi.amdsmi_shut_down() else: raise ValueError("check_no_process_is_running_on_cuda_device is only supported on NVIDIA and AMD GPUs.") - all_pids = set() - for device_id in isolated_devices: - all_pids |= pids[device_id] - other_pids = all_pids - set(permitted_pids) + all_devices_pids = set() + for device_pids in devices_pids.values(): + all_devices_pids = all_devices_pids.union(device_pids) - if len(other_pids) > 0: - error_message = ( - f"Expected only process(se) {permitted_pids} on device(s) {isolated_devices}, but found {other_pids}." - ) - raise RuntimeError(error_message) + non_permitted_pids = all_devices_pids - permitted_pids + + return non_permitted_pids def check_cuda_continuous_isolation(isolated_pid: int, isolation_check_interval: int = 1) -> None: @@ -126,16 +124,14 @@ def check_cuda_continuous_isolation(isolated_pid: int, isolation_check_interval: Kills the isolated process if any other process than the permitted ones is running on the specified CUDA devices. """ - hydra_conf = OmegaConf.load(".hydra/hydra.yaml") - logging.config.dictConfig(OmegaConf.to_container(hydra_conf.hydra.job_logging, resolve=True)) - # distributed setting is tricky if os.environ.get("LOCAL_WORLD_SIZE", None) is not None: from torch.distributed import TCPStore local_rank = os.environ["LOCAL_RANK"] - all_isolated_keys = [f"isolated_{other_rank}" for other_rank in range(int(os.environ["LOCAL_WORLD_SIZE"]))] - all_isolators_keys = [f"isolator_{other_rank}" for other_rank in range(int(os.environ["LOCAL_WORLD_SIZE"]))] + local_world_size = os.environ["LOCAL_WORLD_SIZE"] + all_isolated_keys = [f"isolated_{other_rank}" for other_rank in range(int(local_world_size))] + all_isolators_keys = [f"isolator_{other_rank}" for other_rank in range(int(local_world_size))] store = TCPStore(host_name=os.environ["MASTER_ADDR"], port=int(os.environ["MASTER_PORT"])) @@ -146,24 +142,35 @@ def check_cuda_continuous_isolation(isolated_pid: int, isolation_check_interval: all_isolated_pids = [int(store.get(name)) for name in all_isolated_keys] all_isolators_pids = [int(store.get(name)) for name in all_isolators_keys] permitted_pids = all_isolated_pids + all_isolators_pids - assert len(permitted_pids) == len(set(permitted_pids)), "Found duplicated pids in the distributed setting" else: isolator_pid = os.getpid() - permitted_pids = [isolator_pid, isolated_pid] - - isolated_devices = [int(device) for device in os.environ["CUDA_VISIBLE_DEVICES"].split(",")] - - LOGGER.info( - f"Continuously checking only process(es) {permitted_pids} is/are running on device(s) {isolated_devices}" - ) + all_isolated_pids = [isolated_pid] + all_isolators_pids = [isolator_pid] + + permitted_pids = all_isolated_pids + all_isolators_pids + assert len(permitted_pids) == len(set(permitted_pids)), "Found duplicated pids in the non-distributed setting" + permitted_pids = set(permitted_pids) + + # TODO: make backend only spawn one process per local world + if os.environ.get("LOCAL_RANK", "0") == "0": + hydra_conf = OmegaConf.load(".hydra/hydra.yaml") + logging.config.dictConfig(OmegaConf.to_container(hydra_conf.hydra.job_logging, resolve=True)) + isolated_devices = {int(device) for device in os.environ["CUDA_VISIBLE_DEVICES"].split(",")} + LOGGER.info( + f"Continuously checking only permitted process(es) {permitted_pids} " + f"are running on isolated device(s) {isolated_devices}" + ) + else: + return while True: - try: - check_cuda_isolation(isolated_devices, permitted_pids) + non_permitted_pids = check_cuda_isolation(isolated_devices, permitted_pids) + if len(non_permitted_pids) > 0: + LOGGER.error(f"Found non permitted process(es) {non_permitted_pids} running on isolated device(s).") + for pid in all_isolated_pids: + if psutil.pid_exists(pid): + LOGGER.error(f"Terminating isolated process {pid}.") + os.kill(pid, signal.SIGTERM) + exit(1) + else: time.sleep(isolation_check_interval) - except RuntimeError as e: - LOGGER.error("Error while checking CUDA isolation:") - LOGGER.error(e) - LOGGER.error("Killing isolated process...") - os.kill(isolated_pid, signal.SIGTERM) # graceful kill, will trigger the backend cleanup - e.with_traceback() diff --git a/optimum_benchmark/backends/pytorch/backend.py b/optimum_benchmark/backends/pytorch/backend.py index 15884c57..f6e960e4 100644 --- a/optimum_benchmark/backends/pytorch/backend.py +++ b/optimum_benchmark/backends/pytorch/backend.py @@ -29,15 +29,26 @@ def configure(self, config: PyTorchConfig) -> None: LOGGER.info(f"\t+ Inferred AutoModel class {automodel} for task {self.task} and model_type {self.model_type}") # for now we rely on this env variable to know if we're in a distributed setting - if os.environ.get("LOCAL_WORLD_SIZE", None) is not None: - LOGGER.info(f"\t+ Detected local world size: {os.environ['LOCAL_WORLD_SIZE']}") + if os.environ.get("WORLD_SIZE", None) is not None: + LOGGER.info("\t+ Detected distributed CUDA environment") + + visible_devices = os.environ["CUDA_VISIBLE_DEVICES"].split(",") + LOGGER.info(f"\t+ Detected cuda visible devices: {visible_devices}") + + world_size = int(os.environ["WORLD_SIZE"]) + LOGGER.info(f"\t+ Detected world size: {world_size}") + + local_world_size = int(os.environ["LOCAL_WORLD_SIZE"]) + LOGGER.info(f"\t+ Detected local world size: {local_world_size}") + + rank = int(os.environ["RANK"]) + LOGGER.info(f"\t+ Detected rank: {rank}") + local_rank = int(os.environ["LOCAL_RANK"]) LOGGER.info(f"\t+ Detected local rank: {local_rank}") - available_devices = list(map(int, os.environ.get("CUDA_VISIBLE_DEVICES", "0").split(","))) - LOGGER.info(f"\t+ Detected available devices: {available_devices}") - default_device = available_devices[local_rank] - LOGGER.info(f"\t+ Setting default device to: {default_device}") - torch.cuda.set_device(default_device) + + LOGGER.info("\t+ Setting default cuda device to local rank") + torch.cuda.set_device(local_rank) # Gradients options if self.config.disable_grad: diff --git a/optimum_benchmark/backends/pytorch/config.py b/optimum_benchmark/backends/pytorch/config.py index 3f43678c..f1cbbc95 100644 --- a/optimum_benchmark/backends/pytorch/config.py +++ b/optimum_benchmark/backends/pytorch/config.py @@ -18,8 +18,8 @@ TORCH_DTYPES = ["bfloat16", "float16", "float32", "auto"] QUANTIZATION_CONFIGS = { - "gptq": {"dataset": ["lorem ipsum dolor sit amet consectetur"]}, "bnb": {"llm_int8_threshold": 0.0}, + "gptq": {}, "awq": {}, } COMPILE_CONFIG = { @@ -43,7 +43,7 @@ class PyTorchConfig(BackendConfig): device_map: Optional[str] = None torch_dtype: Optional[str] = None - # inference options + # inference/training options eval_mode: bool = "${is_inference:${benchmark.name}}" disable_grad: bool = "${is_inference:${benchmark.name}}" diff --git a/optimum_benchmark/benchmarks/inference/benchmark.py b/optimum_benchmark/benchmarks/inference/benchmark.py index f2f3e08a..288d4e71 100644 --- a/optimum_benchmark/benchmarks/inference/benchmark.py +++ b/optimum_benchmark/benchmarks/inference/benchmark.py @@ -174,6 +174,7 @@ def run_generate_energy_tracking(self, backend: "Backend") -> None: num_generated_tokens = ( num_generate_passes * self.config.generate_kwargs["min_new_tokens"] + * self.config.generate_kwargs["num_return_sequences"] * self.config.input_shapes["batch_size"] ) self.generate_energy = extract_three_significant_digits( @@ -215,7 +216,7 @@ def forward_latency(self) -> float: @property @three_significant_digits_wrapper def forward_throughput(self) -> float: - return self.config.input_shapes["batch_size"] / self.forward_latency + return self.config.input_shapes["batch_size"] * int(os.environ.get("WORLD_SIZE", "1")) / self.forward_latency ## Generation pass metrics @property @@ -228,10 +229,28 @@ def generate_latency(self) -> float: def generate_throughput(self) -> float: return ( self.config.generate_kwargs["min_new_tokens"] + * self.config.generate_kwargs["num_return_sequences"] * self.config.input_shapes["batch_size"] + * int(os.environ.get("WORLD_SIZE", "1")) / self.generate_latency ) + @property + @three_significant_digits_wrapper + def decode_latency(self) -> float: + return self.generate_latency - self.forward_latency + + @property + @three_significant_digits_wrapper + def decode_throughput(self) -> float: + return ( + (self.config.generate_kwargs["min_new_tokens"] - 1) + * self.config.generate_kwargs["num_return_sequences"] + * self.config.input_shapes["batch_size"] + * int(os.environ.get("WORLD_SIZE", "1")) + / self.decode_latency + ) + ## Diffusion pass metrics @property @three_significant_digits_wrapper @@ -239,6 +258,7 @@ def diffusion_throughput(self) -> float: return ( self.config.input_shapes["batch_size"] * self.config.forward_kwargs["num_images_per_prompt"] + * int(os.environ.get("WORLD_SIZE", "1")) / self.forward_latency ) @@ -252,10 +272,6 @@ def get_results_df(self) -> DataFrame: results_dict["diffusion.throughput(images/s)"] = self.diffusion_throughput if self.config.memory: - LOGGER.warning( - "forward.peak_memory(MB) is deprecated and will be removed in a future release" - " please use forward.max_memory_used(MB) instead" - ) results_dict["forward.peak_memory(MB)"] = self.forward_max_memory_used results_dict["forward.max_memory_used(MB)"] = self.forward_max_memory_used results_dict["forward.max_memory_allocated(MB)"] = self.forward_max_memory_allocated @@ -269,11 +285,10 @@ def get_results_df(self) -> DataFrame: results_dict["generate.latency(s)"] = self.generate_latency results_dict["generate.throughput(tokens/s)"] = self.generate_throughput + results_dict["decode.latency(s)"] = self.decode_latency + results_dict["decode.throughput(tokens/s)"] = self.decode_throughput + if self.config.memory: - LOGGER.warning( - "generate.peak_memory(MB) is deprecated and will be removed in a future release" - " please use generate.max_memory_used(MB) instead" - ) results_dict["generate.peak_memory(MB)"] = self.generate_max_memory_used results_dict["generate.max_memory_used(MB)"] = self.generate_max_memory_used results_dict["generate.max_memory_allocated(MB)"] = self.generate_max_memory_allocated @@ -286,7 +301,8 @@ def get_results_df(self) -> DataFrame: return DataFrame(results_dict, index=[0]) def save(self) -> None: - if os.environ.get("LOCAL_RANK", "0") == "0": + # TODO: handle this by merging the results of all processes instead of only saving the results of the main process + if os.environ.get("RANK", "0") == "0": LOGGER.info("Saving results") results_df = self.get_results_df() results_df.to_csv("inference_results.csv", index=False) diff --git a/optimum_benchmark/experiment.py b/optimum_benchmark/experiment.py index bdb3179e..b761e4ac 100644 --- a/optimum_benchmark/experiment.py +++ b/optimum_benchmark/experiment.py @@ -22,6 +22,7 @@ optimum_version, transformers_version, ) +from .launchers.inline.config import InlineConfig from .launchers.process.config import ProcessConfig from .launchers.torchrun.config import TorchrunConfig from .task_utils import infer_task_from_model_name_or_path @@ -29,7 +30,7 @@ if TYPE_CHECKING: from .backends.base import Backend from .benchmarks.base import Benchmark - from .launchers.base import Launcher, LauncherConfig + from .launchers.base import Launcher LOGGER = getLogger("experiment") @@ -122,13 +123,17 @@ def __post_init__(self) -> None: # Register configurations cs = ConfigStore.instance() cs.store(name="experiment", node=ExperimentConfig) +# cs.store(group="backend", name="openvino", node=OVConfig) cs.store(group="backend", name="pytorch", node=PyTorchConfig) cs.store(group="backend", name="onnxruntime", node=ORTConfig) cs.store(group="backend", name="neural-compressor", node=INCConfig) cs.store(group="backend", name="text-generation-inference", node=TGIConfig) +# cs.store(group="benchmark", name="inference", node=InferenceConfig) cs.store(group="benchmark", name="training", node=TrainingConfig) +# +cs.store(group="launcher", name="inline", node=InlineConfig) cs.store(group="launcher", name="process", node=ProcessConfig) cs.store(group="launcher", name="torchrun", node=TorchrunConfig) @@ -180,11 +185,11 @@ def run(experiment: "ExperimentConfig") -> "Benchmark": def run_with_launcher(experiment: DictConfig): # instead of emplimenting hydra/launcher plugins, we handle the launcher ourselves - # thsi allows us to use spawn with torchrun, to gather outputs from parallel processes, + # this allows us to use spawn with torchrun, to gather outputs from parallel processes, # and to handle errors gracefully # Instantiate the experiment config to trigger __post_init__ - experiment.launcher: LauncherConfig = OmegaConf.to_object(experiment.launcher) + experiment.launcher = OmegaConf.to_object(experiment.launcher) launcher_factory: Type["Launcher"] = get_class(experiment.launcher._target_) launcher: "Launcher" = launcher_factory() diff --git a/optimum_benchmark/launchers/inline/__init__.py b/optimum_benchmark/launchers/inline/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/optimum_benchmark/launchers/inline/config.py b/optimum_benchmark/launchers/inline/config.py new file mode 100644 index 00000000..db263b5f --- /dev/null +++ b/optimum_benchmark/launchers/inline/config.py @@ -0,0 +1,12 @@ +from dataclasses import dataclass +from logging import getLogger + +from ..base import LauncherConfig + +LOGGER = getLogger("inline") + + +@dataclass +class InlineConfig(LauncherConfig): + name: str = "inline" + _target_: str = "optimum_benchmark.launchers.inline.launcher.InlineLauncher" diff --git a/optimum_benchmark/launchers/inline/launcher.py b/optimum_benchmark/launchers/inline/launcher.py new file mode 100644 index 00000000..36140338 --- /dev/null +++ b/optimum_benchmark/launchers/inline/launcher.py @@ -0,0 +1,20 @@ +from logging import getLogger +from typing import Callable + +from ..base import Launcher +from .config import InlineConfig + +LOGGER = getLogger("inline") + + +class InlineLauncher(Launcher[InlineConfig]): + NAME = "inline" + + def __init__(self) -> None: + super().__init__() + + def configure(self, config: InlineConfig) -> None: + super().configure(config) + + def launch(self, worker: Callable, *worker_args): + worker(*worker_args) diff --git a/optimum_benchmark/launchers/process/launcher.py b/optimum_benchmark/launchers/process/launcher.py index 5c8f17bc..ac1312ca 100644 --- a/optimum_benchmark/launchers/process/launcher.py +++ b/optimum_benchmark/launchers/process/launcher.py @@ -30,6 +30,9 @@ def launch(self, worker: Callable, *worker_args): process = Process( target=target, args=(worker, *worker_args), + # daemon=True + # TODO: move isolation process to the launcher and make this daemon + # which is currently not possible because daemon process cannot have children ) process.start() @@ -47,7 +50,10 @@ def launch(self, worker: Callable, *worker_args): process.join() if process.exitcode != 0: - raise RuntimeError(f"Process exited with code {process.exitcode}") + exit_code = process.exitcode + LOGGER.error(f"\t+ Process exited with code {exit_code}, closing it.") + process.close() + raise RuntimeError(f"Process exited with code {exit_code}") LOGGER.info("\t+ Process exited successfully, closing it.") process.close() diff --git a/optimum_benchmark/trackers/memory.py b/optimum_benchmark/trackers/memory.py index af18b8a7..af08e496 100644 --- a/optimum_benchmark/trackers/memory.py +++ b/optimum_benchmark/trackers/memory.py @@ -95,8 +95,12 @@ def _cuda_memory(self): raise ValueError("Could not measure GPU memory usage for a system different than NVIDIA or AMD RoCm.") for device_index in self.pytorch_device_ids: - self.max_memory_allocated += torch.cuda.max_memory_allocated(device=device_index) - self.max_memory_reserved += torch.cuda.max_memory_reserved(device=device_index) + self.max_memory_allocated += torch.cuda.max_memory_allocated(device=device_index) * int( + os.environ.get("WORLD_SIZE", "1") + ) + self.max_memory_reserved += torch.cuda.max_memory_reserved(device=device_index) * int( + os.environ.get("WORLD_SIZE", "1") + ) LOGGER.debug(f"Pytorch max memory allocated: {self.get_max_memory_allocated()} MB") LOGGER.debug(f"Pytorch max memory reserved: {self.get_max_memory_reserved()} MB")