CXL switch task scheduling method based on computational awareness, terminal equipment and storage medium
By acquiring link status and task requirements, selecting suitable links and providing static/dynamic routing modes, the problem of path mismatch with task requirements in traditional CXL switch scheduling is solved, achieving efficient and targeted data transmission.
Patent Information
- Application Number
- CN202511811303.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-03
- Publication Date
- 2026-03-03
AI Technical Summary
Traditional CXL switch task scheduling methods still transmit data along fixed paths when links are congested or latency increases, which cannot adapt to the needs of high-speed interconnection and diversified task processing, resulting in excessive data transmission latency and low resource utilization.
By acquiring link status data from CXL switches and the quality of service requirements of tasks to be scheduled, available links that meet the requirements are filtered out, static and dynamic routing modes are provided to select the target path, and path stability is monitored in real time to configure the transmission path.
It effectively solved the problem of the disconnect between the path and the task requirements, ensured the service quality requirements, optimized the allocation of link resources, and improved the relevance and efficiency of data transmission.
Smart Images

Figure CN121603435A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer technology, and in particular relates to a computation-aware CXL switch task scheduling method, terminal device, and storage medium. Background Technology
[0002] Traditional CXL switch task scheduling methods often employ a single fixed routing strategy. Even when link congestion occurs or latency increases, data is still transmitted along a fixed path. Alternatively, homogenized transmission resources are allocated to tasks with different quality of service requirements, leading to problems such as excessive data transmission latency and low resource utilization. These methods are unsuitable for the high-speed interconnection and diverse task processing needs of CXL technology scenarios. A new technical approach is required to address these issues. Summary of the Invention
[0003] In view of this, embodiments of the present invention provide a computation-aware CXL switch task scheduling method, terminal device, and storage medium, which can solve the problem that related technologies cannot adapt to the needs of high-speed interconnection and diversified task processing in CXL technology scenarios.
[0004] The first aspect of this invention provides a computation-aware CXL switch task scheduling method, comprising: Obtain link status data from the CXL switch and the quality of service requirements of the tasks to be scheduled; Based on the link status data, available links that meet the service quality requirements are filtered, and the available links are sorted to obtain a candidate link set; The target transmission path of the task to be scheduled is determined from the candidate link set according to a preset routing mode, wherein the preset routing mode includes a static routing mode and a dynamic routing mode. A scheduling instruction carrying the target transmission path information is sent to the CXL switch so that the CXL switch configures the data transmission path according to the scheduling instruction.
[0005] Optionally, in a first implementation of the first aspect of the present invention, obtaining the link status data of the CXL switch and the quality of service requirements of the task to be scheduled includes: The cumulative delay, congestion, and bit error rate of each link of the CXL switch are collected in real time as link status data. The transaction type of the task to be scheduled is parsed, and the corresponding quality of service requirements are determined according to the transaction type, wherein the quality of service requirements include at least one of latency-sensitive, bandwidth-sensitive, and fault-tolerant types.
[0006] Optionally, in a second implementation of the first aspect of the present invention, the step of filtering available links that meet the quality of service requirements based on the link status data includes: A corresponding set of link state thresholds is determined based on the transaction type, wherein the set of link state thresholds includes at least one of a delay threshold, a congestion threshold, and a bit error rate threshold; The cumulative delay, congestion level, and bit error rate are compared with their respective link state thresholds to obtain the comparison results; Based on the comparison results, links that meet the following criteria are selected as usable links: cumulative delay meets the delay threshold, congestion meets the congestion threshold, and bit error rate meets the bit error rate threshold.
[0007] Optionally, in a third implementation of the first aspect of the present invention, sorting the available links to obtain a candidate link set includes: The priority index weights are determined based on the transaction type. Based on the priority index weights, the cumulative latency, congestion, and bit error rate of each available link are weighted and calculated to obtain the priority score of each available link. Available links are sorted from highest to lowest priority score to obtain a set of candidate links.
[0008] Optionally, in a fourth implementation of the first aspect of the present invention, determining the target transmission path of the task to be scheduled from the candidate link set according to a preset routing mode includes: If the preset routing mode is static routing mode, then a pre-configured fixed path is selected from the candidate link set as the target transmission path; If the preset routing mode is dynamic routing mode, the path with the highest priority is selected from the candidate link set as the target transmission path.
[0009] Optionally, in a fifth implementation of the first aspect of the present invention, after sending the scheduling instruction carrying the target transmission path information to the CXL switch, the process includes: Real-time monitoring of the transmission performance indicators of the target transmission path; Predict the path stability score of the target transmission path based on the transmission performance indicators; If the path stability score is lower than the preset fault tolerance threshold, a backup transmission path is re-determined from the candidate link set, and a path reconfiguration instruction is sent to the CXL switch to seamlessly switch the data flow of the task to be scheduled to the backup transmission path.
[0010] Optionally, in a sixth implementation of the first aspect of the present invention, the step of predicting the path stability score of the target transmission path based on the transmission performance index includes: The transmission performance indicators are input into a pre-trained scoring prediction model to obtain a stability score for the target transmission path. The transmission performance indicators include the physical layer error count per unit time, the link layer retransmission event frequency, and the jitter variance of the transmission delay. The scoring prediction model is trained and generated in a supervised learning manner based on historical link performance data and corresponding link fault records.
[0011] Optionally, in a seventh implementation of the first aspect of the present invention, before determining the target transmission path of the task to be scheduled from the candidate link set according to a preset routing mode, the method further includes: Obtain the real-time load status of the computing device associated with the task to be scheduled; The candidate link set is dynamically adjusted based on the real-time load status. If the computing device is a heterogeneous computing unit and its current load exceeds the computing load tolerance, then links connected to homogeneous or heterogeneous computing units with lower loads are preferentially selected to be added to the adjusted candidate link set.
[0012] Secondly, embodiments of the present invention provide a terminal device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the above-described computation-aware CXL switch task scheduling method.
[0013] Thirdly, embodiments of the present invention provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the above-described computation-aware CXL switch task scheduling method.
[0014] Fourthly, embodiments of the present invention provide a computer program product that, when run on a terminal device, causes the terminal device to execute the aforementioned computation-aware CXL switch task scheduling method.
[0015] The beneficial effects of this invention compared to the prior art are as follows: by first acquiring link status data and task service quality requirements; then obtaining a set of candidate links matching the requirements through screening and sorting; and providing two routing modes, static and dynamic, to adapt to different scenarios for selecting target paths; and finally configuring the transmission path, the invention effectively solves the problem of path and link status and task requirements being disconnected in traditional scheduling. This not only ensures the service quality requirements of the tasks to be scheduled, but also optimizes link resource allocation and improves the targeting and efficiency of CXL switch data transmission. Attached Figure Description
[0016] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0017] Figure 1 This is a schematic diagram of an embodiment of the computation-aware CXL switch task scheduling method in this invention. Figure 2 This is a schematic diagram of the first specific embodiment of the CXL switch task scheduling method based on computational awareness in this invention. Figure 3 This is a schematic diagram of a second specific embodiment of the computation-aware CXL switch task scheduling method in this invention. Figure 4 This is a schematic diagram of a third specific embodiment of the computation-aware CXL switch task scheduling method in this invention. Figure 5 This is a schematic diagram of one embodiment of the terminal device in this invention. Detailed Implementation
[0018] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without inventive effort are protected by this invention.
[0019] It should be noted that the terms "comprising," "including," and "having," and any variations thereof, in the specification, claims, and accompanying drawings of this invention, are intended to cover non-exclusive inclusion. For example, a process, method, terminal, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices. In the claims, specification, and accompanying drawings of this invention, relational terms such as "first" and "second" are used merely to distinguish one entity / operation / object from another entity / operation / object, and do not necessarily require or imply any such immediate relationship or order between these entities / operations / objects.
[0020] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of the invention. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a mutually exclusive, independent, or alternative embodiment. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0021] Traditional CXL switch task scheduling methods often employ a single fixed routing strategy. Even when link congestion occurs or latency increases, data is still transmitted along a fixed path. Alternatively, homogenized transmission resources are allocated to tasks with different quality of service requirements, leading to problems such as excessive data transmission latency and low resource utilization. These methods are unsuitable for the high-speed interconnection and diverse task processing needs of CXL technology scenarios. A new technical approach is required to address these issues.
[0022] In view of this, embodiments of the present invention provide a computation-aware CXL switch task scheduling method, terminal device, and storage medium. The method first acquires link status data and task service quality requirements; then, it filters and sorts these data to obtain a set of candidate links matching the requirements. It provides both static and dynamic routing modes to adapt to different scenarios for selecting target paths, and finally configures the transmission path. This effectively solves the problem of path and link status and task requirements being disconnected in traditional scheduling. It not only ensures the service quality requirements of the tasks to be scheduled but also optimizes link resource allocation, improving the targeting and efficiency of CXL switch data transmission.
[0023] To illustrate the technical solution of the present invention, specific embodiments are described below.
[0024] Figure 1 This illustration shows a flowchart of a computation-aware CXL switch task scheduling method according to an embodiment of this application. This method can be applied to terminal devices. Terminal devices can be servers, service clusters, mobile phones, tablets, laptops, ultra-mobile personal computers (UMPCs), netbooks, etc.
[0025] Specifically, the above-mentioned computation-aware CXL switch task scheduling method may include the following steps S101 to S104.
[0026] Step S101: Obtain the link status data of the CXL switch and the quality of service requirements of the task to be scheduled.
[0027] Link status data refers to a set of indicators that reflect the real-time operating status of each link of the CXL switch, such as link latency, congestion level, or error rate; Quality of Service (QoS) requirements refer to the specific requirements of the scheduled task on the link performance during transmission, such as low latency, high bandwidth, or high reliability.
[0028] In the embodiments of this application, the terminal device collects the cumulative latency, congestion level, and bit error rate of each link of the CXL switch in real time as link status data. It parses the transaction type of the task to be scheduled (such as memory access, computation instruction transmission), and determines the corresponding quality of service requirements based on the transaction type. This includes, but is not limited to, selecting latency-sensitive low-latency links (such as cache consistency transactions); prioritizing bandwidth-sensitive high-bandwidth links (such as large data transmission); and prioritizing fault-tolerant links with low bit error rates (such as critical data synchronization).
[0029] Step S102: Filter available links that meet the quality of service requirements based on link status data, and sort the available links to obtain a candidate link set.
[0030] Among them, available links refer to a subset of links whose link status data meets the service quality requirements of the task to be scheduled; the candidate link set is a list of available links sorted by priority, used to optimize path selection.
[0031] In the embodiments of this application, link status data is matched and analyzed with service quality requirements, and available links are initially screened through threshold comparison or rule engine. Then, the available links are sorted according to predefined strategies (such as link quality scoring, load balancing, etc.) to generate an ordered set of candidate links.
[0032] Optionally, the sorting strategy can be adaptively adjusted based on dynamic changes in link status.
[0033] Step S103: Determine the target transmission path of the task to be scheduled from the candidate link set according to the preset routing mode, wherein the preset routing mode includes static routing mode and dynamic routing mode.
[0034] Among them, the preset routing mode refers to the path selection rules pre-configured in the terminal device, including static routing mode and dynamic routing mode; static routing mode relies on fixed path configuration, while dynamic routing mode dynamically selects the path according to the real-time link status.
[0035] In the embodiments of this application, a path is selected from the candidate link set as the target transmission path according to the current policy settings.
[0036] Optionally, if the preset routing mode is static routing mode, a pre-configured fixed path is selected from the candidate link set as the target transmission path; if the preset routing mode is dynamic routing mode, the path with the highest priority is selected from the candidate link set as the target transmission path.
[0037] Step S104: Send a scheduling instruction carrying the target transmission path information to the CXL switch so that the CXL switch can configure the data transmission path according to the scheduling instruction.
[0038] The scheduling instruction is a type of control signaling that contains detailed information about the target transmission path, such as link identifiers, port mappings, or routing table entries. The CXL switch reconfigures its internal switching logic based on this instruction to establish a task data transmission path.
[0039] In the embodiments of this application, a scheduling command is sent to the CXL switch through a standard communication protocol (such as PCIe or CXL protocol extension) to trigger the path configuration operation of the switch, thereby enabling the scheduled task to perform efficient and reliable data transmission along the target transmission path.
[0040] Optionally, scheduling instructions may include redundancy and fault-tolerance information to enhance transmission robustness.
[0041] The beneficial effects of this application embodiment compared with the prior art are as follows: by first obtaining link status data and task service quality requirements; then obtaining a set of candidate links matching the requirements through screening and sorting; and providing two routing modes, static and dynamic, to adapt to different scenarios for selecting target paths; and finally configuring the transmission path, the problem of disconnect between path and link status and task requirements in traditional scheduling is effectively solved. This not only ensures the service quality requirements of the task to be scheduled, but also optimizes the allocation of link resources and improves the pertinence and efficiency of CXL switch data transmission.
[0042] Considering that traditional CXL switch task scheduling schemes typically rely on fixed link configurations or single performance metrics, lacking comprehensive monitoring of real-time link status, an optional implementation method is proposed, referring to... Figure 2 , Figure 2 This is a schematic diagram of a specific embodiment of the computation-aware CXL switch task scheduling method in this invention, which obtains the link status data of the CXL switch and the service quality requirements of the task to be scheduled, including steps S201 to S202.
[0043] Step S201: Collect the cumulative delay, congestion and bit error rate of each link of the CXL switch in real time as link status data.
[0044] In the embodiments of this application, a data communication channel is established with the CXL switch through a built-in monitoring module to actively acquire real-time performance parameters of each link in a periodic or event-triggered manner. The real-time performance parameters include cumulative latency (reflecting the total delay of data packet transmission), congestion (indicating the link traffic load level), and bit error rate (measuring the reliability of data transmission).
[0045] Optionally, an adaptive sampling strategy can be used during the acquisition process to dynamically adjust the acquisition frequency based on network load.
[0046] Step S202: parse the transaction type of the task to be scheduled, and determine the corresponding quality of service requirements based on the transaction type. The quality of service requirements include at least one of latency-sensitive, bandwidth-sensitive, and fault-tolerant types.
[0047] In the embodiments of this application, upon receiving a task to be scheduled, a task analysis engine is invoked to parse the task descriptor or metadata and identify its transaction type attributes (such as memory read / write, computation instructions, or data synchronization). Optionally, a machine learning classifier can be introduced during parsing to assist in the judgment, and the model can be trained through historical task patterns to improve the robustness and efficiency of transaction type identification.
[0048] Based on the parsed transaction type, a predefined service quality policy table is retrieved, and the transaction type is mapped to the corresponding service quality requirement category. The requirement category includes at least one of latency-sensitive (prioritizing low latency), bandwidth-sensitive (emphasizing high throughput), and fault-tolerant (emphasizing error recovery capabilities).
[0049] Optionally, the mapping strategy can support user-defined rules, allowing for flexible expansion of requirement dimensions according to application scenarios.
[0050] In this embodiment of the invention, by collecting multi-dimensional link status data in real time and dynamically mapping service quality requirements based on task transaction types, the accurate matching of link resources and service characteristics during task scheduling is achieved, thereby significantly reducing the problems of low transmission efficiency and service quality fluctuations caused by blind selection of link status or mismatch of requirements.
[0051] Considering that in existing CXL switch scheduling schemes, the selected links may have hidden dangers in certain dimensions that are not prioritized, failing to provide end-to-end quality assurance for specific types of tasks and ultimately affecting task execution performance, an optional implementation method is proposed, referring to... Figure 3 , Figure 3 This is a schematic diagram of a specific embodiment of the computation-aware CXL switch task scheduling method in this invention. It includes steps S301 to S303, which involves filtering available links that meet the quality of service requirements based on link status data.
[0052] Step S301: Determine the corresponding link state threshold set according to the transaction type, wherein the link state threshold set includes at least one of the delay threshold, congestion threshold, and bit error rate threshold.
[0053] In the embodiments of this application, based on the parsed transaction type of the task to be scheduled, a preset configuration policy library is queried, and a set of link state thresholds matching the transaction type is dynamically loaded. The set of link state thresholds serves as a filtering criterion and includes at least one or more key parameters from the following: latency threshold, congestion threshold, and bit error rate threshold.
[0054] Optionally, the threshold set can be fine-tuned in real time, rather than being a completely static preset value, to enhance adaptability to network state fluctuations.
[0055] Step S302: Compare the cumulative delay, congestion level, and bit error rate with the corresponding link state thresholds to obtain the comparison results.
[0056] In the embodiments of this application, the real-time collected status data of each link is compared one by one with the corresponding thresholds to generate a quantitative comparison result. This process uses a core logic unit to perform numerical calculations and conditional judgments to identify whether the parameters of each link are within the allowable threshold range.
[0057] Optionally, a buffer zone can be introduced to avoid frequent switching of link states due to minor fluctuations at threshold boundaries.
[0058] Step S303: Based on the comparison results, select links that meet the cumulative delay threshold, the congestion threshold, and the bit error rate threshold as available links.
[0059] In the embodiments of this application, based on the comparison results, the link filtering module is invoked to implement multi-condition joint judgment. Only when the cumulative delay of a link meets the delay threshold requirement, its congestion degree meets the congestion threshold requirement, and its bit error rate meets the bit error rate threshold requirement, will the link be marked as an available link and included in the subsequent processing flow.
[0060] Optionally, a weighted priority pass strategy can be supported. For links whose non-core indicators slightly exceed the threshold, they can be retained if they perform well in key indicators, thereby increasing the range of selectable links.
[0061] In this embodiment of the invention, by setting differentiated multi-dimensional link status thresholds based on transaction type and performing multi-condition compliance screening on the links, it is effectively ensured that the selected links can meet the requirements of the current task in terms of latency, congestion control, and transmission reliability.
[0062] Considering that the task scheduling technology based on CXL switches does not adjust the weight allocation according to the differences in the transaction types of the tasks to be scheduled, the sorting results cannot match the different link performance requirements of different tasks. For example, latency-sensitive tasks may be assigned to links with low latency index weights, high overall scores but poor latency performance, affecting task transmission efficiency. Therefore, an optional specific implementation method is proposed, referring to... Figure 4 , Figure 4 This is a schematic diagram of a specific embodiment of the computation-aware CXL switch task scheduling method in this invention. The available links are sorted to obtain a candidate link set, including steps S401 to S403.
[0063] Step S401: Determine the priority index weight based on the transaction type.
[0064] In the embodiments of this application, the transaction type of the task to be scheduled is obtained. The transaction type has been determined in the previous step by parsing the task to be scheduled, and the corresponding priority index weight is determined based on the transaction type.
[0065] Optionally, priority index weights can be determined by calling a preset transaction type and weight mapping table, which pre-stores the weight allocation ratios of cumulative latency, congestion, and bit error rate under different transaction types.
[0066] Optionally, the weights of each indicator can be dynamically calculated using a preset algorithm based on the service quality requirement level corresponding to the transaction type. The higher the service quality requirement level, the greater the weight of the corresponding indicator.
[0067] Step S402: Based on the priority index weights, the cumulative delay, congestion and bit error rate of each available link are weighted and calculated to obtain the priority score of each available link.
[0068] In the embodiments of this application, the cumulative delay, congestion and bit error rate data of each available link are extracted. These data have been obtained and confirmed to meet the threshold requirements in the link status collection and available link screening steps. The above-mentioned index data of each link are weighted and calculated with the corresponding priority index weight to obtain the priority score of each available link.
[0069] Optionally, during the weighted calculation process, the data of each indicator can be normalized first to eliminate the influence of the difference in dimensions between different indicators on the calculation results.
[0070] Optionally, the weighted calculation uses a linear weighted summation method, which adds the product of each indicator and its corresponding weight to obtain the final priority score.
[0071] Step S403: Sort the available links according to their priority scores from high to low to obtain a set of candidate links.
[0072] In the embodiments of this application, the priority scores of all available links are compared, and the available links are sorted in descending order of priority scores. The resulting link sequence is the candidate link set, which will be used in the subsequent process of determining the target transmission path.
[0073] Optionally, if multiple available links have the same priority score, the sorting order of links with the same score can be determined by further referring to the historical transmission stability data of the links.
[0074] In this embodiment of the invention, by determining the priority index weight according to the transaction type, the calculation of the link priority score can accurately match the core requirements of the task to be scheduled, thereby giving priority to the links in the sorted candidate link set that are more in line with the task performance requirements, effectively improving the adaptability of the link sorting results to the task requirements.
[0075] Considering that the CXL switch task scheduling method lacks a mechanism for continuous tracking and prediction of path transmission status after determining the target transmission path and completing the configuration, it cannot detect and handle the performance degradation caused by path congestion, link failure, or other reasons in a timely manner. Therefore, an optional specific implementation method is proposed, which includes steps S501 to S503 after sending a scheduling instruction carrying target transmission path information to the CXL switch.
[0076] Step S501: Monitor the transmission performance indicators of the target transmission path in real time.
[0077] In the embodiments of this application, after sending a scheduling instruction carrying target transmission path information to the CXL switch, a real-time monitoring mechanism for the target transmission path is initiated to continuously collect various transmission performance indicators of the target transmission path during data transmission.
[0078] Optionally, indicator data can be obtained through a dedicated monitoring channel established with the CXL switch.
[0079] Optionally, a fixed monitoring cycle can be set, and transmission performance indicators can be collected in a periodic manner. The monitoring cycle can be flexibly adjusted according to the service quality requirements of the task.
[0080] Step S502: Predict the path stability score of the target transmission path based on the transmission performance indicators.
[0081] In the embodiments of this application, the collected transmission performance indicators are preprocessed to remove invalid data and outliers. Then, the path stability of the target transmission path is quantitatively evaluated according to the preset prediction model, and the corresponding path stability score is calculated.
[0082] Optionally, the transmission performance metrics are input into a pre-trained scoring prediction model to obtain a stability score for the target transmission path. The transmission performance metrics include the physical layer error count per unit time, the link layer retransmission event frequency, and the jitter variance of the transmission delay. The scoring prediction model is trained and generated in a supervised learning manner based on historical link performance data and corresponding link fault records.
[0083] Specifically, during the real-time monitoring of the transmission performance of the target transmission path, the types of transmission performance indicators that need to be collected are determined, including the physical layer error count per unit time, the link layer retransmission event frequency, and the jitter variance of transmission delay, and these indicator data are acquired according to the preset collection rules.
[0084] The physical layer error count and link layer retransmission event frequency can be directly read through the performance statistics interface of the CXL switch.
[0085] By continuously collecting transmission delay data and calculating the variance, the jitter variance index of transmission delay can be obtained. The collection interval can be set according to the stability requirements of the task.
[0086] The collected physical layer error counts, link layer retransmission event frequencies, and jitter variance data of transmission delay are preprocessed to ensure that the data format meets the input requirements of the pre-trained scoring prediction model.
[0087] The pre-trained scoring prediction model, either stored locally or accessed via the network, is invoked, and the pre-processed transmission performance index data is input into this model. This scoring prediction model is trained using supervised learning based on historical link performance data and corresponding link failure records. After processing the input data, the model outputs a stability score for the target transmission path, which characterizes the path's stability.
[0088] In step S503, if the path stability score is lower than the preset fault tolerance threshold, a backup transmission path is re-determined from the candidate link set, and a path reconfiguration command is sent to the CXL switch to seamlessly switch the data flow of the task to be scheduled to the backup transmission path.
[0089] In the embodiments of this application, the calculated path stability score is compared with a preset fault tolerance threshold to determine whether the score is lower than the threshold. If the path stability score is higher than or equal to the preset fault tolerance threshold, real-time monitoring of the target transmission path continues; if the path stability score is lower than the preset fault tolerance threshold, links that meet the current task requirements are reselected from the previously determined candidate link set as backup transmission paths, and a path reconfiguration command carrying backup transmission path information is generated and sent to the CXL switch.
[0090] In this embodiment of the invention, by monitoring the target transmission path in real time and predicting its stability, the risk of path performance degradation can be detected in advance. When the path stability is insufficient, an alternative path can be determined from the candidate link set in a timely manner and reconfiguration can be triggered to achieve seamless switching of data streams.
[0091] Considering that in traditional CXL switch task scheduling, the determination of the candidate link set is often based solely on the link's own status without considering the real-time load of the computing device associated with the task to be scheduled, especially when the computing device is a heterogeneous computing unit and has a high load, the link connecting to the high-load device may still be selected, causing the task to be delayed after transmission due to insufficient device processing capacity, an optional specific implementation method is proposed, which includes steps S601 to S604 before determining the target transmission path of the task to be scheduled from the candidate link set according to the preset routing mode.
[0092] Step S601: Obtain the real-time load status of the computing device associated with the task to be scheduled.
[0093] In the embodiments of this application, the computing devices associated with the task to be scheduled are first located, and the process of obtaining the real-time load status of these associated computing devices is initiated.
[0094] Optionally, a load query command is sent through a communication link established with the computing device, and load data is received from the computing device. Optionally, the load management system of the computing cluster can be connected to directly read the real-time load information of the associated computing devices. The load status data may include indicators such as CPU utilization, memory usage, and task queue length.
[0095] Step S602: Dynamically adjust the candidate link set according to the real-time load status. If the computing device is a heterogeneous computing unit and its current load exceeds the computing load tolerance, then links connected to homogeneous or heterogeneous computing units with lower loads are preferentially selected to be added to the adjusted candidate link set.
[0096] In the embodiments of this application, the real-time load status of the acquired associated computing devices is analyzed to determine the type of the computing device and whether its current load exceeds a preset computing load tolerance. If the analysis results show that the computing device is a heterogeneous computing unit and its current load exceeds the computing load tolerance, then links connecting to homogeneous or heterogeneous computing units with lower loads are preferentially selected from the original candidate link set and included in the adjusted candidate link set; if the computing device is not a heterogeneous computing unit, or although it is a heterogeneous computing unit, its load does not exceed the tolerance, then it is decided whether to retain the original candidate link set or make slight adjustments based on actual needs.
[0097] Optionally, load tolerance grading standards can be preset, and different link filtering priorities can be adopted for different load levels.
[0098] After dynamically adjusting the candidate link set, the adjusted candidate link set is output. This set will serve as the basis for determining the target transmission path according to the preset routing mode, ensuring that the selection of the target transmission path not only considers the status of the link itself, but also adapts to the load capacity of the associated computing device.
[0099] In this embodiment of the invention, the candidate link set is dynamically adjusted by combining the real-time load status of the computing devices associated with the task to be scheduled. In particular, when the load of heterogeneous computing units exceeds the tolerance limit, links connecting to low-load devices are selected first, making the candidate link set more adaptable and effectively avoiding task processing bottlenecks caused by excessive load of associated devices.
[0100] like Figure 5 The diagram illustrates a terminal device according to an embodiment of the present invention. The terminal device 700 may include a processor 701, a memory 702, and a computer program 703 stored in the memory 702 and executable on the processor 701, such as a computation-aware CXL switch task scheduler. When the processor 701 executes the computer program 703, it implements the steps described in the various computation-aware CXL switch task scheduling embodiments.
[0101] A computer program can be divided into one or more modules / units. One or more modules / units are stored in memory 702 and executed by processor 701 to complete the present invention. One or more modules / units can be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program in a terminal device.
[0102] The terminal device may include, but is not limited to, a processor 701 and a memory 702. Those skilled in the art will understand that... Figure 5 This is merely an example of a terminal device and does not constitute a limitation on the terminal device. It may include more or fewer components than shown in the figure, or combine certain components, or different components. For example, a terminal device may also include input / output devices, network access devices, buses, etc.
[0103] The processor 701 may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0104] The memory 702 can be an internal storage unit of the terminal device, such as the hard drive or RAM of the terminal device. The memory 702 can also be an external storage device of the terminal device, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card. Furthermore, the memory 702 can include both internal and external storage units of the terminal device. The memory 702 is used to store computer programs and other programs and data required by the terminal device. The memory 702 can also be used to temporarily store data that has been output or will be output.
[0105] It should be noted that, for the sake of convenience and brevity, the structure of the terminal device described above can also be referred to the specific description of the structure in the method embodiment, which will not be repeated here.
[0106] This invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, can implement the steps in the above-described computation-aware CXL switch task scheduling method.
[0107] This invention provides a computer program product that, when run on a mobile terminal, enables the mobile terminal to implement the steps in the above-mentioned computation-aware CXL switch task scheduling method.
[0108] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0109] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for various specific applications, but such implementations should not be considered beyond the scope of this invention.
[0110] In the embodiments provided by this invention, it should be understood that the disclosed terminal devices and methods can be implemented in other ways. For example, the terminal device embodiments described above are merely illustrative. Furthermore, the couplings or direct couplings or communication connections shown or discussed may be indirect couplings or communication connections through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0111] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0112] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0113] If the integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc.
[0114] The embodiments described above are merely illustrative of the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. These modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.
Claims
1. A task scheduling method for a CXL switch based on computational awareness, characterized in that, include: Obtain link status data from the CXL switch and the quality of service requirements of the tasks to be scheduled; Based on the link status data, available links that meet the service quality requirements are filtered, and the available links are sorted to obtain a candidate link set; The target transmission path of the task to be scheduled is determined from the candidate link set according to a preset routing mode, wherein the preset routing mode includes a static routing mode and a dynamic routing mode. A scheduling instruction carrying the target transmission path information is sent to the CXL switch so that the CXL switch configures the data transmission path according to the scheduling instruction.
2. The computation-aware CXL switch task scheduling method as described in claim 1, characterized in that, The acquisition of link status data from the CXL switch and the quality of service requirements of the tasks to be scheduled includes: The cumulative delay, congestion, and bit error rate of each link of the CXL switch are collected in real time as link status data. The transaction type of the task to be scheduled is parsed, and the corresponding quality of service requirements are determined according to the transaction type, wherein the quality of service requirements include at least one of latency-sensitive, bandwidth-sensitive, and fault-tolerant types.
3. The computation-aware CXL switch task scheduling method as described in claim 1, characterized in that, The step of filtering available links that meet the quality of service requirements based on the link status data includes: A corresponding set of link state thresholds is determined based on the transaction type, wherein the set of link state thresholds includes at least one of a delay threshold, a congestion threshold, and a bit error rate threshold; The cumulative delay, congestion level, and bit error rate are compared with their respective link state thresholds to obtain the comparison results. Based on the comparison results, links that meet the following criteria are selected as usable links: cumulative delay meets the delay threshold, congestion meets the congestion threshold, and bit error rate meets the bit error rate threshold.
4. The computation-aware CXL switch task scheduling method as described in claim 3, characterized in that, The process of sorting the available links to obtain a candidate link set includes: The priority index weights are determined based on the transaction type. Based on the priority index weights, the cumulative latency, congestion, and bit error rate of each available link are weighted and calculated to obtain the priority score of each available link. Available links are sorted from highest to lowest priority score to obtain a set of candidate links.
5. The computation-aware CXL switch task scheduling method as described in claim 1, characterized in that, The step of determining the target transmission path of the task to be scheduled from the candidate link set according to the preset routing mode includes: If the preset routing mode is static routing mode, then a pre-configured fixed path is selected from the candidate link set as the target transmission path; If the preset routing mode is dynamic routing mode, the path with the highest priority is selected from the candidate link set as the target transmission path.
6. The computation-aware CXL switch task scheduling method as described in claim 1, characterized in that, After sending the scheduling instruction carrying the target transmission path information to the CXL switch, the process includes: Real-time monitoring of the transmission performance indicators of the target transmission path; Predict the path stability score of the target transmission path based on the transmission performance indicators; If the path stability score is lower than the preset fault tolerance threshold, a backup transmission path is re-determined from the candidate link set, and a path reconfiguration instruction is sent to the CXL switch to seamlessly switch the data flow of the task to be scheduled to the backup transmission path.
7. The computation-aware CXL switch task scheduling method as described in claim 6, characterized in that, The step of predicting the path stability score of the target transmission path based on the transmission performance indicators includes: The transmission performance indicators are input into a pre-trained scoring prediction model to obtain a stability score for the target transmission path. The transmission performance indicators include the physical layer error count per unit time, the link layer retransmission event frequency, and the jitter variance of the transmission delay. The scoring prediction model is trained and generated in a supervised learning manner based on historical link performance data and corresponding link fault records.
8. The computation-aware CXL switch task scheduling method as described in claim 1, characterized in that, Before determining the target transmission path of the task to be scheduled from the candidate link set according to the preset routing mode, the method further includes: Obtain the real-time load status of the computing device associated with the task to be scheduled; The candidate link set is dynamically adjusted based on the real-time load status. If the computing device is a heterogeneous computing unit and its current load exceeds the computing load tolerance, then links connected to homogeneous or heterogeneous computing units with lower loads are preferentially selected to be added to the adjusted candidate link set.
9. A terminal device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the computation-aware CXL switch task scheduling method as described in any one of claims 1 to 8.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the computation-aware CXL switch task scheduling method as described in any one of claims 1 to 8.