WO2023165318A1 - Système et procédé de traitement de ressources - Google Patents

Système et procédé de traitement de ressources Download PDF

Info

Publication number
WO2023165318A1
WO2023165318A1 PCT/CN2023/075638 CN2023075638W WO2023165318A1 WO 2023165318 A1 WO2023165318 A1 WO 2023165318A1 CN 2023075638 W CN2023075638 W CN 2023075638W WO 2023165318 A1 WO2023165318 A1 WO 2023165318A1
Authority
WO
WIPO (PCT)
Prior art keywords
thread
transaction
information
module
resource
Prior art date
Application number
PCT/CN2023/075638
Other languages
English (en)
Chinese (zh)
Inventor
张晋
Original Assignee
阿里巴巴(中国)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 阿里巴巴(中国)有限公司 filed Critical 阿里巴巴(中国)有限公司
Publication of WO2023165318A1 publication Critical patent/WO2023165318A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the embodiments of this specification relate to the technical field of resource scheduling, and in particular, to a resource processing system and method.
  • cloud computing is applied in more and more scenarios. It can not only support high-concurrency services, but also make full use of resources to complete transaction processing operations. It has become a widely used technology in existing technologies. of a resource.
  • the CPU task scheduler needs to implement resource scheduling or load balancing, it needs to continuously interact with each CPU.
  • scheduling decisions between different tasks may depend on each other; for example, enable On a machine with hyperthreading enabled, the virtual machine CPUs corresponding to two different virtual machines cannot run two different hyperthreads on the same machine CPU at the same time. If this rule is violated, the virtual machine will They can attack each other; it will not only consume a lot of scheduling resources, but also affect the security of tasks, so an effective solution is urgently needed to solve the above problems.
  • the embodiment of this specification provides a resource processing system.
  • One or more embodiments of this specification relate to two resource processing methods, two resource processing devices, a computing device, a computer-readable storage medium and a computer program, so as to solve the technical defects existing in the prior art .
  • a resource processing system including:
  • the resource coordination module is configured to obtain pending transactions by detecting the shared data structure; determine at least two thread modules associated with the pending transactions, and send a transaction processing request to each thread module;
  • Each thread module is configured to determine thread state information based on the transaction processing request, and feed back the thread state information to the resource coordination module;
  • the resource coordination module is further configured to determine transaction processing information corresponding to the transaction to be processed according to the thread state information of each thread module, and send the transaction processing information to each thread module;
  • Each thread module is further configured to process the transaction to be processed based on the transaction processing information; wherein, the physical resources to which each thread module belongs are the same.
  • a resource processing method applied to a resource coordination module including:
  • another resource processing method is provided, which is applied to the thread module, including:
  • a resource processing device which is applied to a resource coordination module, including:
  • a detection transaction unit configured to obtain pending transactions by detecting a shared data structure
  • determining a thread unit configured to determine at least two thread modules associated with the transaction to be processed, and send a transaction processing request to each thread module;
  • a receiving information unit configured to receive thread state information fed back by each thread module for the transaction processing request
  • the sending information unit is configured to determine transaction processing information corresponding to the transaction to be processed based on the thread state information, and send the transaction processing information to each thread module.
  • a resource processing device applied to a thread module including:
  • a receiving request unit configured to receive a transaction processing request sent by the resource coordination module for pending transactions
  • a determining information unit configured to determine thread state information according to the transaction processing request, and feed back the thread state information to the resource coordination module;
  • An information receiving unit configured to receive transaction processing information fed back by the resource coordination module for the thread state information
  • the transaction processing unit is configured to process the transaction to be processed based on the transaction processing information.
  • a computing device including:
  • the memory is used to store computer-executable instructions
  • the processor is used to implement the steps of the above resource processing method when executing the computer-executable instructions.
  • a computer-readable storage medium which stores computer-executable instructions, and when the instructions are executed by a processor, the steps of the resource processing method above are implemented.
  • a computer program is provided, wherein when the computer program is executed in a computer, the computer is caused to execute the steps of the resource processing method above.
  • the resource coordination module when the resource coordination module obtains pending transactions by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, the pending transaction can be determined at this time At least two thread modules associated with the transaction, and the physical resources of each thread module are the same; then send a transaction processing request to each thread module, each thread module can determine the thread status information according to the transaction processing request, and feed it back to Resource coordination module; the resource coordination module can determine the transaction processing information of the transaction to be processed by integrating the thread state information of each thread module, and feed back the transaction processing information to each thread module, and finally each thread module can be processed according to the transaction processing information Transaction processing operations.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, thereby improving transaction processing security and improving transaction processing efficiency to reduce resource consumption costs.
  • FIG. 1 is a schematic structural diagram of a resource processing system provided by an embodiment of this specification
  • FIG. 2 is a flowchart of a resource processing method provided by an embodiment of this specification
  • Fig. 3 is a flow chart of another resource processing method provided by an embodiment of this specification.
  • Fig. 4 is a schematic structural diagram of a resource processing device provided by an embodiment of this specification.
  • Fig. 5 is a schematic structural diagram of another resource processing device provided by an embodiment of this specification.
  • Fig. 6 is a structural block diagram of a computing device provided by an embodiment of this specification.
  • first, second, etc. may be used to describe various information in one or more embodiments of the present specification, the information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another.
  • the first may also be referred to as the second, and similarly, the second may also be referred to as the first without departing from the scope of one or more embodiments of the present specification.
  • the word "if” as used herein may be interpreted as “at” or "when” or "in response to a determination.”
  • CPU Central Processing Unit, processor
  • Hyper-Threading A technology that simulates multiple logical threads on the CPU, simulating a physical chip of a multi-threaded processor into two logical CPUs, so that a single processor can use thread-level parallel computing, and is compatible with multi-threaded operating systems and software. Hyper-Threading technology makes full use of idle CPU resources to get more work done in the same amount of time.
  • VM Virtual Machine, virtual machine
  • CMOS complementary metal-oxide-semiconductor
  • CMOS complementary metal-oxide-semiconductor
  • the virtual machine can be operated like a physical machine.
  • vCPU A virtual processor in a computer; a CPU in a virtual machine as opposed to a physical CPU.
  • Cloud Computing is a kind of distributed computing, which refers to decomposing a huge data computing processing program into countless small programs through the network "cloud”, and then processing and analyzing it through a system composed of multiple servers These applets get the results and return them to the user.
  • a resource processing system is provided. This specification simultaneously involves two resource processing methods, two resource processing devices, a computing device, a computer-readable storage medium, and a computer program. The following The detailed description will be given in detail one by one in the embodiment.
  • the task scheduler of the CPU needs to continuously answer two questions, one is which CPU the task should run on, and each CPU should run a task at the next moment.
  • each task is independent of each other.
  • scheduling decisions between different tasks may depend on each other. For example, on an x86-64 machine with hyperthreading enabled, vCPUs corresponding to two different VMs cannot run two different hyperthreads on the same CPU at the same time; this is because tasks of different hyperthreads on the same CPU, Share some resources on the CPU pipeline and cache. If this rule is violated, a malicious VM can exploit the vulnerability to attack another VM.
  • the schedulers in the prior art are all based on the setting that the scheduling decisions between tasks are independent of each other; although they can achieve the effect of scheduling, they cannot solve the above problems, such as the scheduler CFS used by the Linux kernel .
  • CFS is a general-purpose scheduler, and its target application is all Linux processes and threads. Since the current mainstream virtualization solution uses QEMU-KVM, and in QEMU-KVM, each vCPU is a Linux task, so it is feasible to use CFS to schedule vCPUs. However, CFS does not distinguish between vCPUs and common tasks, so CFS cannot meet the unique requirements of virtualization environments.
  • the improved version of CFS adds the requirements of the cloud environment. For example, the improved version of CFS can first schedule a vCPU on a certain hyperthread, and then notify the associated vCPU to schedule accordingly through some mechanism.
  • the resource coordination module when the resource coordination module obtains pending transactions by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, it is possible to determine the pending transaction association at this time At least two thread modules, and the physical resources of each thread module are the same; then send a transaction processing request to each thread module, each thread module can determine the thread status information according to the transaction processing request, and feed it back to the resource coordination module; the resource coordination module can determine the transaction processing information of the transaction to be processed by integrating the thread state information of each thread module, and feed back the transaction processing information to each thread module, and finally each thread module can perform transaction processing according to the transaction processing information Processing operations.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, And in the process of processing, a unified decision will be adopted to ensure that the transaction to be processed is either executed by all threads or not executed by all threads, so as to improve the security of transaction processing and improve the efficiency of transaction processing to reduce resource consumption costs.
  • FIG. 1 shows a schematic structural diagram of a resource processing system provided according to an embodiment of this specification.
  • the resource processing system 100 includes a resource coordination module 110 and at least two thread modules 120.
  • the thread modules 120 are thread module 1 and thread module 1 respectively.
  • Module 2 ...Thread module n, where n is a positive integer, and n ⁇ 1.
  • the resource processing system 100 includes:
  • the resource coordination module 100 is configured to obtain the transaction to be processed by detecting the shared data structure; determine at least two thread modules associated with the transaction to be processed, and send a transaction processing request to each thread module;
  • Each thread module 120 is configured to determine thread state information based on the transaction processing request, and feed back the thread state information to the resource coordination module;
  • the resource coordination module 110 is further configured to determine transaction processing information corresponding to the transaction to be processed according to the thread state information of each thread module, and send the transaction processing information to each thread module;
  • Each thread module 120 is further configured to process the transaction to be processed based on the transaction processing information; wherein, the physical resources to which each thread module belongs are the same.
  • the resource coordination module specifically refers to the module responsible for coordinating different hyperthreads in the cloud computing environment, that is, the CPU with hyperthreading enabled; correspondingly, the thread module specifically refers to the module corresponding to the hyperthread enabled by the resource coordination module, which is used to run The vCPU of the virtual machine realizes the processing of the transaction to be processed. That is to say, the resource coordination module is a CPU with hyperthreading enabled; correspondingly, each thread module is a hyperthread running a virtual machine.
  • the shared data structure specifically refers to a queue, an array, or a binary tree for storing transactions to be processed.
  • the transactions to be processed are specifically Refers to the transactions that need to be executed in the cloud computing environment, that is, the transactions that the resource user needs to use cloud computing resources to run, and the corresponding project services are realized by running the transactions.
  • the transaction processing request specifically refers to the request sent by each thread module to process the transaction to be processed. Each thread module will respond to the resource scheduler to schedule vCPUs corresponding to different virtual machines in the same CPU according to the transaction processing request. The vCPU corresponding to the machine runs pending transactions.
  • the physical resources to which each thread module belongs are the same, that is, the hyperthreads executing pending transactions belong to the same CPU, and the hyperthreads scheduled by each hyperthread belong to the same CPU.
  • the thread status information specifically refers to the status information of whether the thread module can process pending transactions at the current moment; correspondingly, the transaction processing information specifically refers to the information determined by the resource coordination module according to the thread status information fed back by each thread module, and is used for Determine whether hyper-threading is required to call resources to process pending transactions at the same time, which needs to maintain consistency, that is, when all the thread status information corresponding to hyper-threading is in the state of executing pending transactions, it is determined that resources need to be scheduled to process pending transactions; Or if the thread status information corresponding to any hyperthread is the unexecutable pending transaction state, it is determined that the pending transaction is not processed at the current moment, that is, when resource scheduling or load balancing is ensured, hyperthreads under the same CPU can be executed simultaneously or Not at the same time.
  • processing pending transactions means executing pending transactions through vCPU resources to realize front-end project operation.
  • the resource coordination module can first determine the pending transaction by detecting the shared data structure, and The detection result determines that the resource scheduler needs to execute the pending transaction, so in order to ensure the completion of the pending transaction and improve resource utilization, at least two hyperthreads corresponding to the pending transaction can be determined first, and the determined hyperthread belongs to The same CPU then sends a transaction processing request corresponding to the pending transaction to each hyperthread, that is, each hyperthread needs to execute the pending transaction at the same time.
  • each hyperthread After each hyperthread receives the transaction processing request corresponding to the transaction to be processed, considering that each hyperthread belongs to the same CPU and corresponds to a different virtual machine, each hyperthread may be running other transactions, in order to ensure the security of transaction execution , each hyperthread can feed back thread state information to the resource coordination module according to the state information at the current moment.
  • the resource coordination module can create transaction processing information according to the state of each hyper-thread to decide whether to run the pending transaction through the hyper-thread scheduled at the current moment; that is, to ensure simultaneous execution or simultaneous Do not execute; then send transaction processing information to each hyperthread, and finally the hyperthread can process the transaction to be processed according to the transaction processing information to complete the operation corresponding to the transaction processing information.
  • This embodiment uses load balancing as an example to illustrate the above resource processing method; for example, VM0 and VM1 are created under the same CPU, where VM0 corresponds to vCPU0, VM1 corresponds to vCPU1, and the hyper-threading mode is enabled for this CPU, so vCPU0 will It runs on hyperthread HT-x, and vCPU1 runs on hyperthread HT-y; based on this, according to the scheduling result of the resource scheduler, it is determined that vCPU0 and vCPU1 need to run pending transactions, and hyperthread HT-x and hyperthread HT-y is in the running state; at this time, it can be determined according to the scheduling result that the hyperthread HT-s needs to be used to run vCPU0.
  • the hyperthreading under the CPU runs the corresponding resources to complete the execution of pending transactions.
  • the scheduler of the hyperthread HT-s initiates to the CPU pending transactions in the form of vCPU0->HT-s, and vCPU1->HT-t, and the CPU determines that the hyperthread HT-s and HT-t will run To process a transaction, send a transaction processing request to each hyperthread. Since HT-s decides to run vCPU0, the CPU can default the thread status information fed back by hyperthread HT-s as OK, and then it will receive hyperthread HT-t feedback at this time. thread state information.
  • both the thread state information of the hyperthread HT-t and the thread state information of the hyperthread HT-s are OK, it means that the transaction to be processed can be executed, and the CPU will feed back to the hyperthread HT-s and HT-t respectively According to transaction execution information, hyper-threads HT-s and HT-t will respectively schedule resources vCPU0 and vCPU1 to process pending transactions according to transaction execution information.
  • the thread state information of hyper-thread HT-t is inconsistent with the thread state information of hyper-thread HT-s, it means that the thread state information of hyper-thread HT-t is Abort, that is, hyper-thread HT-t cannot be executed at the current moment to be processed transaction, the CPU will feed back the transaction interruption information to the hyper-threads HT-s and HT-t respectively, and the hyper-threads HT-s and HT-t will give up executing the pending transaction according to the transaction interruption information, that is, the resources vCPU0 and vCPU1 will not be scheduled , the hyper-threads HT-x and HT-y continue to run the resources vCPU0 and vCPU1 to implement the processing operation of the transaction to be processed.
  • the resource coordination module when the resource coordination module obtains pending transactions by detecting shared data structures, in order to improve transaction processing efficiency and reduce resource consumption costs, at least two thread modules associated with pending transactions can be determined at this time, and each The physical resources to which the thread modules belong are the same; then send transaction processing requests to each thread module separately, and each thread module can determine the thread status information according to the transaction processing requests, and feed it back to the resource coordination module; the resource coordination module can integrate each The thread state information of the thread module determines the transaction processing information of the transaction to be processed, and feeds back the transaction processing information to each thread module, and finally each thread module can treat it according to the transaction processing information Manage transactions for processing operations.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, thereby improving transaction processing security and improving transaction processing efficiency to reduce resource consumption costs.
  • the resource processing system also includes a resource scheduler; the resource scheduler is configured to receive the transaction to be processed; configure resources to be used for the transaction to be processed, and create a resource according to the configuration result Resource scheduling information; writing the pending transaction carrying the resource scheduling information into the shared data structure.
  • the resource scheduler specifically refers to a processor that schedules runnable resources in order to improve resource utilization in a cloud computing environment, and is used to implement resource scheduling and load balancing; correspondingly, the resource to be used specifically refers to the resource scheduler According to the resource operation status fed back by each node, the available resources allocated for the transaction to be processed; correspondingly, the resource scheduling information specifically refers to the information created by the resources to be used after the allocation of the transaction to be processed is completed, and is used to inform the resource coordination module that it needs to use What are the resources for subsequent implementation of pending transaction processing.
  • the resource scheduler when the resource scheduler determines that pending transactions need to be executed, it can first specify the resources to be used for the pending transactions, that is, specify a batch of scheduling or a batch of load balancing decisions, and create resources according to the configuration results of the resources to be used Scheduling information, write pending transactions carrying resource scheduling information into the shared data structure, so that the resource coordination module that implements subsequent docking with the resource scheduler can determine the pending transactions that need to be executed through the shared data structure, and complete subsequent processing operations.
  • resource scheduling information can be created through the resource scheduler first, and written into the shared data structure, so that the subsequent resource coordination module can start pending transactions by detecting the shared data module.
  • the processing mechanism completes the processing of pending transactions.
  • the resource coordination module After writing the pending transaction carrying resource scheduling information into the shared data structure, the resource coordination module will determine the pending transaction by detecting the shared data structure, and in the process, since the pending transaction carries the resource scheduling information Therefore, when the resource coordination module determines the thread, it can be completed in combination with the resource scheduling information.
  • the resource coordination module is further configured to detect the shared data structure and obtain the The pending transaction of scheduling information; determining the at least two thread modules associated with the pending transaction according to the resource scheduling information; A module sends the transaction request.
  • the resource scheduler when the resource scheduler writes the pending transaction carrying resource read information into the shared data structure, it indicates that the decision information of the resource to be used allocated for the pending transaction can be determined by detecting the shared data structure, then this The resource coordination module can detect the shared data structure to obtain pending transactions carrying resource scheduling information, and then the resource coordination module can determine at least two hyperthreads for executing the pending transactions according to the resource scheduling information.
  • the resource coordination module determines that the resource scheduler needs to execute the pending transaction, it indicates that the pending transaction is in the pending state, and can send a transaction processing request corresponding to the pending transaction to each hyperthread, so that each subsequent hyperthread can Feedback transaction processing information based on specific thread state information.
  • a thread module belonging to the same physical resource may be selected as a thread module executing a transaction to be processed; the resource coordination module is further configured to select a transaction thread module associated with the transaction to be processed according to the resource scheduling information, and determine the The physical resource to which the transaction thread module belongs; select at least one associated thread module associated with the transaction thread module in the physical resource; form the pending processing based on the transaction thread module and the at least one associated thread module The at least two thread modules associated with the transaction.
  • the transaction thread module specifically refers to the hyperthread that can process the transaction to be processed among the idle hyperthreads; correspondingly, the physical resource specifically refers to the CPU to which the thread module belongs; correspondingly, the associated thread module specifically refers to the hyperthread associated with the transaction thread
  • the module belongs to other hyperthreads of the same physical resource.
  • the resource coordination module will first determine the transaction thread module that can execute the transaction to be processed according to the resource scheduling information, and then in order to ensure the safety of transaction processing, it can determine the powerless resource to which the transaction thread module belongs, and then select among the physical resources At least one associated thread module associated with the transaction thread module can be combined with the transaction thread module and at least one associated thread module to form at least two thread modules corresponding to the transaction to be processed, which can be used to complete the transaction to be processed through at least two thread modules in the future processing to ensure transaction processing efficiency.
  • the resource scheduler when the resource scheduler determines that load balancing needs to be performed on pending transactions, it can first allocate resources vCPU0 and vCPU1 for pending transactions; The pending transactions can be written into the shared data structure.
  • the CPU detects the shared data structure and determines that it needs to use the resources vCPU0 and vCPU1 to process the transaction to be processed. At this time, it determines the hyper-thread HT-s running the resource vCPU0 according to the resource scheduling information, and then determines that it belongs to the hyper-thread HT-s.
  • hyperthread HT-t of the same CPU forms a target hyperthread for processing pending transactions based on the hyperthreads HT-s and HT-t, and is used for subsequently running resources vCPU0 and vCPU1 respectively to process pending transactions.
  • the resource coordination module determines that the resource scheduler needs to execute the pending transaction, the resource coordination module needs to send a transaction processing request to the thread module executing the pending transaction.
  • the creation of the transaction processing request can be completed in conjunction with the interrupt request associated with the resource preparation information of the transaction to be processed; in this embodiment, the resource coordination module is further configured for each thread module Determine resource preparation information respectively, create an interrupt request carrying the resource preparation information as the transaction processing request, and send it to each thread module.
  • the resource preparation information specifically refers to the preparation information that notifies each thread module that the transaction to be processed needs to be processed, and each thread module can respond to the resource preparation information to feed back information on whether the transaction to be processed can be processed at the current moment; correspondingly, the interrupt request Specifically, it refers to an inter-core interrupt carrying resource preparation information, which is used to interrupt the operation of each thread module.
  • resource preparation information can be created for each thread module, so as to notify each thread module that the transaction to be processed needs to be executed; then create The inter-core interrupt carrying resource preparation information is sent to each thread module as a transaction processing request block, so that each thread module can respond in time to the operation of executing the transaction to be processed based on the inter-core interrupt.
  • each thread module can respond to the transaction processing request in time after receiving the transaction processing request, thereby effectively improving the transaction processing efficiency.
  • each thread module will respond to the interrupt request as soon as possible after receiving the interrupt request carrying the resource preparation information; in this embodiment, each thread module is further configured to receive the interrupt request carrying the resource preparation information.
  • the resource preparation information is the interrupt request, and an interrupt processing function is called according to the interrupt request; the resource preparation information is processed by the interrupt processing function, and the thread state information is determined according to the information processing result.
  • the interrupt processing function specifically refers to a function that can feed back thread state information to the resource coordination module based on resource preparation information.
  • the thread state information fed back by it is used to represent the execution state of the thread module at the current moment.
  • the thread state information is OK and Abort respectively. , where the thread status information OK indicates that the thread module agrees to execute the pending transaction; the thread status information Abort indicates that the thread module refuses to execute the pending transaction due to some reasons.
  • the thread module when the thread module receives an inter-core interrupt carrying resource preparation information, no matter what state the thread module is processing at this time, it will call the interrupt processing function according to the inter-core interrupt, and then perform resource preparation information through the interrupt processing function. Processing, determining the thread state information corresponding to the thread module at the current moment, and feeding back the thread state information to the resource coordination module, so that the resource coordination module can perform corresponding operations according to the thread state information fed back by each thread module.
  • the CPU determines the hyper-threads HT-s and HT-t associated with the transaction to be processed, it can create a Prepare for each hyper-thread at this time, and then integrate it into the inter-core interrupt and send it to the hyper-thread HT-s and HT-t HT-t; hyper-threads HT-s and HT-t receive the inter-core interrupt carrying Prepare, will call the interrupt processing function, and then determine the thread status information as OK or Abort according to the interrupt processing function, and feed it back to the CPU. for subsequent transaction processing operations.
  • each thread module can quickly respond to inter-core interrupts to make feedback, so as to ensure that the thread status information corresponding to each thread module is executable. Under such circumstances, the processing operation of the transaction to be processed can be completed quickly.
  • each thread module communicates with the resource coordination module, in order to be able to cope with complex communication scenarios, the information communication can be completed through the information sharing unit; in this embodiment, each thread module is also configured to The thread state information is written into the information sharing unit;
  • the resource coordination module is further configured to determine the thread state information corresponding to each thread module by polling the information sharing unit; and write the transaction information into the information sharing unit;
  • each thread module is further configured to determine the transaction processing information by polling the information sharing unit, and process the transaction to be processed based on the transaction processing information.
  • the information sharing unit specifically refers to the shared variables used when communicating between the thread module and the resource coordination module, including but not limited to network, memory, local area network, etc.; that is, it is used to support each thread module to quickly connect to resource coordination
  • the variables in the information sharing unit will change, and the resource coordination module or thread module polling the information sharing unit can determine the information they need according to the change of the variables.
  • each hyper-thread determines its corresponding thread state information according to the transaction processing request, it can write the thread state information into the information sharing unit; then the resource coordination module will continuously poll the information sharing unit, when the information sharing unit After the writing of the thread state information is completed by each hyperthread, the resource coordination module will determine the thread state information corresponding to each hyperthread according to the polling result, and then determine the transaction processing information according to the thread state information fed back by each hyperthread. to decide whether to process the transaction to be processed; afterward, since the operation of processing the transaction is completed by each hyper-thread, it is also necessary to write the transaction processing information into the information sharing unit. Finally, each hyperthread can determine the transaction processing information by polling the information sharing unit, and process the transaction to be processed according to the transaction processing information.
  • each thread module and resource coordination module can quickly determine the mutual feedback information to improve transaction processing efficiency, and at the same time Reduce information transmission time.
  • each thread module executes the transaction to be processed, it will complete the transaction processing information fed back by the resource coordination module.
  • each thread module needs to be The available state can only be realized; in this embodiment, the resource coordination module is further configured to determine that the at least two thread modules are in the available state according to the thread state information corresponding to each thread module, according to the The useable state creates transaction execution information as the transaction processing information, and writes the transaction processing information into the information sharing unit;
  • each thread module is further configured to determine the transaction execution information by polling the information sharing unit, determine the target resource according to the transaction execution information, and write the target resource into the resource scheduling queue; When the target resource satisfies the transaction processing condition of the resource scheduling queue, the pending transaction is processed by the target resource.
  • the available status specifically refers to the thread module that can process the transaction to be processed; correspondingly, the transaction execution information specifically refers to that all thread modules agree to process the pending transaction; correspondingly, the target resource specifically refers to the resource that the thread module needs to run Resources are used to process pending transactions; correspondingly, the resource scheduling queue specifically refers to the queue corresponding to the thread module, which is used for standardized queuing of target resources to be run.
  • the transaction processing condition specifically refers to the operating condition of the target resource.
  • the resource coordination module determines that each thread module is in an available state according to the thread status information fed back by each thread module, it means that each thread module in at least two thread modules agrees to process the transaction to be processed.
  • transaction execution information can be created as transaction processing information, and written into the information sharing unit; each thread module polls the information sharing unit to determine that the thread modules associated with the pending transaction agree to process the pending transaction, then Each thread module can determine the target resource to run according to the transaction execution information, and write the target resource into the resource scheduling queue; and when the target resource meets the transaction processing conditions of the resource scheduling queue, Indicates that the thread module can run the target resource, then the transaction to be processed can be processed through the target resource at this time.
  • Hyper-thread HT-s and HT-t determine that the transaction execution information is Commit by polling shared variables, then at this time, hyper-thread HT-s will write resource vCPU0 into its corresponding resource scheduling queue, and hyper-thread HT-t will The resource vCPU1 is written into its corresponding resource scheduling queue; it is used to process the transaction to be processed through the resources vCPU0 and vCPU1 when the transaction processing condition is satisfied subsequently.
  • the resource coordination module is also configured to determine that at least one thread module is in an unused state according to the thread state information corresponding to each thread module In this case, creating transaction interruption information according to the non-use state as the transaction processing information, and writing the transaction processing information into the information sharing unit;
  • each thread module is further configured to determine the transaction interruption information by polling the information sharing unit, determine at least two target thread modules according to the transaction interruption information, and send the at least two target thread modules The module sends the pending transaction.
  • the non-use state specifically means that the thread module cannot process the pending transaction at the current moment; correspondingly, the transaction interruption information specifically refers to the information that the resource coordinator cancels processing the pending transaction.
  • the resource coordination module determines that there is at least one thread module fed back by the thread status information that indicates that the thread module is in a non-use state according to the thread status information fed back by each thread module, indicating that there is at least one thread module that cannot be treated at the current moment. If the transaction is processed, the resource coordination module can create transaction interruption information according to the non-use state as transaction processing information, and write it to the information sharing unit; when each thread module determines that there are other thread modules by polling the information sharing unit If the transaction to be processed cannot be processed, at least two target thread modules may be determined according to the transaction interruption information, and then the target thread module processes the transaction to be processed.
  • the thread state information of hyperthread HT-t is inconsistent with that of hyperthread HT-s, it means that the thread state information of hyperthread HT-t is Abort, that is, the current moment of hyperthread HT-t
  • the CPU will write the transaction interruption information Fail to the shared variable; the hyperthread HT-s and HT-t determine the transaction interruption information Fail by polling the shared variable, and then determine the hyperthread HT-s and HT- t will give up execution of the pending transaction according to the transaction interruption information Fail, that is, the resources vCPU0 and vCPU1 will not be scheduled, and the hyperthreads HT-x and HT-y can continue to run the resources vCPU0 and vCPU1 to realize the processing operation of the pending transaction.
  • the resource coordination module when the resource coordination module obtains transactions to be processed by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, at this time, at least two associated transactions to be processed can be determined Thread modules, and the physical resources of each thread module are the same; then send transaction processing requests to each thread module, each thread module can determine the thread status information according to the transaction processing request, and feed it back to the resource coordination module; resource coordination The module can determine the transaction processing information of the transaction to be processed by integrating the thread status information of each thread module, and feed back the transaction processing information to each thread module, and finally each thread module can process the transaction to be processed according to the transaction processing information.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, so as to improve transaction processing security and improve transaction processing efficiency to reduce resource consumption costs.
  • Fig. 2 shows a flow chart of a resource processing method provided according to an embodiment of this specification, which is applied to a resource coordination module, and specifically includes the following steps.
  • Step S202 obtain the transaction to be processed by detecting the shared data structure.
  • Step S204 determining at least two thread modules associated with the transaction to be processed, and sending a transaction processing request to each thread module.
  • Step S206 receiving thread state information fed back by each thread module for the transaction processing request.
  • Step S208 determine transaction processing information corresponding to the transaction to be processed based on the thread state information, and send the transaction processing information to each thread module.
  • the pending transaction carrying resource scheduling information is obtained; according to the resource scheduling information, at least two thread modules associated with the pending transaction are determined; after determining that the pending transaction is a pending transaction In the case of execution status, a transaction processing request is sent to each thread module.
  • the resource preparation information is determined for each thread module, an interrupt request carrying the resource preparation information is created as a transaction processing request, and sent to each thread module.
  • each thread module writes the thread state information into the information sharing unit
  • the resource coordination module determines the thread state information corresponding to each thread module by polling the information sharing unit; determines the transaction processing information corresponding to the transaction to be processed according to the thread state information corresponding to each thread module, and writes the transaction processing information to into the information sharing unit;
  • each thread module determines the transaction processing information by polling the information sharing unit, and processes the transaction to be processed based on the transaction processing information.
  • the transaction execution information is created according to the available status as the transaction processing information, and the The transaction processing information is written into the information sharing unit;
  • each thread module determines the transaction execution information by polling the information sharing unit, determines the target resource according to the transaction execution information, and writes the target resource into the resource scheduling queue; when the target resource meets the transaction processing conditions of the resource scheduling queue , process the pending transaction through the target resource.
  • the resource coordination module determines that at least one thread module is in a non-use state according to the thread state information corresponding to each thread module, the transaction interruption information is created as the transaction processing information according to the non-use state, and the transaction Write the processing information into the information sharing unit;
  • each thread module determines transaction interruption information by polling the information sharing unit, determines at least two target thread modules according to the transaction interruption information, and sends pending transactions to at least two target thread modules.
  • the resource coordination module when it obtains pending transactions by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, it can determine the pending transactions according to the resource scheduling information carried in the pending transactions. Process at least two thread modules associated with the transaction, and each thread module belongs to the same physical resource; Afterwards, when it is determined that the transaction to be processed is a state to be executed, a transaction processing request is then sent to each thread module, and each thread module can determine the thread state information according to the transaction processing request, and feed it back to the resource coordination module ; The resource coordination module can determine the transaction processing information of the transaction to be processed by integrating the thread state information of each thread module, and feed back the transaction processing information to each thread module, and finally each thread module can process the transaction to be processed according to the transaction processing information operate.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, so as to improve transaction processing security and improve transaction processing efficiency to reduce resource consumption costs.
  • Fig. 3 shows a flow chart of another resource processing method provided according to an embodiment of the present specification, which is applied to a thread module, and specifically includes the following steps.
  • Step S302 receiving the transaction processing request sent by the resource coordination module for the transaction to be processed.
  • Step S304 determining thread state information according to the transaction processing request, and feeding back the thread state information to the resource coordination module.
  • Step S306 receiving transaction processing information fed back by the resource coordination module for the thread state information.
  • Step S308 process the transaction to be processed based on the transaction processing information.
  • an interrupt request carrying resource preparation information is received, and an interrupt processing function is called according to the interrupt request; the resource preparation information is processed through the interrupt processing function, and thread state information is determined according to the information processing result.
  • each thread module writes the thread state information into the information sharing unit
  • the resource coordination module determines the thread state information corresponding to each thread module by polling the information sharing unit; determines the transaction processing information corresponding to the transaction to be processed according to the thread state information corresponding to each thread module, and writes the transaction processing information to into the information sharing unit;
  • each thread module determines the transaction processing information by polling the information sharing unit, and processes the transaction to be processed based on the transaction processing information.
  • the transaction execution information is created according to the available status as the transaction processing information, and the The transaction processing information is written into the information sharing unit;
  • each thread module determines the transaction execution information by polling the information sharing unit, determines the target resource according to the transaction execution information, and writes the target resource into the resource scheduling queue; when the target resource meets the transaction processing conditions of the resource scheduling queue , process the pending transaction through the target resource.
  • the resource coordination module determines that at least one thread module is in a non-use state according to the thread state information corresponding to each thread module, the transaction interruption information is created as the transaction processing information according to the non-use state, and the transaction Write the processing information into the information sharing unit;
  • each thread module determines the transaction interruption information by polling the information sharing unit, and according to the transaction interruption information Determine at least two target thread modules, and send pending transactions to the at least two target thread modules.
  • the resource coordination module when it obtains pending transactions by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, it can determine the pending transactions according to the resource scheduling information carried in the pending transactions. Process at least two thread modules associated with the transaction, and the physical resources to which each thread module belongs are the same; then when it is determined that the transaction to be processed is to be executed, then send a transaction processing request to each thread module, each The thread module can determine the thread state information according to the transaction processing request, and feed it back to the resource coordination module; the resource coordination module can determine the transaction processing information of the transaction to be processed by integrating the thread state information of each thread module, and feed back the transaction processing information to Each thread module, and finally each thread module can process the transaction to be processed according to the transaction processing information.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, so as to improve transaction processing security and improve transaction processing efficiency to reduce resource consumption costs.
  • FIG. 4 shows a schematic structural diagram of a resource processing device provided by an embodiment of this specification. As shown in Figure 4, the device is applied to the resource coordination module, including:
  • a detection transaction unit 402 configured to obtain pending transactions by detecting a shared data structure
  • Determine thread unit 404 configured to determine at least two thread modules associated with the transaction to be processed, and send a transaction processing request to each thread module;
  • the information receiving unit 406 is configured to receive thread state information fed back by each thread module for the transaction processing request;
  • the sending information unit 408 is configured to determine transaction processing information corresponding to the transaction to be processed based on the thread state information, and send the transaction processing information to each thread module.
  • the device further includes: obtaining a pending transaction carrying resource scheduling information by detecting the shared data structure; determining at least two thread modules associated with the pending transaction according to the resource scheduling information; determining When the transaction to be processed is in the pending state, a transaction processing request is sent to each thread module.
  • the device further includes: separately determining resource preparation information for each thread module, creating an interrupt request carrying the resource preparation information as a transaction processing request, and sending it to each thread module.
  • the device further includes: each thread module writes the thread state information into the information sharing unit;
  • the resource coordination module determines the thread state information corresponding to each thread module by polling the information sharing unit; determines the transaction processing information corresponding to the transaction to be processed according to the thread state information corresponding to each thread module, and writes the transaction processing information to into the information sharing unit;
  • each thread module determines the transaction processing information by polling the information sharing unit, and processes the transaction to be processed based on the transaction processing information.
  • the device further includes: when the resource coordination module determines that at least two thread modules are available according to the thread status information corresponding to each thread module, create transaction execution information according to the available status as a transaction processing information and writing transaction processing information to an information sharing unit;
  • each thread module determines the transaction execution information by polling the information sharing unit, determines the target resource according to the transaction execution information, and writes the target resource into the resource scheduling queue; when the target resource meets the transaction processing conditions of the resource scheduling queue , process the pending transaction through the target resource.
  • the device further includes: when the resource coordination module determines that at least one thread module is in a non-use state according to the thread state information corresponding to each thread module, create transaction interruption information according to the non-use state as transaction processing information, and write the transaction information into the information sharing unit;
  • each thread module determines transaction interruption information by polling the information sharing unit, determines at least two target thread modules according to the transaction interruption information, and sends pending transactions to at least two target thread modules.
  • the device further includes: selecting the transaction thread module associated with the transaction to be processed according to the resource scheduling information, and determining the physical resource to which the transaction thread module belongs; selecting at least one association associated with the transaction thread module in the physical resource A thread module; based on the transaction thread module and at least one associated thread module, at least two thread modules associated with the transaction to be processed are formed.
  • the resource coordination module when it obtains pending transactions by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, it can determine the pending transactions according to the resource scheduling information carried in the pending transactions. Process at least two thread modules associated with the transaction, and the physical resources to which each thread module belongs are the same; then when it is determined that the transaction to be processed is to be executed, then send a transaction processing request to each thread module, each The thread module can determine the thread state information according to the transaction processing request, and feed it back to the resource coordination module; the resource coordination module can determine the transaction processing information of the transaction to be processed by integrating the thread state information of each thread module, and feed back the transaction processing information to Each thread module, and finally each thread module can process the transaction to be processed according to the transaction processing information.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, so as to improve transaction processing security and improve transaction processing efficiency to reduce resource consumption costs.
  • FIG. 5 shows a schematic structural diagram of another resource processing device provided by an embodiment of this specification. As shown in Figure 5, the device is applied to the thread module, including:
  • the receiving request unit 502 is configured to receive a transaction processing request sent by the resource coordination module for the transaction to be processed;
  • the determining information unit 504 is configured to determine thread state information according to the transaction processing request, and feed back the thread state information to the resource coordination module;
  • An information receiving unit 506 configured to receive transaction processing information fed back by the resource coordination module for the thread state information
  • the transaction processing unit 508 is configured to process the transaction to be processed based on the transaction processing information.
  • the device further includes: receiving an interrupt request carrying resource preparation information, and calling an interrupt processing function according to the interrupt request; processing the resource preparation information through the interrupt processing function, and determining the thread state according to the information processing result information.
  • the device further includes: each thread module writes the thread state information into the information sharing unit;
  • the resource coordination module determines the thread state information corresponding to each thread module by polling the information sharing unit; determines the transaction processing information corresponding to the transaction to be processed according to the thread state information corresponding to each thread module, and writes the transaction processing information to into the information sharing unit;
  • each thread module determines the transaction processing information by polling the information sharing unit, and processes the transaction to be processed based on the transaction processing information.
  • the device further includes: when the resource coordination module determines that at least two thread modules are available according to the thread status information corresponding to each thread module, create transaction execution information according to the available status as a transaction processing information and writing transaction processing information to an information sharing unit;
  • each thread module determines the transaction execution information by polling the information sharing unit, determines the target resource according to the transaction execution information, and writes the target resource into the resource scheduling queue; when the target resource meets the transaction processing conditions of the resource scheduling queue , process the pending transaction through the target resource.
  • the device further includes: when the resource coordination module determines that at least one thread module is in a non-use state according to the thread state information corresponding to each thread module, create transaction interruption information according to the non-use state as transaction processing information, and write the transaction information into the information sharing unit;
  • each thread module determines transaction interruption information by polling the information sharing unit, determines at least two target thread modules according to the transaction interruption information, and sends pending transactions to at least two target thread modules.
  • the resource coordination module when it obtains pending transactions by detecting the shared data structure, in order to improve transaction processing efficiency and reduce resource consumption costs, it can determine the pending transactions according to the resource scheduling information carried in the pending transactions. Process at least two thread modules associated with the transaction, and the physical resources to which each thread module belongs are the same; then when it is determined that the transaction to be processed is to be executed, then send a transaction processing request to each thread module, each The thread module can determine the thread state information according to the transaction processing request, and feed it back to the resource coordination module; the resource coordination module can determine the transaction processing information of the transaction to be processed by integrating the thread state information of each thread module, and feed back the transaction processing information to Each thread module, and finally each thread module can process the transaction to be processed according to the transaction processing information.
  • the resource coordination module can count the thread status of each thread module to decide whether to process the transaction to be processed, and in the process of processing, it will be completed by a unified decision to ensure that the transaction to be processed is either executed by all threads , or all threads are not executed, so as to improve transaction processing security and improve transaction processing efficiency to reduce resource consumption costs.
  • FIG. 6 shows a structural block diagram of a computing device 600 provided according to an embodiment of this specification.
  • Components of the computing device 600 include, but are not limited to, memory 610 and processor 620 .
  • Processor 620 and memory 610 via bus 630 is connected, and the database 650 is used to save data.
  • Computing device 600 also includes an access device 640 that enables computing device 600 to communicate via one or more networks 660 .
  • networks include the Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or a combination of communication networks such as the Internet.
  • Access device 640 may include one or more of any type of network interface (e.g., a network interface card (NIC)), wired or wireless, such as an IEEE 802.11 wireless local area network (WLAN) wireless interface, Worldwide Interoperability for Microwave Access ( Wi-MAX) interface, Ethernet interface, Universal Serial Bus (USB) interface, cellular network interface, Bluetooth interface, Near Field Communication (NFC) interface, etc.
  • NIC network interface card
  • the above-mentioned components of the computing device 600 and other components not shown in FIG. 6 may also be connected to each other, for example, through a bus. It should be understood that the structural block diagram of the computing device shown in FIG. 6 is only for the purpose of illustration, rather than limiting the scope of this description. Those skilled in the art can add or replace other components as needed.
  • Computing device 600 may be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile telephones (e.g., smartphones), ), wearable computing devices (eg, smart watches, smart glasses, etc.), or other types of mobile devices, or stationary computing devices such as desktop computers or PCs.
  • mobile computers or mobile computing devices e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.
  • mobile telephones e.g., smartphones
  • wearable computing devices eg, smart watches, smart glasses, etc.
  • desktop computers or PCs e.g., desktop computers or PCs.
  • Computing device 600 may also be a mobile or stationary server.
  • the processor 620 is configured to execute the following computer-executable instructions.
  • the steps of the resource processing method above are implemented.
  • An embodiment of the present specification further provides a computer-readable storage medium, which stores computer-executable instructions, and when the computer-executable instructions are executed by a processor, the steps of the resource processing method above are implemented.
  • An embodiment of the present specification also provides a computer program, wherein, when the computer program is executed in a computer, the computer is caused to execute the steps of the resource processing method above.
  • the computer instructions include computer program code, which may be in the form of source code, object code form, an executable file or some intermediate form, etc.
  • the computer-readable medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer memory, and a read-only memory (ROM, Read-Only Memory) , Random Access Memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal, and software distribution medium, etc.
  • ROM Read-Only Memory
  • RAM Random Access Memory
  • electrical carrier signal telecommunication signal
  • software distribution medium etc.
  • the content contained in the computer-readable medium may be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.
  • computer-readable media Excludes electrical carrier signals and telecommunication signals.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Les modes de réalisation de la présente invention concernent un système et un procédé de traitement de ressources. Le système de traitement de ressources comprend : un module de coordination de ressources, qui est configuré pour obtenir, au moyen de la détection d'une structure de données partagée, une transaction à traiter, déterminer au moins deux modules de tâche élémentaire associés à ladite transaction, et envoyer une demande de traitement de transaction à chaque module de tâche élémentaire ; et chaque module de tâche élémentaire, qui est configuré pour déterminer des informations d'état de tâche élémentaire sur la base de la demande de traitement de transaction, et renvoyer les informations d'état de tâche élémentaire au module de coordination de ressources, le module de coordination de ressources étant en outre configuré pour déterminer, en fonction des informations d'état de tâche élémentaire de chaque module de tâche élémentaire, des informations de traitement de transaction correspondant à ladite transaction, et envoyer les informations de traitement de transaction à chaque module de tâche élémentaire. Chaque module de tâche élémentaire est en outre configuré pour traiter ladite transaction sur la base des informations de traitement de transaction, et des ressources physiques auxquelles appartiennent les modules de tâche élémentaire sont identiques.
