Distributed rendering node display synchronization method

CN121070298BActive Publication Date: 2026-08-11ZHEJIANG VERSATILE MEDIA
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-08-25
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

部分方式仅依据单一的帧显示时间戳进行校准,忽略了帧生成时间与显示时间之间的关联,难以反映画面从生成到显示的完整链路延迟;有些方式虽考虑了延迟因素,但未对延迟的变化规律进行分析,无法识别延迟的周期性波动特征,当节点延迟呈现规律性重复变化时,校准效果会大打折扣;还有些方式在调节时依赖固定的参数,当网络状态、节点负载发生突变时,无法及时调整调节策略,导致同步效果不稳定

Benefits of technology

该方法在获取节点实时显示画面数据时,同时采集帧生成时间和帧显示时间,双时间戳的引入,能够更全面地反映画面从生成到显示的完整过程,避免了单一时间戳可能导致的信息片面性。通过对时间戳信息进行时间域统计分析,提取各个节点的画面显示延迟特征并确定延迟变化周期,使得对节点延迟的认知不再停留在零散的时间点上,而是能够捕捉到延迟变化的内在规律,比如某些节点可能因散热问题导致每间隔一段时间出现一次延迟高峰,这种周期性的识别为后续的同步调节提供了更具针对性的依据。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121070298B_ABST
    Figure CN121070298B_ABST
Patent Text Reader

Abstract

This invention relates to the field of distributed rendering synchronization technology and discloses a method for synchronizing the display screen of distributed rendering nodes. The method acquires real-time display screen data and timestamp information from multiple nodes. Through time-domain statistical analysis of the timestamps, it extracts the display delay characteristics of each node and determines the delay change cycle, thereby constructing the synchronization fluctuation degree of each node. Then, combining the correlation of synchronization fluctuation degrees in historical data and the historical average, it calculates the current overall network interference level. Simultaneously, it analyzes the delay growth pattern of display timestamps in the current continuous time sequence to obtain the synchronization lag trend degree. Combining these two factors yields a synchronization offset index. Using its change, the current synchronization control strength, and a preset adjustment increment, it calculates the feedback synchronization adjustment amount. Finally, a neural network controller is applied to dynamically synchronize the display screen of the distributed rendering nodes based on this adjustment amount and the actual screen synchronization measurement value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of distributed rendering synchronization technology, specifically a method for synchronizing the display of images across distributed rendering nodes. Background Technology

[0002] Distributed rendering systems, by allocating complex rendering tasks to multiple nodes for parallel processing, are widely used in film and television production, virtual simulation, and real-time interactive scenarios. In these scenarios, the displayed images on multiple nodes need to be consistent; otherwise, screen tearing, motion misalignment, and other phenomena will occur, affecting the overall effect. During operation, each node is affected by various factors, making it difficult to synchronize the displayed images. Differences in hardware configuration result in varying computing speeds among different nodes, potentially causing different generation times for the same frame. During network transmission, data packet latency and loss are unstable, causing fluctuations in the time it takes for frame data to travel from the generation node to the display node. The computational load of each node changes dynamically with the progress of the task, and a high load at a certain moment may cause a sudden increase in frame generation latency. These factors intertwine, resulting in a complex and dynamic variation in the display time difference between nodes. Existing methods for processing node synchronization have many limitations. Some methods rely solely on a single frame display timestamp for calibration, ignoring the correlation between frame generation and display time, making it difficult to reflect the complete link latency from image generation to display. Other methods, while considering latency factors, fail to analyze the patterns of latency variation and cannot identify periodic fluctuations in latency. When node latency exhibits regular and repetitive changes, the calibration effect is significantly reduced. Still other methods rely on fixed parameters for adjustment, making it impossible to adjust the adjustment strategy in a timely manner when network conditions or node loads change abruptly, resulting in unstable synchronization effects. Summary of the Invention

[0003] The purpose of this invention is to provide a method for synchronizing the display of distributed rendering nodes, so as to solve the problems mentioned in the background art.

[0004] To achieve the above objectives, the present invention provides a method for synchronizing the display of images in a distributed rendering node, the method comprising: The system acquires real-time display data and corresponding timestamp information from multiple nodes in a distributed rendering system. The timestamp information includes frame generation time and frame display time. Perform time-domain statistical analysis on the timestamp information, extract the screen display delay characteristics of each node, and determine the delay change period based on the screen display delay characteristics; For the delay change period of each node, the fluctuation frequency and amplitude of the timestamp are analyzed and displayed, and the synchronization fluctuation of each node is constructed. Based on the correlation between the synchronization volatility of multiple nodes in historical data, and the historical average of synchronization volatility, the overall network interference level at the current moment is calculated. Analyze the delay growth pattern of the timestamp displayed on the screen in a continuous time sequence at the current moment, and construct the synchronization lag trend degree at the current moment; By combining the synchronization lag trend with the overall network interference level, the synchronization offset index at the current moment is obtained. The feedback synchronization adjustment amount at the current moment is calculated by using the change in the synchronization offset index relative to the previous sampling time, the current synchronization control strength, and the preset adjustment increment. Based on the feedback synchronization adjustment amount and the actual screen synchronization measurement value, the neural network controller is used to dynamically synchronize and adjust the display screen of the distributed rendering nodes.

[0005] Preferably, the step of extracting the display delay features of each node and determining the delay change period further includes: Collect timestamp data of all historical sampling points within a specified time window before the current moment, and organize them into a time series dataset for each node in chronological order. Apply the exponential smoothing algorithm to the time series dataset of each node to eliminate random noise interference and generate a smooth time series. Calculate the moving standard deviation on the smoothed time series and identify the interval corresponding to the peak of the standard deviation as the period of delayed change.

