A cross-platform special effect task scheduling and state synchronization method
By converting the visual effects task node data from multiple DCC software platforms into a unified format during film and television visual effects production, establishing unified dependencies, and predicting resource requirements, the data barriers and state synchronization issues in cross-platform collaboration are resolved, achieving efficient task scheduling and version control.
Patent Information
- Application Number
- CN202510943474.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-09
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2045-07-09
AI Technical Summary
In existing technologies, cross-platform film and television special effects production suffers from data barriers, low task scheduling efficiency, and lack of state synchronization, resulting in low collaboration efficiency across DCC software platforms, uneven resource allocation, and difficulty in real-time version control synchronization.
By acquiring special effects task node data from multiple DCC software platforms, converting it into a unified data format, establishing unified dependency data, predicting resource requirements, and employing a distributed log system and version control methods, cross-platform task scheduling and state synchronization are achieved.
It achieves compatibility of data formats and task node dependencies across multiple DCC software platforms, improves scheduling efficiency, enhances parallel working capabilities, maintains version consistency, reduces redundant work and version conflicts, and improves cross-platform collaboration efficiency.
Smart Images

Figure CN120448136B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of digital content production, in particular to a cross-platform special effect task scheduling and state synchronization method. BACKGROUND
[0002] In the production of film and television special effects, task scheduling and resource management face the following technical bottlenecks:
[0003] 1. Cross-platform data barrier: current DCC (Digital Content Creation) software platforms (such as Houdini, Maya, Nuke, etc.) each use a closed DAG (Directed Acyclic Graph) architecture, and the data formats and task dependency relationships are incompatible with each other, resulting in complex collaboration across DCC software platforms, relying on cumbersome format conversion and manual intervention.
[0004] 2. Low efficiency of task scheduling: traditional linear scheduling methods are difficult to handle complex dependency relationships, parallel computing capabilities are insufficient, and resource allocation lacks intelligence, such as the inability to dynamically match the tidal demand of render farm resources.
[0005] 3. Lack of state synchronization: when multiple software platforms are used for parallel production, task progress, parameter changes, and version control are difficult to synchronize in real time, which can easily cause version confusion and duplication of effort.
[0006] In the prior art, although individual DCC software platforms optimize internal task flow through DAG architecture (such as Houdini's node-based workflow), there is a lack of a global perspective of cross-platform unified scheduling solution, resulting in fragmented film production processes and low efficiency. SUMMARY
[0007] In order to solve the above problems, the present application is provided, which provides a cross-platform special effect task scheduling and state synchronization method, comprising:
[0008] Obtaining platform special effect task node data of a plurality of DCC software platforms, the platform special effect task node data comprising dependency relationship data, completion data and version data of platform special effect task nodes;
[0009] Converting the platform special effect task node data of the plurality of DCC software platforms into a unified data format;
[0010] Obtaining unified dependency relationship data of the platform special effect task nodes of the plurality of DCC software platforms according to the dependency relationship data of the platform special effect task nodes;
[0011] Predicting resource requirement data of the platform special effect task nodes;
[0012] According to the uniform dependency relationship data, the completion data and the resource requirement data of the platform-specific effect task node, the platform-specific effect tasks of the plurality of DCC software platforms are scheduled;
[0013] In response to the platform-specific effect task node data change, the uniform dependency relationship data, the completion data and the version data of the platform-specific effect task node are updated and synchronized through a distributed log system and a version control method.
[0014] Optionally, the platform-specific effect task node data of the plurality of DCC software platforms is acquired, including:
[0015] The platform-specific effect task node DAGs of the plurality of DCC software platforms are respectively acquired;
[0016] According to the platform-specific effect task node DAGs, the dependency relationship data of the platform-specific effect task nodes is determined;
[0017] The completion data and the version data of the platform-specific effect task nodes of the plurality of DCC software platforms are respectively acquired.
[0018] Optionally, according to the platform-specific effect task node DAGs, the dependency relationship data of the platform-specific effect task nodes is determined, including:
[0019] The node in-degree of the platform-specific effect task node DAGs is acquired;
[0020] According to the node in-degree, the dependency relationship data of the platform-specific effect task nodes is determined.
[0021] Optionally, according to the dependency relationship data of the platform-specific effect task nodes, the uniform dependency relationship data of the platform-specific effect task nodes of the plurality of DCC software platforms is obtained, including:
[0022] According to the data transmission relationship among the plurality of DCC software platforms, the platform-specific effect task nodes with cross-platform dependency relationship are determined from the platform-specific effect task nodes of the plurality of DCC software platforms, and the corresponding cross-platform dependency relationship data is added to the dependency relationship data of the corresponding platform-specific effect task nodes;
[0023] According to the dependency relationship data of the platform-specific effect task nodes with the added cross-platform dependency relationship data, the uniform dependency relationship data of the platform-specific effect task nodes of the plurality of DCC software platforms is determined.
[0024] Optionally, the cross-platform-specific effect task scheduling and state synchronization method further includes:
[0025] According to the uniform dependency relationship data of the platform-specific effect task nodes of the plurality of DCC software platforms, the acyclic execution sequence of the platform-specific effect task nodes is determined;
[0026] If the platform-specific task node is executed incorrectly, a fault-tolerant recovery is performed according to the position and execution order of the platform-specific task node in the loop-free execution sequence.
[0027] Optionally, the resource requirement data of the platform-specific task node is predicted, including:
[0028] The types of platform-specific task nodes of the plurality of DCC software platforms are obtained;
[0029] The initial values of the resource requirement data of platform-specific task nodes of different types are set;
[0030] The resource requirement data of the platform-specific task node is corrected according to the resource requirement data of a plurality of executed platform-specific task nodes of the same type, to obtain the resource requirement data of the platform-specific task node.
[0031] Optionally, the platform-specific tasks of the plurality of DCC software platforms are scheduled according to the uniform dependency relationship data, the completion degree data and the resource requirement data of the platform-specific task node, including:
[0032] A uniform DAG of the plurality of DCC software platforms is constructed according to the uniform dependency relationship data of the platform-specific task node;
[0033] The platform-specific task nodes in the uniform DAG that are in parallel in order are sorted according to the completion degree data of the platform-specific task nodes in descending order, to obtain a first scheduling sequence of the platform-specific task nodes in the uniform DAG that are in parallel in order;
[0034] The platform-specific task nodes in the uniform DAG that are in parallel in order are sorted according to the resource requirement data of the platform-specific task nodes and the system resource state in ascending order of the proportion of the resource requirement amount to the system idle resource amount, to obtain a second scheduling sequence;
[0035] The resource consumption data of the platform-specific task changing over time according to the first scheduling sequence is predicted, to obtain a first time sequence vector;
[0036] The resource consumption data of the platform-specific task changing over time according to the second scheduling sequence is predicted, to obtain a second time sequence vector;
[0037] The system resource data changing over time is predicted, to obtain a system time sequence vector;
[0038] According to a plurality of continuous time windows, the first time sequence vector, the second time sequence vector and the system time sequence vector are split into sub-vectors under the same time window to obtain a plurality of first time sequence sub-vectors, second time sequence sub-vectors and system time sequence sub-vectors;
[0039] The resource conditions of the first time sequence sub-vector, the second time sequence sub-vector and the system time sequence sub-vector under the same time window are compared, and a time sequence sub-vector whose resource consumption data does not exceed the system resource data of the system time sequence sub-vector is selected, and the system resource data of the system time sequence sub-vector of the next time window is corrected according to the releasable resource data in the resource consumption data of the selected time sequence sub-vector;
[0040] The total resource consumption corresponding to the first time sequence vector in the plurality of continuous time windows is determined;
[0041] The total resource consumption corresponding to the second time sequence vector in the plurality of continuous time windows is determined;
[0042] The scheduling sequence corresponding to the time sequence vector with less total resource consumption is selected, and the platform special effect tasks of the plurality of DCC software platforms are scheduled.
[0043] Optionally, the platform special effect tasks of the plurality of DCC software platforms are scheduled according to the unified dependency relationship data, the completion degree data and the resource requirement data of the platform special effect task nodes, including:
[0044] A unified DAG of the plurality of DCC software platforms is constructed according to the unified dependency relationship data of the platform special effect task nodes;
[0045] The platform special effect task nodes in the unified DAG that are in order and parallel are sorted to obtain a plurality of acyclic execution sequences;
[0046] A first machine learning model based on Markov chain is used to predict the resource consumption data of the plurality of acyclic execution sequences changing over time to obtain a plurality of third time sequence vectors;
[0047] The acyclic execution sequence corresponding to the third time sequence vector with less total resource consumption is selected, and the platform special effect tasks of the plurality of DCC software platforms are scheduled.
[0048] Optionally, the platform special effect tasks of the plurality of DCC software platforms are scheduled according to the unified dependency relationship data, the completion degree data and the resource requirement data of the platform special effect task nodes, including:
[0049] A unified DAG of the plurality of DCC software platforms is constructed according to the unified dependency relationship data of the platform special effect task nodes;
[0050] adopting a second machine learning model based on a Markov chain, dynamically allocating priorities of the platform-specific effect task nodes arranged in parallel in the unified DAG according to historical task time consumption and system resource occupancy of the platform-specific effect task nodes arranged in parallel in the unified DAG, and obtaining a corresponding acyclic execution sequence;
[0051] According to the acyclic execution sequence, the platform-specific effect tasks of the multiple DCC software platforms are scheduled.
[0052] Optionally, the cross-platform effect task scheduling and state synchronization method further comprises:
[0053] The unified data format comprises a scene description bit and a parameter bit;
[0054] The scene description bit adopts a USD format, and the parameter bit adopts a JSON format and / or a YAML format.
[0055] The above technical solution provided by the present application has at least the following beneficial effects:
[0056] The present application can make the data formats and the dependency relationships of the task nodes of the multiple DCC software platforms compatible, facilitate unified scheduling and synchronization, schedule the platform-specific effect tasks of the multiple DCC software platforms based on unified dependency relationship data, completion data and resource requirement data and other multiple dimensions, can handle more complex task node dependency relationships compared with a traditional linear scheduling mode, improves scheduling efficiency and enhances the parallel working capability of the multiple DCC software platforms, and can keep the versions consistent and reduce repeated work and version conflicts when the platform-specific effect task node data is changed by using a distributed log system and a version control method when the multiple DCC software platforms work in parallel.
[0057] Other features and advantages of the present application will be set forth in the following description, and in part will become apparent to those skilled in the art upon examination of the following or can be learned by practice of the present application. The objects and other advantages of the present application can be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
[0058] The technical solution of the present application will be further described in detail below with reference to the accompanying drawings and embodiments. BRIEF DESCRIPTION OF DRAWINGS
[0059] The accompanying drawings are included to provide a further understanding of the present application, and are incorporated in and constitute a part of this specification, illustrate embodiments of the present application and are used to explain the present application, but are not intended to limit the present application. In the drawings:
[0060] Figure 1 A flow chart of a cross-platform special effect task scheduling and state synchronization method in an embodiment of the present application;
[0061] Figure 2 A system block diagram of a cross-platform special effect task scheduling and state synchronization system in an embodiment of the present application. DETAILED DESCRIPTION
[0062] Exemplary embodiments of the present disclosure will be described in detail with reference to the drawings. Although exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided so that the present disclosure can be more thoroughly understood and so that the scope of the present disclosure can be completely conveyed to those skilled in the art.
[0063] To solve the problems in the prior art, an embodiment of the present application provides a cross-platform special effect task scheduling and state synchronization method, the flow of which is as shown in Figure 1 The method comprises the following steps:
[0064] Step 1: Obtain platform special effect task node data of a plurality of DCC software platforms, wherein the platform special effect task node data comprises dependency relationship data, completion degree data and version data of the platform special effect task node; convert the platform special effect task node data of the plurality of DCC software platforms into a unified data format; and obtain unified dependency relationship data of the platform special effect task node of the plurality of DCC software platforms according to the dependency relationship data of the platform special effect task node.
[0065] The DCC software platforms involved in digital content creation include film and television production, game development, industrial visualization, etc., and the main technical architecture thereof includes a three-dimensional modeling tool chain, a material and rendering system, and a workflow integration. For example, software products such as Houdini, Maya, Nuke, etc. belong to the DCC software platforms for digital content creation, and the tasks handled thereby include two-dimensional / three-dimensional editing and synthesis, dynamic / interactive content creation, image editing, rendering, etc. The special effect task refers to a task handled by the DCC software platform related to film and television special effects, game special effects, etc.
[0066] In step 1, by converting platform-specific effect task node data of multiple DCC software platforms into a unified data format, and obtaining unified dependency relationship data of the platform-specific effect task nodes of the multiple DCC software platforms according to dependency relationship data of the platform-specific effect task nodes, the data formats and dependency relationships of the task nodes of the multiple DCC software platforms can be compatible, facilitating unified scheduling and synchronization.
[0067] In some specific embodiments, obtaining platform-specific effect task node data of multiple DCC software platforms comprises: obtaining platform-specific effect task node DAGs of the multiple DCC software platforms respectively; determining dependency relationship data of the platform-specific effect task nodes according to the platform-specific effect task node DAGs; and obtaining completion degree data and version data of the platform-specific effect task nodes of the multiple DCC software platforms respectively. The DAG is a data structure representing the order and dependency relationship between nodes, and is a directed graph. According to the DAG, the dependency relationship of some nodes can be determined, but some nodes with parallel dependency relationship can be included, and the DAG does not show the dependency relationship between these parallel nodes. The node data and log system in each DCC software platform are called to obtain the completion degree data and version data of the platform-specific effect task nodes of the multiple DCC software platforms. The dependency relationship data, completion degree data and version data of the platform-specific effect task nodes of the multiple DCC software platforms obtained in this embodiment are the basis for obtaining unified dependency relationship data, responding to node data changes, maintaining version consistency and other technical means in subsequent steps.
[0068] Further, in some specific embodiments, determining dependency relationship data of the platform-specific effect task nodes according to the platform-specific effect task node DAGs comprises: obtaining the node in-degree of the platform-specific effect task node DAGs; and determining the dependency relationship data of the platform-specific effect task nodes according to the node in-degree. In the DAG, the in-degree of a node is equal to the total number of edges directly pointing to it from all predecessor nodes. The in-degree of a node can also be understood as the sum of the number of times that the node serves as the end point of an edge in the DAG. For example, in the task scheduling DAG, if node A points to node B, then task B depends on task A. Because of this dependency relationship, the out-degree of A increases by 1, and the in-degree of B also increases by 1. Nodes with an in-degree of 0 are the starting points of topological sorting, because they have no pre-dependency. By continuously removing nodes with an in-degree of 0 and updating the in-degree of the successor nodes, a legal topological sequence can be generated. By obtaining the dependency relationship data of the platform-specific effect task nodes of each platform, the unified dependency relationship data of the platform-specific effect task nodes of multiple platforms can be determined while considering the inter-platform data dependency relationship.
[0069] Further, in some specific embodiments, the dependency data of the platform-specific task nodes is determined according to the node in-degree, including: using Kahn algorithm to perform topological sorting to obtain the dependency data of the platform-specific task nodes. Wherein, the steps of Kahn algorithm include: counting the in-degree of all nodes in the DAG, and enqueuing the nodes with in-degree of 0; sequentially dequeuing the queue nodes, reducing the in-degree of the successor nodes, and enqueuing the nodes with in-degree of 0; if the number of processed nodes is equal to the total number of nodes, then the DAG has no loop, and the corresponding loop-free execution sequence is obtained, otherwise, the DAG has loop, and an error occurs, and the DAG needs to be reacquired.
[0070] Further, in some specific embodiments, the dependency data of the platform-specific task nodes is determined according to the node in-degree, including: using Kahn algorithm to perform topological sorting to obtain the dependency data of the platform-specific task nodes. Wherein, the steps of Kahn algorithm include: counting the in-degree of all nodes in the DAG, and enqueuing the nodes with in-degree of 0; sequentially dequeuing the queue nodes, reducing the in-degree of the successor nodes, and enqueuing the nodes with in-degree of 0; if the number of processed nodes is equal to the total number of nodes, then the DAG has no loop, and the corresponding loop-free execution sequence is obtained, otherwise, the DAG has loop, and an error occurs, and the DAG needs to be reacquired.
[0071] In some specific embodiments, the unified dependency data of the platform-specific task nodes of the plurality of DCC software platforms is obtained according to the dependency data of the platform-specific task nodes, including:
[0072] According to the data transmission relationship between the plurality of DCC software platforms, the platform-specific task nodes with cross-platform dependency relationship are determined from the platform-specific task nodes of the plurality of DCC software platforms, and the corresponding cross-platform dependency data is added to the dependency data of the corresponding platform-specific task nodes; according to the dependency data of the platform-specific task nodes added with the cross-platform dependency data, the unified dependency data of the platform-specific task nodes of the plurality of DCC software platforms is determined.
[0073] For example, in platform a includes a1, a2, a3 nodes, its acyclic execution sequence is (a1, a2, a3), platform b includes b1, b2 nodes, its acyclic execution sequence is (b1, b2), platform a and b exist data transfer relationship, a2 depends on the data transfer of b1, then a2's dependent data includes node a1 and node b1, therefore, the unified dependent data of platform a and b platform special effect task nodes can be expressed as acyclic execution sequence (a1, b1, a2, b2, a3), wherein node a1 and node b1 need to be before node a2, node a1 and node b1 have no dependent relationship, and are parallel ordered nodes, so the unified dependent data in this example can also be expressed as acyclic execution sequence (b1, a1, a2, b2, a3), similarly, node b2 and node a3 have no dependent relationship, and are parallel ordered nodes, and the order of node b2 and node a3 in the acyclic execution sequence corresponding to the unified dependent data can be exchanged.
[0074] In some specific embodiments, the cross-platform special effect task scheduling and state synchronization method further comprises: determining an acyclic execution sequence of the platform special effect task nodes according to the unified dependent relationship data of the platform special effect task nodes of the plurality of DCC software platforms; and if a platform special effect task node fails to execute, performing fault tolerance recovery according to the position and execution order of the platform special effect task node that fails to execute in the acyclic execution sequence. In this embodiment, the execution rollback of the task node that fails to execute is performed according to the acyclic execution sequence, which can not destroy the data dependent relationship of the cause, and realizes the fault tolerance recovery of the task node.
[0075] Step 2: predicting the resource requirement data of the platform special effect task nodes; and scheduling the platform special effect tasks of the plurality of DCC software platforms according to the unified dependent relationship data, the completion degree data and the resource requirement data of the platform special effect task nodes. Based on the unified dependent relationship data, the completion degree data and the resource requirement data and other multiple dimensions, the platform special effect tasks of the plurality of DCC software platforms are scheduled, which can process more complex task node dependent relationships compared with the traditional linear scheduling mode, improves the scheduling efficiency, and enhances the parallel working ability of the plurality of DCC software platforms.
[0076] In some specific embodiments, the resource requirement data of the platform special effect task nodes is predicted, comprising:
[0077] obtaining platform special effect task node types of the plurality of DCC software platforms, for example, platform special effect task node types include two-dimensional / three-dimensional editing and synthesis, dynamic / interactive content creation, image editing, and rendering; setting initial values for resource requirement data of different types of platform special effect task nodes, wherein different types of task nodes require different types and amounts of system resources, and therefore, based on the platform special effect task node types, setting initial values for resource requirement data of different types of platform special effect task nodes can represent resource requirement conditions of different types of platform special effect task nodes, and the initial values can be clustering values such as average values and median values; correcting resource requirement data of unexecuted platform special effect task nodes of the same type according to resource requirement data of a plurality of executed platform special effect task nodes of the same type, to obtain resource requirement data of the platform special effect task node, for example, resource requirement data of executed rendering-type platform special effect task nodes is an array ζ, each element of the array ζ represents the requirement amount of a different resource type, and the initial value of resource requirement data of platform special effect task nodes of the same type is corrected according to the difference between each element of the array ζ and the corresponding initial value, and the next data correction of resource requirement data of rendering-type platform special effect task nodes is performed according to the difference between resource requirement data of the next executed rendering-type platform special effect task node and resource requirement data of the current rendering-type platform special effect task node.
[0078] In some embodiments, a machine learning model of an LSTM (Long Short-Term Memory) architecture can also be used to predict resource requirement data of platform special effect task nodes, including: aligning historical resource usage data (CPU / GPU utilization, memory occupation, etc.) according to timestamps to construct time series with a preset time length (for example, 180 seconds) as the granularity; fusing task queue length, concurrent task type, network bandwidth, and other external features to form multivariate input; using Min-Max standardization to eliminate dimensional differences, and normalizing key features to the [0, 1] interval; inputting time sequence resource data in the main channel of the LSTM, and inputting task scheduling event sequences in the auxiliary channel of the LSTM, capturing long-term dependencies of resource requirements of bidirectional LSTM units through a gating mechanism, establishing a training set and a validation set according to the above input data, training the machine learning model of the LSTM architecture using the training set, verifying the accuracy of the time sequence output by the machine learning model of the LSTM architecture using the validation set, and obtaining a trained platform special effect task node resource requirement data prediction model when a training termination condition is reached or a verification condition is passed. A new time sequence is used to update the parameters of the resource requirement data prediction model.
[0079] According to the unified dependency data, the completion data and the resource requirement data of the platform-specific effect task nodes, the platform-specific effect tasks of the plurality of DCC software platforms are scheduled, including the following three methods, one of which can be selected for implementation.
[0080] The first method, in some specific embodiments, according to the unified dependency data, the completion data and the resource requirement data of the platform-specific effect task nodes, the platform-specific effect tasks of the plurality of DCC software platforms are scheduled, including:
[0081] According to the unified dependency data of the platform-specific effect task nodes, a unified DAG of the plurality of DCC software platforms is constructed;
[0082] According to the completion data of the platform-specific effect task nodes, the platform-specific effect task nodes in the unified DAG that are in order and parallel are sorted in descending order of completion, to obtain a first scheduling sequence of the platform-specific effect task nodes in the unified DAG that are in order and parallel; since the system recyclable resources occupied by the task node can be released after the completion reaches 100%, the system resource supply is increased, so in the first scheduling sequence, the effect task nodes with high completion are preferentially executed.
[0083] According to the resource requirement data of the platform-specific effect task nodes and the system resource state, the platform-specific effect task nodes in the unified DAG that are in order and parallel are sorted in ascending order of the proportion of resource requirement quantity to system idle resource quantity, to obtain a second scheduling sequence; the task node with a small proportion of resource requirement quantity occupies less resources and has less impact on other task nodes, so in the second scheduling sequence, the effect task nodes with a small proportion of resource requirement quantity are preferentially executed.
[0084] The resource consumption data of the effect task executed according to the first scheduling sequence is predicted to change over time, to obtain a first time sequence vector; for example, a machine learning model with LSTM or Bi-LSTM architecture is used for prediction, and the detailed prediction process can refer to the steps of predicting the resource requirement data of the platform-specific effect task node using the machine learning model with LSTM architecture.
[0085] The resource consumption data of the effect task executed according to the second scheduling sequence is predicted to change over time, to obtain a second time sequence vector; for example, a machine learning model with LSTM or Bi-LSTM architecture is used for prediction, and the detailed prediction process can refer to the steps of predicting the resource requirement data of the platform-specific effect task node using the machine learning model with LSTM architecture.
[0086] predicting system resource data changing over time to obtain a system time sequence vector; for example, using a machine learning model with an LSTM or Bi-LSTM architecture to make predictions, and the detailed prediction process can refer to the steps of predicting platform-specific task node resource demand data using a machine learning model with an LSTM architecture described above.
[0087] According to a plurality of continuous time windows, the first time sequence vector, the second time sequence vector and the system time sequence vector are split into sub-vectors under the same time window to obtain a plurality of first time sequence sub-vectors, second time sequence sub-vectors and system time sequence sub-vectors; for example, a first time sequence vector with a time length of 600 seconds is split into 10 continuous first time sequence sub-vectors according to a time window of 60 seconds.
[0088] Comparing the resource conditions of the first time sequence sub-vector, the second time sequence sub-vector and the system time sequence sub-vector under the same time window, selecting a time sequence vector whose resource consumption data does not exceed the system resource data of the system time sequence sub-vector, and modifying the system resource data of the system time sequence sub-vector of the next time window according to the releasable resource data in the resource consumption data of the selected time sequence vector; for example, the resource conditions of the corresponding first time sequence sub-vector, second time sequence sub-vector and system time sequence sub-vector in the second 60-second time window are obtained, wherein the resource consumption data of the corresponding first time sequence sub-vector in the second 60-second time window exceeds the system resource data of the system time sequence sub-vector in the same time window, and the resource consumption data of the corresponding second time sequence sub-vector in the second 60-second time window does not exceed the system resource data of the system time sequence sub-vector in the same time window, then the corresponding second time sequence sub-vector in the second 60-second time window is selected, and the recyclable system resource involved in the second time sequence sub-vector is released to the system time sequence sub-vector of the third 60-second window, and the system resource data of the system time sequence sub-vector is modified, for example, the recyclable system resource involved in the second time sequence sub-vector is 8G of storage space, then the system resource data of the system time sequence sub-vector of the third 60-second window is increased by 8G of storage space.
[0089] Determine the total amount of resource consumption corresponding to the first time sequence vector in the plurality of continuous time windows;
[0090] Determine the total amount of resource consumption corresponding to the second time sequence vector in the plurality of continuous time windows;
[0091] From the first scheduling sequence and the second scheduling sequence, select the scheduling sequence corresponding to the time sequence vector with less total amount of resource consumption to schedule the platform-specific tasks of the plurality of DCC software platforms.
[0092] The first method considers both completion priority and resource consumption priority, and considers the system resources released over time, which can be applied to both completion priority and resource consumption priority, can realize more complex scheduling process than traditional linear scheduling, and dynamically updates resource conditions and dynamically allocates priority of special effect task nodes to realize more accurate and intelligent platform special effect task scheduling.
[0093] The second method, in some specific embodiments, schedules platform special effect tasks of the plurality of DCC software platforms according to unified dependency relationship data, completion data and resource requirement data of the platform special effect task nodes, comprising:
[0094] According to the unified dependency relationship data of the platform special effect task nodes, a unified DAG of the plurality of DCC software platforms is constructed;
[0095] The platform special effect task nodes in the unified DAG are sorted, and a plurality of acyclic execution sequences are obtained, wherein the plurality of acyclic execution sequences include an acyclic execution sequence sorted in descending order of completion degree according to the completion data of the platform special effect task nodes;
[0096] A first machine learning model based on Markov chain is used to predict the resource consumption data of the plurality of acyclic execution sequences over time, and a plurality of third time sequence vectors are obtained; each first machine learning model corresponds to an acyclic execution sequence and a third time sequence vector;
[0097] The acyclic execution sequence corresponding to the third time sequence vector with less total resource consumption is selected to schedule the platform special effect tasks of the plurality of DCC software platforms.
[0098] Reinforcement Learning is a machine learning model based on Markov chain, which introduces action and reward mechanism and expands the machine learning application model of Markov chain. Reinforcement Learning is used to predict the resource consumption data of the plurality of acyclic execution sequences over time, and a plurality of third time sequence vectors are obtained, and the specific process is as follows:
[0099] The agent continuously receives real-time resource consumption data from a plurality of task sequences, including CPU utilization, memory occupation, disk I / O and other indicators, and records the task attributes at each time point (such as task type, concurrency number, dependency relationship). After cleaning and normalization, these data form multi-dimensional state information containing time stamp, reflecting the current system resource load and task execution progress. For example, the state at a certain time may include "CPU usage 75%, memory usage 60%, 5 parallel tasks are being executed" and other information.
[0100] The agent selects the optimal prediction scheme from a predefined policy library according to the current state. The policy library contains various prediction models (such as LSTM, Prophet) and their parameter combinations, for example: using a high-frequency sampling (such as every minute) LSTM model to capture transient changes; or using a seasonal decomposition ARIMA (Autoregressive Integrated Moving Average Model) model to predict hourly trends; or detecting sudden resource peaks based on the Isolation Forest algorithm.
[0101] The policy selection is based on the current system load, task queue length, and historical prediction error, for example, preferentially selecting models sensitive to sudden fluctuations under high load.
[0102] After selecting the policy, the agent generates resource consumption prediction results for a future period (such as the next 24 hours), each prediction value is accompanied by a corresponding timestamp, forming a preliminary time series vector. For example, the prediction result may include "the GPU usage rate is expected to rise from 75% to 85% in the next hour, and the memory occupancy will increase from 60% to 70%". These prediction values are compared with the actual resource usage data in the real environment to calculate the prediction error (such as mean square error) as feedback signals.
[0103] The agent adjusts the policy weights according to the feedback signals. If a model is accurate in consecutive time steps, its application priority is increased; if the prediction bias continues to increase, parameter tuning or switching to other models is triggered. For example, when detecting resource anomalies caused by memory leaks, the system automatically enhances the Prophet model's ability to identify periodic leakage patterns. This process stores historical interaction data through experience replay mechanisms to accelerate policy convergence.
[0104] After multiple rounds of interaction optimization, the agent combines the prediction advantages of various strategies to generate multiple third time series vectors.
[0105] Using the above reinforcement learning model, through dynamic policy selection and feedback-driven optimization, the prediction accuracy of complex task sequence resource demand can be significantly improved.
[0106] In the second method, based on multiple acyclic execution sequences, reinforcement learning models are trained and inferred respectively, and corresponding third time series vectors are obtained. Then, by comparing the total resource consumption of different acyclic execution sequences, the acyclic execution sequence with the least resource consumption is selected, which facilitates the control and management of the total resource consumption.
[0107] In some specific embodiments, the third method comprises scheduling the platform-specific task of the plurality of DCC software platforms according to the unified dependency data, the completion data and the resource requirement data of the platform-specific task nodes of the platform-specific effect task, which comprises:
[0108] According to the unified dependency data of the platform-specific task nodes, a unified DAG of the plurality of DCC software platforms is constructed;
[0109] According to the completion data and the resource requirement data of the platform-specific task nodes in the unified DAG, a second machine learning model based on Markov chain is adopted to dynamically allocate the priority of the platform-specific task nodes in the unified DAG to obtain a corresponding acyclic execution sequence;
[0110] According to the acyclic execution sequence, the platform-specific task of the plurality of DCC software platforms is scheduled.
[0111] According to the completion data and the resource requirement data of the platform-specific task nodes in the unified DAG, a second machine learning model based on Markov chain is adopted to dynamically allocate the priority of the platform-specific task nodes in the unified DAG to obtain a corresponding acyclic execution sequence, which comprises:
[0112] The state feature of each platform-specific task node is obtained, which contains the current completion, the resource consumption rate, the remaining execution time and the dependency satisfaction. The system monitors the state change of each node in real time to construct a state transition probability matrix, which reflects the migration possibility between adjacent states. For example, a high resource consumption task may be transferred from the "running" state to the "waiting queue" state due to resource competition.
[0113] In the dynamic priority calculation link, the second machine learning model generates a priority score according to the state transition probability and the resource requirement weight. For parallel task nodes with similar resource requirements, the node with high dependency on subsequent tasks is preferentially processed. For resource conflict tasks, the execution order with the smallest impact on global resource utilization is selected through state transition path analysis. For example, when GPU resources are tight, tasks that occupy video memory but have small computing capacity are preferentially scheduled to avoid the whole pipeline from being blocked due to large tasks.
[0114] To ensure loop-free execution sequence generation, the second machine learning model dynamically maintains the task dependency graph topology during state transition. After each priority adjustment, a depth-first search is performed to verify whether there is a circular dependency in the execution path. If a loop is detected, a backtracking mechanism is triggered to recalculate the priority of the affected nodes. Historical scheduling data is fed back to the second machine learning model based on Markov chains through reinforcement learning mechanisms to continuously optimize the state transition probability matrix, allowing the system to gradually adapt to different types of special effect task resource consumption patterns. When applied in some film and television rendering scenarios, this method can improve the execution sequence generation efficiency of complex special effect synthesis tasks by 40% and reduce resource fragmentation by 28%.
[0115] In the third method, both the completion data and resource requirement data of the platform special effect task nodes are considered, and the total resource consumption is not considered. Compared with the first and second methods, the third method is more suitable for scenarios where system resources are sufficient. The first method can achieve a good balance between completion, resource consumption, and system resource quantity, while the second method focuses more on total resource consumption and is suitable for resource-constrained scenarios.
[0116] The above three methods of scheduling platform special effect tasks for multiple DCC software platforms based on unified dependency relationship data, completion data, and resource requirement data can uniformly schedule special effect tasks across platforms, helping to efficiently integrate special effect production processes and improve cross-platform collaboration efficiency. Intelligent scheduling reduces non-creative time-consuming tasks such as waiting and rework, improves the per capita output value of special effect personnel, dynamically allocates rendering tasks to idle nodes, and improves resource utilization.
[0117] Step 3: In response to changes in the platform special effect task node data, the unified dependency relationship data, completion data, and version data of the platform special effect task nodes are updated and synchronized through a distributed logging system and version control method.
[0118] When the platform special effect task node data changes, the platform special effect task node data is updated and synchronized through a distributed logging system and version control method, which can maintain consistent data versions when multiple DCC software platforms work in parallel, reduce redundant work, and provide support for cross-platform task node dependency chain construction and parameter configuration.
[0119] In some specific embodiments, the cross-platform special effect task scheduling and state synchronization method further comprises: the unified data format comprises a scene description bit and a parameter bit; the scene description bit adopts a USD (Universal Scene Description) format, and the parameter bit adopts a JSON (JavaScript Object Notation) format and / or a YAML (YAML Ain't Markup Language) format. The USD format supports complex 3D scenes, has strong cross-platform compatibility, and is suitable for describing complex graphics data such as 3D scenes, models, and animations. The JSON format is lightweight and efficient, widely supports languages and frameworks, and is suitable for Web API data transmission, front-end and back-end communication, and mobile application data storage. The YAML format has high readability, supports annotations and complex data structures, and is suitable for configuration files (such as Kubernetes and Docker Compose) and parameter settings in software development. The scene description bit is used to store 3D scenes, models, and animations, and the parameter bit is used to store dependency data, completion data, version data, and resource requirement data.
[0120] In the above method of the embodiment, by converting the platform special effect task node data of multiple DCC software platforms into a unified data format, obtaining unified dependency relationship data of the platform special effect task nodes of the multiple DCC software platforms according to the dependency relationship data of the platform special effect task nodes, the data formats and dependency relationships of the task nodes of the multiple DCC software platforms can be compatible, which facilitates unified scheduling and synchronization; based on multiple dimensions such as unified dependency relationship data, completion data, and resource requirement data, the platform special effect tasks of the multiple DCC software platforms are scheduled, compared with a traditional linear scheduling mode, more complex task node dependency relationships can be processed, the scheduling efficiency is improved, and the parallel working capability of the multiple DCC software platforms is enhanced; when the platform special effect task node data is changed, the platform special effect task node data is updated and synchronized through a distributed log system and a version control method, which can keep the data versions of the multiple DCC software platforms consistent when the multiple DCC software platforms work in parallel, and reduce repeated work and version conflicts. The application can cross-platform unified scheduling of special effect tasks, supports seamless integration of multiple DCC software, helps efficient integration of special effect production processes, improves cross-platform collaboration efficiency and resource utilization, and is suitable for digital content production fields such as movies and games.
[0121] Those skilled in the art can transform the above sequence without departing from the protection scope of the application.
[0122] Another embodiment of the application provides a cross-platform special effect task scheduling and state synchronization system, which has the structure as shown in Figure 2As shown, it comprises a user interface layer, a logic control layer, a computing engine layer and a data storage layer;
[0123] The user interface layer comprises a node editor, a parameter panel and a visualization tool, and provides a visual node editor to support the drag-and-drop construction and parameter configuration of a cross-platform task dependency chain.
[0124] The logic control layer comprises a dependency analysis module, a task scheduler and a dynamic update module, integrates Kahn algorithm to realize topological sorting and dynamically adjust the task queue, and combines machine learning to predict resource demand and optimize the scheduling strategy.
[0125] The computing engine layer comprises a rendering engine module, a physics engine module and a data cache module, calls the local rendering engine (such as Karma of Houdini and Arnold of Maya) of each DCC software through a global scheduling engine, and isolates the running environment through containerization technology.
[0126] The data storage layer comprises a node data module, a resource library and a log system, stores scene data and node logic in a hybrid format of USD+JSON, and realizes state synchronization in combination with a distributed database (such as Redis).
[0127] The key algorithm implementation in the above cross-platform special effect task scheduling and state synchronization system comprises:
[0128] Dynamic topological sorting: according to task insertion or parameter change, real-time update of DAG dependency chain, and generation of acyclic execution sequence through Kahn algorithm.
[0129] Resource scheduling strategy: based on a reinforcement learning model, dynamically allocates rendering node priority according to historical task time consumption and resource occupancy rate.
[0130] In the cross-platform synchronization process, taking the Maya platform and the Nuke platform as examples, when the character animation parameters in Maya are changed, the engine automatically analyzes the dependent nodes (such as fluid special effects in Houdini), triggers local recalculation, and updates the results to the Nuke synthesis node through USD format synchronization to ensure consistency of the final rendering version.
[0131] The cross-platform special effect task scheduling and state synchronization system in the above embodiment has been described in detail in the embodiment related to the method, and will not be described in detail here.
[0132] Any modification, supplement and equivalent replacement, etc. within the scope of the principles of the present application shall still belong to the patent coverage scope of the present application.
[0133] The "first", "second", etc. indicated above do not represent a front-back order, but only represent a distinction of different features.
Claims
1. A cross-platform special effects task scheduling and state synchronization method, characterized in that, The method includes: Obtain platform effect task node data from multiple DCC software platforms. The platform effect task node data includes dependency data, completion data, and version data of the platform effect task nodes. Convert the platform effects task node data of the multiple DCC software platforms into a unified data format; Based on the dependency data of the platform effects task nodes, unified dependency data of the platform effects task nodes of the multiple DCC software platforms is obtained. The resource requirements of the platform's special effects task nodes are predicted. Based on the unified dependency data, completion data, and resource requirement data of the platform effect task nodes, the platform effect tasks of the multiple DCC software platforms are scheduled, including: constructing a unified DAG of the multiple DCC software platforms based on the unified dependency data of the platform effect task nodes; sorting the platform effect task nodes in the unified DAG in descending order of completion based on the completion data of the platform effect task nodes to obtain a first scheduling sequence of the platform effect task nodes in the unified DAG; sorting the platform effect task nodes in the unified DAG in ascending order of the proportion of resource requirement to system idle resources based on the resource requirement data of the platform effect task nodes and the system resource status to obtain a second scheduling sequence; predicting the resource consumption data of the effect tasks executed according to the first scheduling sequence over time to obtain a first time-series vector; and predicting the resource consumption data of the effect tasks executed according to the second scheduling sequence over time. A second time-series vector is obtained; system resource data changing over time is predicted to obtain a system time-series vector; according to multiple consecutive time windows, the first time-series vector, the second time-series vector, and the system time-series vector are split into sub-vectors under the same time window, resulting in multiple first time-series sub-vectors, second time-series sub-vectors, and system time-series sub-vectors; the resource status of the first time-series sub-vectors, the second time-series sub-vectors, and the system time-series sub-vectors under the same time window is compared, and the time-series sub-vectors whose resource consumption data does not exceed the system resource data of the system time-series sub-vector are selected. Based on the releasable resource data in the resource consumption data of the selected time-series sub-vectors, the system resource data of the system time-series sub-vectors in the next time window is corrected; the total resource consumption corresponding to the first time-series vector within the multiple consecutive time windows is determined; the total resource consumption corresponding to the second time-series vector within the multiple consecutive time windows is determined; the scheduling sequence corresponding to the time-series vector with the smaller total resource consumption is selected to schedule the platform effect tasks of the multiple DCC software platforms. In response to changes in the platform's special effects task node data, the unified dependency data, completion data, and version data of the platform's special effects task nodes are updated and synchronized through a distributed logging system and version control methods.
2. The method as described in claim 1, characterized in that, Obtain platform effects task node data from multiple DCC software platforms, including: Obtain the platform effect task nodes DAGs for multiple DCC software platforms respectively; Based on the DAG of platform special effects task nodes, determine the dependency data of platform special effects task nodes; Obtain the completion rate and version data of platform effects task nodes from multiple DCC software platforms.
3. The method as described in claim 2, characterized in that, Based on the platform effects task node DAG, determine the dependency relationship data of the platform effects task nodes, including: Obtain the in-degree of the DAG of the platform's special effects task nodes; Based on the node in-degree, the dependency data of the platform special effects task nodes are determined.
4. The method as described in claim 1, characterized in that, Based on the dependency data of the platform effects task nodes, unified dependency data of the platform effects task nodes of the multiple DCC software platforms is obtained, including: Based on the data transfer relationship between the multiple DCC software platforms, determine the platform effect task nodes with cross-platform dependencies from the platform effect task nodes of the multiple DCC software platforms, and add their corresponding cross-platform dependency data to the dependency data of the corresponding platform effect task nodes. Based on the dependency data of the platform effects task nodes with added cross-platform dependency data, the unified dependency data of the platform effects task nodes of the multiple DCC software platforms is determined.
5. The method as described in claim 1, characterized in that, The cross-platform special effects task scheduling and state synchronization method also includes: Based on the unified dependency data of the platform effect task nodes of the multiple DCC software platforms, the acyclic execution sequence of the platform effect task nodes is determined. If a platform effects task node fails to execute, fault-tolerant recovery will be performed based on the position and execution order of the erroneous platform effects task node in the acyclic execution sequence.
6. The method as described in claim 1, characterized in that, The predicted resource requirements data for the platform's special effects task nodes include: Obtain the platform effect task node types of the multiple DCC software platforms; Set initial values for the resource requirements of different types of platform special effects task nodes; Based on the resource requirement data of multiple executed platform effect task nodes of the same type, the resource requirement data of unexecuted platform effect task nodes of the same type is corrected to obtain the resource requirement data of the platform effect task nodes.
7. The method as described in claim 1, characterized in that, Based on the unified dependency data, completion data, and resource requirement data of the platform effects task nodes, the platform effects tasks of the multiple DCC software platforms are scheduled, including: Based on the unified dependency data of the platform's special effects task nodes, a unified DAG of the multiple DCC software platforms is constructed. The platform effect task nodes that are arranged in parallel in the unified DAG are sorted to obtain multiple acyclic execution sequences. The multiple acyclic execution sequences include acyclic execution sequences that are sorted in descending order of completion based on the completion data of the platform effect task nodes. A first machine learning model based on Markov chains is used to predict the resource consumption data of the multiple acyclic execution sequences over time, resulting in multiple third time-series vectors. The acyclic execution sequence corresponding to the third time-series vector with the lowest total resource consumption is selected to schedule the platform effect tasks of the multiple DCC software platforms.
8. The method as described in claim 1, characterized in that, Based on the unified dependency data, completion data, and resource requirement data of the platform effects task nodes, the platform effects tasks of the multiple DCC software platforms are scheduled, including: Based on the unified dependency data of the platform's special effects task nodes, a unified DAG of the multiple DCC software platforms is constructed. A second machine learning model based on Markov chains is adopted to dynamically allocate the priority of platform effect task nodes in the unified DAG according to the completion data and resource requirement data of the platform effect task nodes in the unified DAG, so as to obtain the corresponding acyclic execution sequence. The platform effects tasks of the multiple DCC software platforms are scheduled according to the acyclic execution sequence.
9. The method according to any one of claims 1 to 8, characterized in that, The cross-platform special effects task scheduling and state synchronization method also includes: The unified data format includes scene description bits and parameter bits; The scenario description field uses USD format, and the parameter field uses JSON and / or YAML format.
Citation Information
Patent Citations
Data synchronization system in CG production
CN111177266A
Cloud computing parallel task optimization scheduling method based on priority dependency graph
CN119806776A