PCT/CN2023/075638 2022-03-03 2023-02-13 Système et procédé de traitement de ressources WO2023165318A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210211124.9A CN114610485A (zh) 2022-03-03 2022-03-03 资源处理系统以及方法
CN202210211124.9 2022-03-03

Publications (1)

Publication Number Publication Date
WO2023165318A1 true WO2023165318A1 (fr) 2023-09-07

Family

ID=81861514

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/075638 WO2023165318A1 (fr) 2022-03-03 2023-02-13 Système et procédé de traitement de ressources

Country Status (2)

Country Link
CN (1) CN114610485A (fr)
WO (1) WO2023165318A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114610485A (zh) * 2022-03-03 2022-06-10 阿里巴巴(中国)有限公司 资源处理系统以及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050097555A1 (en) * 2003-10-30 2005-05-05 International Business Machines Corporation Method, system and program product for processing a transaction
CN101308462A (zh) * 2007-05-14 2008-11-19 国际商业机器公司 管理对共享存储器单元的存储器访问的方法和计算系统
CN103455308A (zh) * 2012-05-31 2013-12-18 辉达公司 多线程事务性存储器一致性
US20210157700A1 (en) * 2019-11-21 2021-05-27 Apple Inc. Adaptive memory performance control by thread group
CN112988883A (zh) * 2019-12-16 2021-06-18 中兴通讯股份有限公司 数据库的数据同步方法、装置以及存储介质
CN114610485A (zh) * 2022-03-03 2022-06-10 阿里巴巴(中国)有限公司 资源处理系统以及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050097555A1 (en) * 2003-10-30 2005-05-05 International Business Machines Corporation Method, system and program product for processing a transaction
CN101308462A (zh) * 2007-05-14 2008-11-19 国际商业机器公司 管理对共享存储器单元的存储器访问的方法和计算系统
CN103455308A (zh) * 2012-05-31 2013-12-18 辉达公司 多线程事务性存储器一致性
US20210157700A1 (en) * 2019-11-21 2021-05-27 Apple Inc. Adaptive memory performance control by thread group
CN112988883A (zh) * 2019-12-16 2021-06-18 中兴通讯股份有限公司 数据库的数据同步方法、装置以及存储介质
CN114610485A (zh) * 2022-03-03 2022-06-10 阿里巴巴(中国)有限公司 资源处理系统以及方法