[0006] Preferably, the construction of the synchronization fluctuation of each node includes: For each node's delay change periodic sequence, the delay values ​​are arranged in chronological order to form a periodic delay sequence set; A window sliding technique is applied to a set of periodically delayed sequences to count the number of changes in the delay value and the average magnitude of the changes within each sliding window. The product of the number of changes and the average magnitude of the changes is taken as the synchronization volatility of the node.

[0007] Preferably, the construction of the synchronization lag trend degree at the current moment includes: Select multiple sampling points adjacent to the current time as the set of neighboring time points of the current time; Based on the screen display timestamp data of the adjacent time point set, the delay values ​​are arranged in ascending order of time to form a delay trend sequence; Calculate the first derivative sequence of the delayed trend sequence, and extract the sum of the absolute values ​​of all negative changes in the derivative sequence as the synchronous lag trend degree.

[0008] Preferably, the calculation of the overall network interference level at the current moment includes: Arrange the synchronization volatility of each node in the historical data in chronological order to form a synchronization volatility sequence set; Calculate the Pearson correlation coefficient of the synchronous volatility sequence set as a measure of correlation; The mean of all elements in the synchronous volatility sequence set is used as the historical mean; The sum of the absolute value of the correlation metric and the historical mean is defined as the overall network interference level.

[0009] Preferably, obtaining the synchronization offset index at the current moment includes: The intermediate offset factor is obtained by multiplying the synchronization lag trend degree by the overall network interference degree. The intermediate offset factor is processed by applying an exponential decay function to generate a synchronous offset index.

[0010] Preferably, the calculation of the feedback synchronization adjustment amount at the current moment includes: Calculate the difference between the synchronization offset index at the current time and the synchronization offset index at the previous sampling time, and use it as the offset change. Multiply the offset change by the preset adjustment increment to obtain the adjustment increment contribution; The incremental adjustment contribution is added to the current synchronization control strength and defined as the feedback synchronization adjustment amount.

[0011] Preferably, the application of the neural network controller for dynamic synchronization adjustment includes: The feedback synchronization adjustment amount and the actual screen synchronization measurement value are input into the pre-trained neural network model to generate a synchronization control signal; The display time adjustment module of the distributed rendering node is driven by the synchronous control signal to modify the display sequence of the screen frames.

[0012] Preferably, the method further includes the step of dynamically updating the preset adjustment increment: Real-time monitoring of the changing patterns of timestamps displayed on the screen and the evolution trend of the synchronization offset index; Based on monitoring data, regression analysis algorithms are applied to predict changes in synchronization demand at future points in time. Adjust the preset adjustment increment based on the prediction results.

[0013] Preferably, the method further includes a synchronization error verification step: After completing the dynamic synchronization adjustment of the neural network controller, the deviation data between the actual display timestamp and the target timestamp of each distributed rendering node is collected. The deviation data is grouped by node and the moving variance is calculated to obtain the synchronization stability index of each distributed rendering node. When the synchronization stability index of a node exceeds a preset threshold, the process of re-extracting the delay change cycle of that node is triggered.

[0014] Compared with the prior art, the beneficial effects of the present invention are: This method acquires both frame generation and display times simultaneously when obtaining real-time display data from nodes. The introduction of dual timestamps provides a more comprehensive reflection of the entire process from image generation to display, avoiding the incompleteness that may result from a single timestamp. By performing time-domain statistical analysis on the timestamp information, the display delay characteristics of each node are extracted, and the delay variation cycle is determined. This allows the understanding of node delay to move beyond fragmented time points and capture the inherent patterns of delay changes. For example, some nodes may experience delay peaks at regular intervals due to heat dissipation issues. This periodic identification provides a more targeted basis for subsequent synchronization adjustments. For each node's delay change cycle, analysis reveals the frequency and amplitude of timestamp fluctuations to construct a synchronization volatility, which quantifies the dynamic changes in delay into a comparable indicator. Different nodes exhibit varying fluctuation frequencies and amplitudes; some nodes may frequently experience small fluctuations, while others may occasionally experience large fluctuations. The construction of synchronization volatility clearly presents these differences, providing a foundation for collaborative analysis among multiple nodes. By calculating the overall network interference level at the current moment based on the correlation between the synchronization volatility of multiple nodes in historical data and the historical average of synchronization volatility, the inherent patterns in historical data are fully utilized. Correlation analysis of multi-node synchronization volatility can identify the synergistic impact of network interference on multiple nodes. For example, during network congestion, the synchronization volatility of multiple nodes often increases simultaneously. This consideration of correlation makes the assessment of network interference level more accurate, avoiding potential biases that may arise from judging the overall network situation based solely on the state of a single node. By analyzing the delay growth pattern of timestamps displayed on the screen in a continuous time sequence, and constructing the synchronization lag trend at the current moment, we can perceive the direction and speed of delay changes. Different delay growth patterns, such as linear or non-linear growth, reflect the development trend of synchronization lag. This grasp of the trend allows synchronization adjustment to move beyond passively responding to the current state and instead detect potential synchronization problems in advance. The synchronization offset index, which combines the synchronization lag trend with the overall network interference level, integrates the influence of the node's own lag trend and the external network environment. Compared with the assessment of a single factor, it can more comprehensively reflect the current synchronization status. The introduction of the synchronization offset index makes the judgment of synchronization status more systematic and avoids misjudgment caused by focusing on a single factor. For example, the synchronization offset index will show different values ​​when the network interference level is high but the current lag trend is flat, and when the network interference level is low but the lag trend is steep, which provides a more comprehensive reference for the formulation of adjustment strategies. By utilizing the change in the synchronization offset index relative to the previous sampling time, along with the current synchronization control strength and the preset adjustment increment, the feedback synchronization adjustment amount at the current time is calculated. This allows the determination of the adjustment amount to dynamically respond to changes in the synchronization state. The change at the previous time reflects the development trend of the synchronization state, the current control strength ensures the stability of the adjustment, and the preset adjustment increment provides a basic amplitude reference for the adjustment. The combination of these three factors allows the feedback synchronization adjustment amount to change flexibly according to real-time conditions, avoiding under-adjustment or over-adjustment that may result from a fixed adjustment amount. Based on feedback synchronization adjustments and actual screen synchronization measurements, a neural network controller is applied to dynamically synchronize the display of distributed rendering nodes, leveraging the adaptability of the neural network in complex dynamic environments. The neural network can learn from adjustment experiences in different scenarios and automatically optimize adjustment strategies. When node hardware differences, network status, and load conditions change, it can adaptively adjust the adjustment method, ensuring good adaptability of synchronization adjustment in various complex scenarios and maintaining coordination among multiple nodes in dynamically changing environments. Attached Figure Description

