Jae-Won Chung
New leaderboard prototype
b10121d
# Diffusion model (Image to Video)
This benchmark suite benchmarks diffusion models with the image-to-video task.
## Setup
### Docker images
```sh
docker build -t mlenergy/leaderboard:diffusion-i2v .
```
### HuggingFace cache directory
The scripts assume the HuggingFace cache directory will be under `/data/leaderboard/hfcache` on the node that runs this benchmark.
## Benchmarking
### Obtaining one datapoint
The Docker image we've build runs `python scripts/benchmark_one_datapoint.py` as its `ENTRYPOINT`.
```sh
docker run \
--gpus '"device=0"' \
--cap-add SYS_ADMIN \
-v /data/leaderboard/hfcache:/root/.cache/huggingface
-v $(pwd):/workspace/image-to-video \
mlenergy/leaderboard:diffusion-i2v \
--result-root results \
--batch-size 2 \
--power-limit 300 \
--save-every 5 \
--model ali-vilab/i2vgen-xl \
--dataset-path sharegpt4video/sharegpt4video_100.json \
--add-text-prompt \
--num-frames 16 \
--fps 16 \
--huggingface-token $HF_TOKEN
```
### Obtaining all datapoints for a single model
Export your HuggingFace hub token as environment variable `$HF_TOKEN`.
Run `scripts/benchmark_one_model.py`.
### Running the entire suite with Pegasus
You can use [`pegasus`](https://github.com/jaywonchung/pegasus) to run the entire benchmark suite.
Queue and host files are in [`./pegasus`](./pegasus).