Also Published As

Publication number Publication date
CN114610485A (zh) 2022-06-10

Similar Documents

Publication Publication Date Title
US8424007B1 (en) Prioritizing tasks from virtual machines
US10768960B2 (en) Method for affinity binding of interrupt of virtual network interface card, and computer device
Calheiros et al. CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms
US8739171B2 (en) High-throughput-computing in a hybrid computing environment
TWI559153B (zh) 分散式計算架構
US20110219373A1 (en) Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform
US11645123B1 (en) Dynamic distribution of a workload processing pipeline on a computing infrastructure
Tout et al. Selective mobile cloud offloading to augment multi-persona performance and viability
US20240160474A1 (en) Multi-core processor task scheduling method, and device and storage medium
WO2023165318A1 (fr) Système et procédé de traitement de ressources
US9286125B2 (en) Processing engine implementing job arbitration with ordering status
US20170097854A1 (en) Task placement for related tasks in a cluster based multi-core system
WO2023174037A1 (fr) Procédé, appareil et système de planification de ressources, dispositif, support et produit-programme
US10037225B2 (en) Method and system for scheduling computing
CN112306669A (zh) 一种基于多核系统的任务处理方法及装置
Maruf et al. Extending resources for avoiding overloads of mixed‐criticality tasks in cyber‐physical systems
CN114579285A (zh) 一种任务运行系统、方法及计算设备
Guleria et al. EMF: Disaggregated GPUs in datacenters for efficiency, modularity and flexibility
Kumari et al. ACPM: adaptive container provisioning model to mitigate serverless cold-start
CN111274044A (zh) Gpu虚拟化资源限制处理方法及装置
Harichane et al. KubeSC‐RTP: Smart scheduler for Kubernetes platform on CPU‐GPU heterogeneous systems
CN109840151B (zh) 一种用于多核处理器的负载均衡方法和装置
Pan et al. Sustainable serverless computing with cold-start optimization and automatic workflow resource scheduling
CN113608845A (zh) 数据处理方法及装置
CN112965788A (zh) 一种混合虚拟化方式的任务执行方法、系统及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23762719

Country of ref document: EP

Kind code of ref document: A1