[0015] Figure 1 This is a schematic diagram illustrating the working principle of the distributed rendering node display synchronization method described in this invention. Figure 2 To construct a flowchart of the synchronization volatility of each node; Figure 3 Flowchart for calculating the overall network interference level at the current moment; Figure 4 This is a flowchart for verifying synchronization errors. Detailed Implementation

[0016] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0017] Please see Figure 1 This invention provides a method for synchronizing the display of images across distributed rendering nodes, the method comprising: The system acquires real-time display data and corresponding timestamp information from multiple nodes in a distributed rendering system. The timestamp information includes frame generation time and frame display time. Time-domain statistical analysis is performed on the timestamp information to extract the display delay characteristics of each node, and the delay change period is determined based on these characteristics. For each node's delay change period, the fluctuation frequency and amplitude of the display timestamp are analyzed to construct the synchronization fluctuation degree of each node. Based on the correlation between the synchronization fluctuation degrees of multiple nodes in historical data and their historical averages, the overall network interference level at the current moment is calculated. The delay growth pattern of the display timestamps in the continuous time sequence at the current moment is analyzed to construct the synchronization lag trend degree. The synchronization lag trend degree is combined with the overall network interference level to generate the synchronization offset index at the current moment. Using the change in this index compared to the synchronization offset index at the previous sampling moment, combined with the current synchronization control strength and the preset adjustment increment, the feedback synchronization adjustment amount is calculated. Based on the feedback synchronization adjustment amount and the actual display synchronization measurement value, a neural network controller is applied to dynamically synchronize the display of the distributed rendering nodes.

[0018] Example 1: See Figure 2 A fixed-length time window preceding the current moment is selected as the data collection range. This window length can be pre-configured or dynamically adjusted according to actual system requirements. The timestamp information of all historical sampling points within the window is organized and categorized chronologically, forming an independent time-series dataset for each rendering node. Each dataset contains consecutive delayed observations arranged by timestamp.

[0019] Noise filtering is performed on the time series data at each node. An exponential smoothing algorithm is used to process the original delay value sequence. This algorithm is based on the weighted average principle, assigning higher weights to recent data. The smoothing calculation process is iterative: starting from the beginning of the sequence, the original delay value at the current time step is weighted and merged with the smoothing result from the previous time step to generate a new smoothed value. The smoothing coefficient controls the weight ratio between the old and new data, and its value is greater than zero and less than one. This process continues to traverse the entire time series until all original data points have been processed. The output is a smoothed delay sequence that has eliminated random interference.

[0020] Periodic features are extracted from the smoothed delay sequence. A fixed-length moving computation window is set and slid sequentially along the time axis. At each window position, a dispersion metric is calculated for all smoothed delay values ​​within the window. The dispersion metric reflects the intensity of data fluctuation within the window. All dispersion values ​​generated during the window sliding process are recorded, forming a dispersion sequence. The numerical distribution characteristics of this sequence are analyzed to identify peak points. The time intervals between adjacent peak points are statistically analyzed to form an interval value set. Cluster analysis is performed on the interval value set to determine the interval value with the highest frequency. This high-frequency interval value is adopted as the delay variation period of the corresponding node.

[0021] Based on the identified delay variation periods, the original delayed sequence is structurally reorganized. The delayed sequence is divided into multiple consecutive segments in chronological order, with the length of each segment equal to the delay variation period value of that node. All segments constitute a set of periodic delayed sequences.

[0022] Fine-grained fluctuation analysis is performed within each periodic segment. A sliding window technique is used to traverse the delay data within the segment. The length of the sliding window is set to half the periodic value of that node, and the window moves one sampling point distance at a time. For each position where the window stops, two quantitative statistics are performed: First, the number of directional changes in adjacent delay values ​​within the window is calculated. A directional change refers to a state transition from increasing to decreasing or from decreasing to increasing delay values. Second, the average absolute value of the changes in all adjacent delay values ​​within the window is calculated. This average reflects the average intensity of delay fluctuations within the window.

