Compare commits

...
Author SHA1 Message Date
“BrianChen1129” 63c00ced0c update 2025-07-31 05:40:10 +00:00
“BrianChen1129” 3187698cc2 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-31 02:34:39 +00:00
“BrianChen1129” 5ae466be21 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-30 22:38:16 +00:00
“BrianChen1129” f70cdc4c2e Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-30 20:22:03 +00:00
“BrianChen1129” 62fe15b64f Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-30 19:46:52 +00:00
“BrianChen1129” 6b43af5274 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-30 10:30:02 +00:00
“BrianChen1129” 3efe6da6b0 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-30 03:06:02 +00:00
“BrianChen1129” 3fc247ddf4 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-30 00:42:45 +00:00
“BrianChen1129” 76006d24cf Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-29 05:41:17 +00:00
“BrianChen1129” 708fe18bb8 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-29 03:17:18 +00:00
“BrianChen1129” a0522cd7f0 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-29 00:20:14 +00:00
“BrianChen1129” df6afbb8b0 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-28 07:28:42 +00:00
“BrianChen1129” 6d446c6eb9 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-27 22:46:52 +00:00
“BrianChen1129” ebae1321cf Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-27 20:02:15 +00:00
“BrianChen1129” 5c94cbad94 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-27 07:41:01 +00:00
“BrianChen1129” 862ac8a6a1 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-27 03:31:20 +00:00
“BrianChen1129” e1b2c40857 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-25 19:33:45 +00:00
“BrianChen1129” 93521970f6 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-23 20:11:45 +00:00
“BrianChen1129” e7c363d313 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-22 03:03:17 +00:00
“BrianChen1129” fc63becc92 sy 2025-07-15 05:26:10 +00:00
“BrianChen1129” 3973469f70 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-07-01 02:34:09 +00:00
“BrianChen1129” 9c135a3845 Merge branch 'main' of github.com:hao-ai-lab/FastVideo 2025-06-30 08:15:57 +00:00
“BrianChen1129” bc8b24ca9b update 2025-06-30 04:10:50 +00:00
+33 -5
View File
@@ -12,7 +12,7 @@ from typing import Any
import torch
from einops import rearrange
from tqdm.auto import tqdm
import time
from fastvideo.attention import get_attn_backend
from fastvideo.configs.pipelines.base import STA_Mode
from fastvideo.distributed import (get_local_torch_device, get_sp_parallel_rank,
@@ -88,6 +88,11 @@ class DenoisingStage(PipelineStage):
Returns:
The batch with denoised latents.
"""
# Start timing for the entire DenoisingStage
if torch.cuda.is_available():
torch.cuda.synchronize()
stage_start_time = time.time()
pipeline = self.pipeline() if self.pipeline else None
if not fastvideo_args.model_loaded["transformer"]:
loader = TransformerLoader()
@@ -601,6 +606,11 @@ class DmdDenoisingStage(DenoisingStage):
Returns:
The batch with denoised latents.
"""
# Start timing for the entire DmdDenoisingStage
if torch.cuda.is_available():
torch.cuda.synchronize()
dmd_stage_start_time = time.time()
# Setup precision and autocast settings
# TODO(will): make the precision configurable for inference
# target_dtype = PRECISION_TO_TYPE[fastvideo_args.precision]
@@ -681,7 +691,13 @@ class DmdDenoisingStage(DenoisingStage):
image_latent = image_latent[:, :, rank_in_sp_group, :, :, :]
batch.image_latent = image_latent
# Run denoising loop
# Synchronize CUDA before starting timer
if torch.cuda.is_available():
torch.cuda.synchronize()
denoise_start_time = time.time()
with self.progress_bar(total=len(timesteps)) as progress_bar:
for i, t in enumerate(timesteps):
# Skip if interrupted
@@ -715,9 +731,7 @@ class DmdDenoisingStage(DenoisingStage):
with torch.autocast(device_type="cuda",
dtype=target_dtype,
enabled=autocast_enabled):
if (st_attn_available
and self.attn_backend == SlidingTileAttentionBackend
) or (vsa_available and self.attn_backend
if (vsa_available and self.attn_backend
== VideoSparseAttentionBackend):
self.attn_metadata_builder_cls = self.attn_backend.get_builder_cls(
)
@@ -798,6 +812,20 @@ class DmdDenoisingStage(DenoisingStage):
if sp_group:
latents = sequence_model_parallel_all_gather(latents, dim=1)
latents = latents.permute(0, 2, 1, 3, 4)
# Calculate total denoising time
# Synchronize CUDA before ending timer
if torch.cuda.is_available():
torch.cuda.synchronize()
denoise_end_time = time.time()
total_denoise_time = denoise_end_time - denoise_start_time
print(f"Total denoising time: {total_denoise_time:.2f} seconds")
# Calculate total stage time
dmd_stage_end_time = time.time()
total_dmd_stage_time = dmd_stage_end_time - dmd_stage_start_time
print(f"Total DmdDenoisingStage time: {total_dmd_stage_time:.2f} seconds")
# Update batch with final latents
batch.latents = latents