{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/arxiv-2605-01725","title":"Motion-Aware Caching for Efficient Autoregressive Video Generation","arxiv_id":"2605.01725","date":"2026-05-03","proceeding":"ICML","authors":["Jing Xu","Yuexiao Ma","Xuzhe Zheng","Xing Wang","Shiwei Liu","Chenqian Yan","Xiawu Zheng","Rongrong Ji","Fei Chao","Songwei Liu"],"abstract":"Autoregressive video generation paradigms offer theoretical promise for long video synthesis, yet their practical deployment is hindered by the computational burden of sequential iterative denoising. While cache reuse strategies can accelerate generation by skipping redundant denoising steps, existing methods rely on coarse-grained chunk-level skipping that fails to capture fine-grained pixel dynamics. This oversight is critical: pixels with high motion require more denoising steps to prevent error accumulation, while static pixels tolerate aggressive skipping. We formalize this insight theoretically by linking cache errors to residual instability, and propose MotionCache, a motion-aware cache framework that exploits inter-frame differences as a lightweight proxy for pixel-level motion characteristics. MotionCache employs a coarse-to-fine strategy: an initial warm-up phase establishes semantic coherence, followed by motion-weighted cache reuse that dynamically adjusts update frequencies per token. Extensive experiments on state-of-the-art models like SkyReels-V2 and MAGI-1 demonstrate that MotionCache achieves significant speedups of $\\textbf{6.28}\\times$ and $\\textbf{1.64}\\times$ respectively, while effectively preserving generation quality (VBench: $1\\%\\downarrow$ and $0.01\\%\\downarrow$ respectively). The code is available at https://github.com/ywlq/MotionCache.","url_abs":"https://arxiv.org/abs/2605.01725","url_pdf":"https://arxiv.org/pdf/2605.01725","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2605.01725","atlas_url":"https://app.syntology.ai/?focus=2605.01725","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2605.01725"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/ywlq/MotionCache","reach":null}],"summary":{"ran":1,"ran_violates":6,"ran_draft_wrong":2,"unverified":11},"by_repo_kind":{"found_in_text":{"samples":20,"ran":9,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":20,"samples":[{"code_sha256_prefix":"df3c40bd5de59d9f","entry":"ChunkKVRangeTracker","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"df3c40bd5de59d9f"}},{"code_sha256_prefix":"0ebd45bfa4b1c891","entry":"apply_temporal_voting","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0ebd45bfa4b1c891"}},{"code_sha256_prefix":"861e9e178eda2ff6","entry":"find_dit_model","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"861e9e178eda2ff6"}},{"code_sha256_prefix":"6808aeab083c4a6a","entry":"generate_dynamic_kv_range","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6808aeab083c4a6a"}},{"code_sha256_prefix":"a7533f03358b7016","entry":"in_chunk_wise_only_phase","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a7533f03358b7016"}},{"code_sha256_prefix":"3a9b9fe6da3d9e4f","entry":"in_token_wise_phase","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3a9b9fe6da3d9e4f"}},{"code_sha256_prefix":"6aba6f628189a1e5","entry":"in_warmup_phase","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6aba6f628189a1e5"}},{"code_sha256_prefix":"19b49c1ad969e695","entry":"no_reuse_steps_first","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"19b49c1ad969e695"}},{"code_sha256_prefix":"d91dbe2bf1c4b499","entry":"no_reuse_steps_mid","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d91dbe2bf1c4b499"}},{"code_sha256_prefix":"c42ddc8ed776615e","entry":"InferenceParams","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c42ddc8ed776615e"}},{"code_sha256_prefix":"ecaf22c19bac28bf","entry":"PPScheduler","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ecaf22c19bac28bf"}},{"code_sha256_prefix":"837fcb601d9b583b","entry":"PackedCrossAttnParams","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"837fcb601d9b583b"}},{"code_sha256_prefix":"867f0053d9193219","entry":"TensorAndHandler","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"867f0053d9193219"}},{"code_sha256_prefix":"19e46a249fade59e","entry":"get_pipeline_model_parallel_next_rank","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"19e46a249fade59e"}},{"code_sha256_prefix":"a4eac5a45fb722f7","entry":"get_pipeline_model_parallel_prev_rank","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a4eac5a45fb722f7"}},{"code_sha256_prefix":"5359b57958c98fd8","entry":"get_pp_group","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5359b57958c98fd8"}},{"code_sha256_prefix":"d9ecf27b14cdad3a","entry":"get_pp_rank","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d9ecf27b14cdad3a"}},{"code_sha256_prefix":"5f3ad51d110c84f8","entry":"get_pp_world_size","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5f3ad51d110c84f8"}},{"code_sha256_prefix":"550f884cf2bc594f","entry":"pp_scheduler","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"550f884cf2bc594f"}},{"code_sha256_prefix":"9bc787fa39ea88d1","entry":"teacache_forward_velocity","repo":"ywlq/MotionCache","repo_kind":"found_in_text","path":"MotionCache4MAGI-1/inference/pipeline/flowcache.py","file_url":"https://github.com/ywlq/MotionCache/blob/HEAD/MotionCache4MAGI-1/inference/pipeline/flowcache.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9bc787fa39ea88d1"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.CV","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}