[0023] Multiplying the two statistics above yields the quantified local volatility value for the current window position. This operation iterates through all window positions within the periodic sub-segment, resulting in a set of local volatility values. The arithmetic mean of all elements in this set is calculated; this mean represents the synchronization volatility of the node in the current analysis period. This synchronization volatility value will be used for subsequent overall network state evaluation.

[0024] The entire processing flow runs continuously: when new timestamp data enters the time window, the system automatically triggers a data update mechanism. Old data is removed from the window according to the first-in, first-out principle, and new data is incorporated into the time series. The smoothed sequence is recalculated as new data enters, and the delay change period is re-detected based on the updated smoothed sequence. Synchronization volatility is regenerated based on the latest period segment data after the period update. This dynamic update mechanism ensures that the system always makes synchronization decisions based on the latest network status.

[0025] The processing between nodes is independent. Each node has its own time-series cache, smoothing calculation unit, period detection module, and volatility generator. All nodes execute the above processes in parallel, and their output synchronous volatility values ​​are aggregated to a central coordinator for system-level analysis. This distributed architecture avoids single-point bottlenecks and is suitable for application scenarios involving large-scale rendering node clusters.

[0026] The time window length needs to be set in a balance between real-time performance and historical coverage requirements. Shorter windows can respond quickly to network changes but are less resistant to sudden interference; longer windows provide more stable periodic detection but may mask short-term fluctuations. The choice of smoothing coefficient affects noise suppression strength and response speed. Higher coefficients make the smoothed value closely follow changes in the original data, while lower coefficients enhance noise immunity but may introduce lag. The sliding window size directly affects the sensitivity of local statistics. These parameters need to be specifically optimized based on the network characteristics and synchronization accuracy requirements of the actual rendering system.

[0027] The periodic detection module includes an anomaly handling mechanism. When the discrete sequence does not show a significant peak, the system re-detects using a default period value or by extending the analysis window. If cluster analysis cannot determine the dominant interval, the previous valid period value is retained to maintain system continuity. These fault-tolerant designs ensure robust operation of the synchronization function in complex network environments.

[0028] Example 2: See Figure 3 The current sampling time is selected as the central reference point, and the time set is symmetrically expanded to both sides along the time axis to form a time set containing an odd number of consecutive sampling points. The total number of points in this set is determined by system configuration parameters, typically set to cover a sufficiently long observation period. Each sampling point in the set corresponds to a recorded display timestamp. The display latency values ​​corresponding to these timestamps are retrieved from the central database of the distributed rendering system. The retrieval process must ensure a strict correspondence between timestamps and nodes to avoid data misalignment.

[0029] The acquired delay values ​​are sorted in ascending order according to their timestamps. The sorted delay value sequence constitutes a delay trend sequence, which reflects the local delay change trajectory centered on the current moment. The index difference between adjacent elements in the sequence is proportional to the actual sampling interval.

[0030] A quantitative analysis of the changing trend of the delayed trend sequence is performed. The difference between adjacent delayed values ​​in the sequence is calculated: starting from the second element, the value at each position is subtracted from the value at its preceding position. The difference results form a new derivative sequence, which is one element shorter than the original delayed trend sequence. Each value in the derivative sequence represents the rate and direction of change of the delay within the corresponding time period.

[0031] Iterate through all elements of the derivative sequence and filter out items with negative values. Negative values ​​indicate that the delay increases over time. Extract the absolute values ​​of these negative items to form a set of positive values. Summate all elements in this set arithmetically; the sum is defined as the synchronization lag tendency. The magnitude of this value directly reflects the cumulative intensity of delay deterioration near the current moment.

[0032] In another parallel processing flow, synchronization fluctuation records of multiple rendering nodes within a preset time window are retrieved from the historical storage module. The starting point of the time window is a fixed duration backward from the current moment, and the window length is configured independently of the time window setting in Example 1. The synchronization fluctuation of each node at each sampling moment within the window constitutes a time series, and the sequences of different nodes are arranged aligned along the same time axis.

[0033] The synchronization volatility sequences of all nodes are integrated into a two-dimensional data matrix. Rows in the matrix correspond to different nodes, columns correspond to different sampling times, and matrix elements represent the synchronization volatility values ​​of a specific node at a specific time. The number of rows in the matrix equals the total number of nodes involved in the calculation, and the number of columns equals the number of sampling points included in the time window.

[0034] The degree of behavioral correlation between nodes is calculated based on this matrix. A linear correlation coefficient is calculated for any two rows of data in the matrix. The calculation process includes the following steps: calculate the average of the two rows of data; calculate the deviation of each element in each row from its average; calculate the dot product of the deviation vectors of the two rows; calculate the magnitude of the deviation vectors of the two rows; divide the dot product value by the product of the two magnitudes. All unique node pairs are traversed to complete the calculation of all correlation coefficients.

[0035] Take the absolute values ​​of all the calculated correlation coefficients, and then calculate the arithmetic mean of these absolute values. This mean is used as a measure of the correlation of multi-node synchronous fluctuation behavior.

[0036] Simultaneously, the arithmetic mean of all elements in the entire data matrix is ​​calculated. This mean reflects the baseline level of the overall system synchronization volatility within the historical window.

[0037] The overall network interference level is calculated using the following formula:

[0038] in: Indicates the overall level of network interference; This represents the average of the absolute values ​​of the correlation coefficients between the aforementioned nodes. This represents the total average of the synchronization volatility of all nodes at all times within the historical window; in the formula... It characterizes the coordination of fluctuation patterns among nodes; a higher value indicates a stronger wide-area network interference. The baseline strength characterizes the fluctuation itself. The sum of the two constitutes a comprehensive quantification of the network environment's interference state.

