動画生成モデル(zeroscope_v2_576w)を利用してGPU別の生成時間を比較してみた
最近GPU(NVIDIA GeForce RTX4090)を積んだPCを購入したので、せっかくなので色々と試したいと思っていました。
そこで今回は、zeroscope_v2_576w という動画生成モデルを活用して、動画生成にかかる時間を GoogleColab/ローカルPC で比較してみました。
zeroscope_v2_576w
以下のようなコードで、GoogleColab上でもGPUを利用することで動画生成を試すことができます。
import time
!pip install diffusers transformers accelerate torch
import torch
from diffusers import DiffusionPipeline, DPMSolverMultistepScheduler
from diffusers.utils import export_to_video
pipe = DiffusionPipeline.from_pretrained("cerspense/zeroscope_v2_576w", torch_dtype=torch.float16)
pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)
pipe.enable_model_cpu_offload()
start_time = time.time()
prompt = "A dog is surfing on waves"
video_frames = pipe(prompt, num_inference_steps=40, height=200, width=400, num_frames=24).frames
video_path = export_to_video(video_frames)
print(video_path)
end_time = time.time()
print(f"処理時間: {end_time - start_time}秒")
👇 出力結果
比較結果
今回は Google Colaboratoryで利用できるGPU ( T4 / V100 / A100 )と、
所持しているローカルPCのGPU ( NVIDIA GeForce RTX 4090 ) それぞれ使い分けて、3秒の動画 1つの生成時間の違いを比較。
※ コンピューティングユニット数の残りが近く、複数回実行で平均取るなどできていません m(_ _)m <スミマセン
GoogleColab:T4
→ 処理時間: 71.07秒
GoogleColab:V100
→ 処理時間: 21.50秒
GoogleColab:A100
→ 処理時間: 12.31秒
ローカルPC:GeForce RTX 4090
→ 処理時間: 17.53秒
おまけ
参考:cerspense/zeroscope_v2_XL · Hugging Face
より高解像度で生成ができるモデルが出ていたようで、そちらを利用して色々なプロンプトで動画生成を試してみました。
下記動画の白い字幕部分が、動画生成にINPUTしたテキストです。