[0039] The entire processing flow is designed for periodic execution. During each execution, the set of neighboring time points dynamically slides as the current sampling time is updated. Newly acquired delayed data is continuously incorporated into the delayed trend sequence construction, while older data is removed to maintain a fixed observation window length. The historical synchronous volatility matrix is ​​updated over time: the latest node volatility data is added to the right side of the matrix, while the oldest data is removed from the left side. The correlation coefficient and overall average are calculated in real-time based on the updated matrix.

[0040] The data retrieval phase includes an integrity verification mechanism. If missing delayed data is found for some sampling points, the system fills in the gaps using linear interpolation of adjacent valid data. When the number of nodes changes dynamically, the number of matrix rows is adjusted accordingly, including only data from currently active nodes. During the correlation coefficient calculation, special node pairs with zero volatility are automatically filtered to avoid invalid calculations.

[0041] The system provides configuration interfaces for key parameters. The size of the nearest time point set and the length of the historical time window can be adjusted according to network environment characteristics. A larger nearest point set can capture longer-term lagging trends but increases computational latency; a longer historical window provides more stable baseline volatility but reduces sensitivity to recent changes. These parameters need to be set in a trade-off manner based on the network jitter characteristics and synchronization accuracy requirements of the specific deployment environment.

[0042] Intermediate data generated during the calculation process, such as the delay trend sequence, derivative sequence, and correlation coefficient matrix, are stored in a circular buffer to reduce the overhead of repeated memory allocation. The final output synchronization lag trend degree and overall network interference degree are transmitted as independent variables to the subsequent synchronization offset index generation module.

[0043] Example 3: Receive two input variables from the preprocessing module: synchronization lag trend and overall network interference level. The synchronization lag trend quantifies the cumulative intensity of latency degradation near the current moment, while the overall network interference level reflects the synergy and baseline level of network fluctuations within the historical window. Both are input as independent variables to the processing unit in this stage.

[0044] First, the intermediate offset factor is calculated. A scalar multiplication is performed between the synchronization lag trend value and the overall network interference level. This operation outputs an intermediate result called the intermediate offset factor. The intermediate offset factor comprehensively characterizes the potential offset risk at the current moment due to the combined effects of the delay growth trend and network interference.

[0045] A nonlinear transformation is applied to the intermediate offset factor. An exponential decay function is used to process this factor, aiming to suppress the influence of extreme values ​​and maintain a stable range for the output value. A configurable decay coefficient is introduced into the transformation process; this coefficient is a real value greater than zero and less than one. The design principle of the transformation function is that as the absolute value of the input factor increases, the output growth rate gradually decreases. The transformation result is defined as the synchronization offset index, which is the core basis for subsequent synchronization adjustment. The specific transformation formula is as follows:

[0046] in: This represents the output synchronization offset index; This represents the intermediate offset factor of the input; This indicates the system's preset attenuation coefficient ( ); Represents the natural exponential function; This represents the absolute value of the intermediate offset factor.

[0047] The exponential term in this formula achieves adaptive decay: when... When the exponent increases, the value of the exponent decreases, thus reducing the product result; when As it approaches zero, the exponential term approaches 1, and remains constant. and They are approximately equal.

[0048] A historical record mechanism for the synchronization offset index is established. The system maintains a fixed-length first-in-first-out queue to continuously store the synchronization offset index calculated at each sampling time. The queue depth is set according to the system response speed requirements. Each time a new index is generated, the oldest data in the queue is automatically overwritten. This queue provides a historical benchmark for subsequent change calculations.

[0049] Calculate the difference between the synchronization offset index at the current moment and the index at the previous moment. Extract the two most recent valid records from the historical queue: the latest record corresponds to the index value at the current sampling moment, and the second newest record corresponds to the index value at the previous sampling moment. Subtract the previous moment's index from the current moment's index; the difference is called the offset change. The offset change reflects the dynamic evolution direction and magnitude of the synchronization state within the most recent sampling interval. A positive value indicates an increase in offset, and a negative value indicates a decrease in offset.

[0050] Obtain the current synchronization control strength value of the system. This value is stored in the system status register, set by the previous round of synchronization adjustment operations, and updated in real time. The synchronization control strength reflects the applied synchronization compensation level, and its value range matches the clock adjustment capability of the rendering node.

[0051] Read the preset adjustment increment parameter. This parameter is a system-level configuration item, with its initial value set based on network baseline latency characteristics. It can be dynamically adjusted during operation through an independent process. The adjustment increment determines the contribution weight of the unit offset change to the final adjustment amount.

[0052] Perform adjustment increment contribution calculation. Multiply the offset change by a preset adjustment increment using a scalar multiplication operation to generate the adjustment increment contribution value. This value represents the amount of adjustment to be added based on the latest dynamic offset change.

[0053] The final feedback synchronization adjustment is synthesized. The current synchronization control strength and the contribution value of the adjustment increment are added using a scalar addition operation. The result is defined as the feedback synchronization adjustment, mathematically expressed as: Feedback synchronization adjustment = Current synchronization control strength + (Offset change × Preset adjustment increment). This result is used as the output of this stage and directly transmitted to the neural network controller.

[0054] Key parameter configurations follow these principles: The attenuation coefficient affects the smoothness of the offset exponent. Higher coefficients enhance the suppression of large offsets but may mask important changes; lower coefficients retain more detail but reduce stability. The preset adjustment controls the response sensitivity of the incremental control system: excessively high increments may lead to over-adjustment, while excessively low increments result in sluggish response. These parameters need to be optimized in conjunction with the rendering system's frame rate requirements and network jitter characteristics.

[0055] The processing flow includes data validity verification. If an invalid value is detected in the intermediate offset factor (e.g., uninitialized state), the system automatically replaces it with a valid value from the previous period. When there is insufficient data in the historical queue, the offset change is treated as zero to avoid invalid calculations. All numerical calculations include range checks, and results exceeding the reasonable range are limited.

[0056] The calculation process employs either fixed-point or floating-point arithmetic, depending on the computational precision requirements of the hardware platform. Intermediate results are temporarily stored with sufficient bit width to avoid accumulating rounding errors. The timing control unit ensures that all calculations are completed within a fixed time window, meeting the real-time synchronization deadline constraints.

[0057] The system provides a runtime monitoring interface. Users can view the real-time changes in intermediate offset factors, synchronization offset exponents, offset changes, and feedback synchronization adjustments. This data assists operations and maintenance personnel in analyzing system behavior and optimizing parameter configurations. When multiple consecutive cycles of exceeding limits are detected, an early warning event is automatically triggered to notify the upper-level management system.

[0058] The output transmission mechanism employs a double-buffered design. When calculating the feedback synchronization adjustment amount in the current cycle, the result from the previous cycle remains valid for use by downstream modules. After calculation, the buffer pointer is switched via atomic operations to ensure data consistency. This design eliminates the risk of read / write conflicts and is suitable for high frame rate rendering scenarios.

[0059] Example 4: The pre-trained neural network controller adopts a three-layer fully connected architecture. The input layer has two neuron ports, receiving the real-time generated feedback synchronization adjustment and the actual screen synchronization measurement value, respectively. The actual screen synchronization measurement value is obtained through the timestamp comparison unit in the distributed system, for example, the difference between the actual frame display time of node A and the reference clock of the main controller. The hidden layer contains eight computation units, each of which applies a non-linear activation operation after weighted summation of the input data. The activation function adopts a piecewise linear rule: when the weighted sum is less than zero, the output value is zero; when it is greater than zero, the original value is retained. The output layer is a single neuron that generates a synchronization control signal in the range [-1, 1]. This network has been trained offline before deployment. The training dataset comes from historical operation logs and contains 100,000 sets of input-output paired samples. The sample input consists of the adjustment and measured values ​​under different network states, and the label is the optimal control signal verified by manual calibration. The training process uses an error backpropagation mechanism, iteratively optimizing the connection weights to make the predicted output approximate the label value.

[0060] When the system is running, the feedback synchronization adjustment is calculated and transmitted in real time by the front-end module. For example, in a virtual reality rendering cluster, if the master node detects an increasing trend in the latency of a slave node, it calculates a feedback synchronization adjustment of +0.45. Simultaneously, the time monitoring unit reports that the current display of that node is 8 milliseconds behind the target time; this value is used as the actual display synchronization measurement. The two values ​​are input in parallel to the neural network controller via the data bus. In the hidden layer, the input value is first multiplied by the stored weight matrix: assuming the weight of the first hidden unit is [0.3, -0.2], the calculation is (0.3 × 0.45) + (-0.2 × 8) = -1.465. Because the result is less than zero, the unit outputs zero. The calculation is repeated for all eight units, and the result is transmitted to the output layer. The output layer performs a weighted summation, generating a synchronization control signal of -0.28, indicating that the display timing of that node needs to be advanced.

[0061] The synchronization control signal is transmitted to the display time adjustment module of the rendering node. This module includes a clock offset register and a frame scheduling queue. For example, if a node originally planned to display the Nth frame at timestamp 1000 milliseconds, upon receiving the -0.28 control signal, the clock offset register is converted according to a preset scaling factor of 0.1: the target time offset = -0.28 × 0.1 = -28 milliseconds. The scheduler immediately sets the new display time of the Nth frame to 972 milliseconds and notifies the GPU display engine via a hardware interrupt. The GPU driver layer adjusts the vertical synchronization signal trigger point, causing the frame buffer to switch earlier. In a racing game rendering scene, a tire physics effect originally scheduled to display at 100 milliseconds is adjusted and rendered earlier at 92 milliseconds to align with the engine roar sound effect.

[0062] A dynamic update mechanism continuously monitors system behavior. The timestamp analysis unit tracks time-series data for twenty consecutive display periods, for example, recording the most recent twenty actual display timestamp sequences for node B: [102, 105, 108, 110, 115...]. It calculates the dispersion of the differences between adjacent timestamps; if the variance exceeds a threshold, it is marked as a high-fluctuation state. The synchronous offset index recording module stores the index values ​​of the most recent fifty sampling points, forming a time-series curve. The regression analysis engine fits a trend line with the sampling sequence number as the independent variable and the index value as the dependent variable. Assuming that ten consecutive points show a positive slope and the cumulative increase exceeds the tolerance, the prediction model determines that the system will continue to rise by 15% over the next five periods. At this point, the incremental updater is activated, adjusting the preset adjustment increment from 0.02 to 0.02 × (1 + 0.4 × 0.15) = 0.0212. The new value is immediately written to the system configuration register, affecting the calculation of the adjustment increment contribution for the next period.

[0063] Fault-tolerant mechanisms ensure the reliability of critical operations. When neural network input data is abnormal, the controller switches to standby mode: if the feedback synchronization adjustment exceeds the range of [-2,2], the moving average of the three most recent valid values ​​is used instead. The display time adjustment module performs boundary checks to ensure that the modified timestamp is not earlier than the frame generation completion time. In a cloud rendering platform instance, a network jitter caused the calculated target time advance to reach 50 milliseconds, but the GPU frame generation cycle requires 40 milliseconds; the module automatically limits the adjustment to within 10 milliseconds. When regression analysis during dynamic updates encounters insufficient data, the system maintains the current increment value unchanged until sufficient samples are obtained.

[0064] The system's operational status is visualized through a monitoring interface. The operations and maintenance interface displays three key data streams in real time: a fluctuation curve of the neural network input port values, a bar chart of the adjustment direction and intensity of the output control signals, and a heatmap of the actual display time offset of each node. When the steering wheel node fails to adjust three times consecutively in a racing game scenario, the heatmap displays a red alert for that node area, triggering manual intervention to check the network link. All historical operation records are written to the audit log, including fields such as timestamp, control signal value, and adjusted display time, supporting playback analysis of the synchronous decision-making process of specific frames.

[0065] Hardware acceleration units optimize computational latency. Matrix multiplication and addition operations from the neural network controller are offloaded to a dedicated tensor processor, completing forward propagation within 2 milliseconds. Display timing adjustment instructions are directly connected to the GPU scheduler via the PCIe bus, avoiding operating system scheduling latency. In the 4K panoramic video rendering case, the total time from control signal generation to GPU register writing is controlled within 5 milliseconds, meeting the 8-millisecond synchronization response time window requirement.

[0066] Example 5: See Figure 4 After the neural network controller completes the screen synchronization adjustment, the system enters the synchronization effect verification phase. At the start of the next complete display cycle, the central coordinator sends a timestamp acquisition command to all nodes participating in rendering. Each node records the actual display timestamp using a high-precision clock when it completes the display of the current frame. This timestamp is transmitted to the central database through a low-latency network channel. Simultaneously, the system retrieves the target display timestamp corresponding to the frame—this value is pre-allocated by the main controller based on a global time base and stored in the planning queue.

[0067] For each rendering node, the numerical difference between its actual display timestamp and the target timestamp is calculated. This difference is called the synchronization deviation value; a positive value indicates display lag, and a negative value indicates display lead. The deviation value is retained to three decimal places, and the unit of measurement is milliseconds. The deviation values ​​of all nodes are stored according to their node identifiers, forming independent deviation datasets. Each dataset retains only the most recent few records; older records are removed as new data enters, following a first-in, first-out (FIFO) principle. The dataset size is set according to the system monitoring depth requirements, typically accommodating tens to hundreds of records.

[0068] Based on the deviation datasets of each node, a synchronization stability assessment is performed. A sliding window analysis technique is applied to the dataset of each node: a fixed-length calculation window is set, and this window is moved sequentially along the time axis. The window length is less than the dataset capacity, and the movement step is a single record. At each window's position, the following operations are performed: extract all deviation values ​​contained within the window; calculate the arithmetic mean of these deviation values; calculate the difference between each deviation value and the mean; sum the squares of all differences; divide the sum of squares by the number of data records within the window; the result is the variance value at that window position. The variance value characterizes the dispersion of the deviations within the window's time period.

[0069] The algorithm iterates through all valid window positions in the entire deviation dataset, generating a corresponding variance value sequence. The maximum value from this sequence is selected as the synchronization stability index for that node. A higher index value indicates more drastic fluctuations in the node's synchronization state during the observation period.

[0070] The system has a preset stability tolerance threshold. This threshold is set according to the image consistency requirements of the distributed rendering system, and different values ​​can be configured for different application scenarios. When the synchronization stability index of a node exceeds the set threshold, the system automatically marks the node as an abnormal node. The abnormal marking triggers a reset of the latency analysis process for that node.

[0071] The process reset operation includes data clearing and reinitialization: clearing the historical timestamp dataset used by this node in Example 1; removing the calculated smoothed delay sequence cache; and deleting previously detected delay variation period values. A new round of data collection is then initiated—starting from the current moment, the original timestamp information within the specified time window is collected again. After exponential smoothing, the moving standard deviation is recalculated on the smoothed sequence. The standard deviation peak detection module identifies new interval patterns and determines new delay variation period values ​​through cluster analysis. The new period values ​​take effect immediately and are used for subsequent synchronization volatility calculations.

[0072] The entire verification process is executed periodically. After each synchronization adjustment operation, a new round of deviation collection and stability assessment is automatically triggered. The new assessment results are compared with historical records to generate a node stability evolution graph. When a node triggers a reset process multiple times consecutively, the system sends a node health alert to the upper-level management platform.

[0073] The fault-tolerance mechanism handles boundary conditions: If a node does not record the actual display time at the target display timestamp, the system uses the previous valid record or interpolation from adjacent nodes for replacement calculation. During variance calculation, a zero variance value is returned for the special case of zero deviation within the window. When the re-initialization process cannot determine the new cycle due to insufficient data, the system temporarily uses the global default cycle value as a substitute, while extending the data acquisition window to continue monitoring.

[0074] The operations and maintenance interface displays a heatmap of synchronization stability metrics for each node. Nodes are arranged in groups based on physical location or logical grouping, with metric values ​​mapped to color gradients. Operators can intuitively identify node groups with weak synchronization performance. Clicking on an abnormal node allows viewing its historical deviation curve, the number of times a reset has been triggered, and the progress of the new cycle detection. The system records the timestamp, triggering reason, and new cycle value for each reset event, forming a node synchronization behavior archive for long-term analysis.

[0075] At the hardware level, timestamp acquisition utilizes the network interface card's hardware timestamp function, eliminating operating system scheduling latency. Deviation calculation tasks are distributed across multiple coprocessors for parallel execution, with each processor responsible for the calculation of a designated node group. Evaluation results are aggregated to the central controller, and trigger commands are transmitted via in-band management channels to avoid interfering with the rendering data stream. In the virtual production system, when camera tracking nodes exceed stability limits due to wireless interference, the above mechanism can complete periodic re-detection within three seconds, maintaining consistency in the fusion of virtual and real images.

[0076] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus.

[0077] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.

Claims

1. A method for synchronizing the display of images across distributed rendering nodes, characterized in that, Includes the following steps: The system acquires real-time display data and corresponding timestamp information from multiple nodes in a distributed rendering system. The timestamp information includes frame generation time and frame display time. Perform time-domain statistical analysis on the timestamp information, extract the screen display delay characteristics of each node, and determine the delay change period based on the screen display delay characteristics; For the delay change period of each node, the fluctuation frequency and amplitude of the timestamp are analyzed and displayed, and the synchronization fluctuation of each node is constructed. Based on the correlation between the synchronization volatility of multiple nodes in historical data, and the historical average of synchronization volatility, the overall network interference level at the current moment is calculated. Analyze the delay growth pattern of the timestamp displayed on the screen in a continuous time sequence at the current moment, and construct the synchronization lag trend degree at the current moment; By combining the synchronization lag trend with the overall network interference level, the synchronization offset index at the current moment is obtained. The feedback synchronization adjustment amount at the current moment is calculated by using the change in the synchronization offset index relative to the previous sampling time, the current synchronization control strength, and the preset adjustment increment. Based on the feedback synchronization adjustment amount and the actual screen synchronization measurement value, the neural network controller is used to dynamically synchronize and adjust the display screen of the distributed rendering nodes. The synchronization offset index obtained at the current moment includes: The intermediate offset factor is obtained by multiplying the synchronization lag trend degree by the overall network interference degree. The intermediate offset factor is processed using the exponential decay function to generate the synchronous offset index; The application of the neural network controller for dynamic synchronization adjustment includes: The feedback synchronization adjustment amount and the actual screen synchronization measurement value are input into the pre-trained neural network model to generate a synchronization control signal; The display time adjustment module of the distributed rendering node is driven by the synchronous control signal to modify the display sequence of the screen frames.

2. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The step of extracting the display delay features of each node and determining the delay change period further includes: Collect timestamp data of all historical sampling points within a specified time window before the current moment, and organize them into a time series dataset for each node in chronological order. Apply the exponential smoothing algorithm to the time series dataset of each node to eliminate random noise interference and generate a smooth time series. Calculate the moving standard deviation on the smoothed time series and identify the interval corresponding to the peak of the standard deviation as the period of delayed change.

3. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The synchronization volatility of each node is constructed as follows: For each node's delay change periodic sequence, the delay values ​​are arranged in chronological order to form a periodic delay sequence set; A window sliding technique is applied to a set of periodically delayed sequences to count the number of changes in the delay value and the average magnitude of the changes within each sliding window. The product of the number of changes and the average magnitude of the changes is taken as the synchronization volatility of the node.

4. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The construction of the synchronization lag trend degree at the current moment includes: Select multiple sampling points adjacent to the current time as the set of neighboring time points of the current time; Based on the screen display timestamp data of the adjacent time point set, the delay values ​​are arranged in ascending order of time to form a delay trend sequence; Calculate the first derivative sequence of the delayed trend sequence, and extract the sum of the absolute values ​​of all negative changes in the derivative sequence as the synchronous lag trend degree.

5. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The calculation of the overall network interference level at the current moment includes: Arrange the synchronization volatility of each node in the historical data in chronological order to form a synchronization volatility sequence set; Calculate the Pearson correlation coefficient of the synchronous volatility sequence set as a measure of correlation; The mean of all elements in the synchronous volatility sequence set is used as the historical mean; The sum of the absolute value of the correlation metric and the historical mean is defined as the overall network interference level.

6. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The calculation of the feedback synchronization adjustment amount at the current moment includes: Calculate the difference between the synchronization offset index at the current time and the synchronization offset index at the previous sampling time, and use it as the offset change. Multiply the offset change by the preset adjustment increment to obtain the adjustment increment contribution; The incremental adjustment contribution is added to the current synchronization control strength and defined as the feedback synchronization adjustment amount.

7. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The method also includes the step of dynamically updating the preset adjustment increment: Real-time monitoring of the changing patterns of timestamps displayed on the screen and the evolution trend of the synchronization offset index; Based on monitoring data, regression analysis algorithms are applied to predict changes in synchronization demand at future points in time. Adjust the preset adjustment increment based on the forecast results.

8. The distributed rendering node display synchronization method as described in claim 1, characterized in that, The method further includes a synchronization error verification step: After completing the dynamic synchronization adjustment of the neural network controller, the deviation data between the actual display timestamp and the target timestamp of each distributed rendering node is collected. The deviation data is grouped by node and the moving variance is calculated to obtain the synchronization stability index of each distributed rendering node. When the synchronization stability index of a node exceeds a preset threshold, the process of re-extracting the delay change cycle of that node is triggered.

Citation Information

Patent Citations

  • Real-time virtual scene LED shooting system and method

    CN112040092A

  • Synchronous control method and system for distributed video image stitching

    CN116389811A