CN110083449A - The method, apparatus and computing module of dynamic assigning memory and processor - Google Patents

The method, apparatus and computing module of dynamic assigning memory and processor Download PDF

Info

Publication number
CN110083449A
CN110083449A CN201910276015.3A CN201910276015A CN110083449A CN 110083449 A CN110083449 A CN 110083449A CN 201910276015 A CN201910276015 A CN 201910276015A CN 110083449 A CN110083449 A CN 110083449A
Authority
CN
China
Prior art keywords
memory
processor
communication connection
connection relationship
computing module
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201910276015.3A
Other languages
Chinese (zh)
Other versions
CN110083449B (en
Inventor
李哲
付江涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201910276015.3A priority Critical patent/CN110083449B/en
Publication of CN110083449A publication Critical patent/CN110083449A/en
Application granted granted Critical
Publication of CN110083449B publication Critical patent/CN110083449B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5017Task decomposition

Abstract

The application provides the method, apparatus and computing module of a kind of dynamic assigning memory and processor.The method of the dynamic assigning memory and processor obtains the first calculating task first.And first calculating task is divided to form multiple subtasks.It include multiple efficient parallel calculating subtasks and multiple non-effective parallel computation subtasks in the multiple subtask.Secondly, according to the multiple efficient parallel calculating subtask, and according to the multiple non-effective parallel computation subtask, the relationship of memory and processor is established, to form multiple first calculate nodes and multiple second calculate nodes.The method of the dynamic assigning memory and processor realizes dynamic assigning memory and processor.When carrying out parallel computation, the method for the dynamic assigning memory and processor can make full use of computing resource, improve calculating speed according to different the first calculate nodes of calculating task dynamic configuration and the second calculate node.

Description

The method, apparatus and computing module of dynamic assigning memory and processor
Technical field
This application involves field of computer technology, more particularly to a kind of method of dynamic assigning memory and processor, dress It sets and computing module.
Background technique
As data magnanimity increases severely, single computer cannot store mass data.Therefore high-performance computer is made For one kind of parallel computer, have received widespread attention.The node for being used to be calculated in high-performance computer is known as calculating section Point.Calculate node can be divided into the first calculate node and the second calculate node by computing capability.First calculate node can be used for Calculate the high calculating task of parallel efficiency.Second calculate node can be used for calculate cannot effectively distributed parallel calculating appoint Business.
The first calculate node and the second calculate node of traditional high-performance computer have been fixed in structure.But it is different The parallelization degree of calculating task is different, and required calculate node is not also identical.Traditional high-performance computer is being calculated When, computing resource cannot be made full use of.
Summary of the invention
Based on this, it is necessary to for traditional high-performance computer when being calculated, computing resource cannot be made full use of The problem of, the method, apparatus and computing module of a kind of dynamic assigning memory and processor are provided.
A kind of method of method of dynamic assigning memory and processor, the dynamic assigning memory and processor is applied to dynamic The device of the device of state storage allocation and processor, the dynamic assigning memory and processor include control module and with the control The computing module of module bus connection processed;The computing module include at least one processor and with memory described at least one Multiple processors of bus connection;
The described method includes:
S10 obtains the first calculating task by the control module, and is divided first calculating task with shape Subtask and multiple non-effective parallel computations at multiple subtasks, in the multiple subtask including multiple efficient parallel calculating Subtask;
S20 obtains the mission bit stream of the multiple subtask by the control module;
S30 is established in the computing module by the control module and is deposited described at least one according to the mission bit stream Communication connection relationship between reservoir and the processor;
S40 is completed according to the communication connection relationship to the memory and the processor in the computing module It dynamically distributes, to form multiple first calculate nodes and multiple second calculate nodes.
The computing module includes a memory and connect with the memory bus in one of the embodiments, Multiple processors;
The S30 establishes at least one institute in the computing module by the control module according to the mission bit stream The step of stating the communication connection relationship between memory and the processor include:
The control module establishes the first communication connection relationship, and the first communication connection relationship is multiple processors Between communication connection relationship;
The S40, according to the communication connection relationship, complete in the computing module the memory and the place It manages device to dynamically distribute, includes: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module obtains the first communication connection relationship, and will be described according to the first communication connection relationship Multiple processors are divided into multiple first processing units and multiple the second processing unit, each described first processing units is for locating Manage the efficient parallel calculating subtask, each described the second processing unit for handle one it is described it is non-effective simultaneously The subtask that row calculates.
The memory includes multiple storage units in one of the embodiments,;
The S30 establishes at least one institute in the computing module by the control module according to the mission bit stream The step of stating the communication connection relationship between memory and the processor further include:
The control module establishes the second communication connection relationship, and the second communication connection relationship is that the multiple storage is single First communication connection relationship between the first processing units and described the second processing unit respectively;
The S40, according to the communication connection relationship, complete in the computing module the memory and the place It manages device to dynamically distribute, includes: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module obtains the second communication connection relationship, and will be each according to the second communication connection relationship It is communicated to connect between a first processing units and a storage unit, it is each to form multiple first calculate nodes A first calculate node is used to calculate the subtask of the efficient parallel calculating;
The computing module also according to it is described second communication connection relationship by each described the second processing unit with it is described It is communicated to connect between a storage unit in multiple storage units in remaining multiple storage units, to form multiple described Two calculate nodes, each described second calculate node are used to calculate the subtask of a non-effective parallel computation.
The S20 in one of the embodiments, is believed by the task that the control module obtains the multiple subtask After the step of breath further include:
The control module determines each of the multiple subtask according to the mission bit stream of the multiple subtask The size of memory needed for subtask;
The size of memory needed for the computing module obtains each described described subtask, and according to each described institute The memory is divided into multiple storage units by the size for stating memory needed for subtask.
The computing module includes multiple computing units in one of the embodiments, each described computing unit packet Include a processor and a memory connecting with the processor communication;
The S30 establishes at least one institute in the computing module by the control module according to the mission bit stream The step of stating the communication connection relationship between memory and the processor include:
The control module establishes the first communication connection relationship, and the first communication connection relationship is each described calculating The communication connection relationship between memory and processor in unit;
The S40, according to the communication connection relationship, complete in the computing module the memory and the place It manages device to dynamically distribute, includes: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module obtains the first communication connection relationship, and will be multiple according to the first communication connection relationship The communication connection between memory and processor in the computing unit, and ensure the institute at least one described computing unit Processor is stated not work.
The S30 in one of the embodiments, according to the mission bit stream, by described in control module foundation The step of communication connection relationship in computing module between at least one described memory and the processor further include:
The control module establishes the second communication connection relationship, and the second communication connection relationship is that the multiple storage is single Communication connection relationship between member;
The S40, according to the communication connection relationship, complete in the computing module the memory and the place It manages device to dynamically distribute, includes: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module obtains the second communication connection relationship, and will be multiple according to the second communication connection relationship The storage unit communication connection, to form multiple first calculate nodes and multiple second calculate nodes.
The S40 in one of the embodiments, is completed according to the communication connection relationship in the computing module The memory and the processor dynamically distribute, to form the step of multiple first calculate nodes and multiple second calculate nodes Include: after rapid
An efficient parallel calculating is calculated by the first calculate node of each of the multiple first calculate node Subtask, and a non-effective parallel computation is calculated by the second calculate node of each of the multiple second calculate node Subtask;
After the completion of first calculating task, the communication connection relationship in the computing module is released.
A kind of computing module, for obtaining communication connection relationship, the computing module includes: the computing module
One memory;
Multiple processors, each described processor are connect with the memory bus;
Wherein, the memory includes multiple storage units, and the computing module is completed according to the communication connection relationship To in the computing module the memory and the processor dynamically distribute, to form multiple first calculate nodes and multiple Second calculate node.
The communication connection relationship includes the first communication connection relationship and the second communication connection in one of the embodiments, Relationship, communication connection relationship of the first communication connection relationship between multiple processors, second communication connection Relationship is the communication connection between the first processing units and described the second processing unit respectively of the multiple storage unit Relationship.
A kind of computing module, for obtaining communication connection relationship, the computing module includes: the computing module
Multiple computing units communicate to connect between the multiple computing unit;
Each described computing unit includes a processor and a memory connecting with the processor communication;
Wherein, the computing module is completed according to the communication connection relationship to the storage in the computing module Device and the processor dynamically distribute, to form multiple first calculate nodes and multiple second calculate nodes.
The communication connection relationship includes the first communication connection relationship and the second communication connection in one of the embodiments, Relationship, the first communication connection relationship are the communication connection between memory and processor in each described computing unit Relationship, communication connection relationship of the second communication connection relationship between the multiple storage unit.
A kind of device of dynamic assigning memory and processor, comprising:
Computing module described in any one of above-described embodiment;And
Control module is connect with the computing module bus.
The application provides the method, apparatus and computing module of a kind of dynamic assigning memory and processor.The dynamic allocation The method of memory and processor obtains the first calculating task first.And first calculating task is divided multiple to be formed Subtask.It include multiple efficient parallel calculating subtasks and multiple non-effective parallel computation subtasks in the multiple subtask. Secondly, according to the multiple efficient parallel calculating subtask, and according to the multiple non-effective parallel computation subtask, foundation is deposited The relationship of reservoir and processor, to form multiple first calculate nodes and multiple second calculate nodes.The dynamic assigning memory Dynamic assigning memory and processor are realized with the method for processor.When carrying out parallel computation, the dynamic assigning memory and The method of processor can make full use of according to different the first calculate nodes of calculating task dynamic configuration and the second calculate node Computing resource improves calculating speed.
Detailed description of the invention
Fig. 1 is the method flow diagram of dynamic assigning memory and processor that the application one embodiment provides;
Fig. 2 is a kind of computing module structure chart that the application one embodiment provides;
Fig. 3 is a kind of computing module structure chart that the application one embodiment provides;
Fig. 4 is the device figure of a kind of dynamic assigning memory and processor that the application one embodiment provides.
Main element drawing reference numeral explanation
The device 100 of dynamic assigning memory and processor
Control module 10
Computing module 20
Memory 21
Storage unit 211
Processor 22
First processing units 221
The second processing unit 222
Computing unit 23
Specific embodiment
In order to make the above objects, features, and advantages of the present application more apparent, with reference to the accompanying drawing to the application Specific embodiment be described in detail.Many details are explained in the following description in order to fully understand this Shen Please.But the application can be implemented with being much different from other way described herein, those skilled in the art can be not Similar improvement is done in the case where violating the application intension, therefore the application is not limited by following public specific implementation.
It should be noted that it can directly on the other element when element is referred to as " being set to " another element Or there may also be elements placed in the middle.When an element is considered as " connection " another element, it, which can be, is directly connected to To another element or it may be simultaneously present centering elements.
Unless otherwise defined, all technical and scientific terms used herein and the technical field for belonging to the application The normally understood meaning of technical staff is identical.The term used in the description of the present application is intended merely to description tool herein The purpose of the embodiment of body, it is not intended that in limitation the application.Term " and or " used herein includes one or more phases Any and all combinations of the listed item of pass.
Referring to Figure 1, the application one embodiment provides the method for a kind of dynamic assigning memory and processor.The dynamic The method of storage allocation and processor is applied to the device 100 of dynamic assigning memory and processor.The dynamic assigning memory and The device 100 of processor includes control module 10 and the computing module 20 connecting with 10 bus of control module.The calculating Module 20 include at least one processor 21 and with 21 bus of memory is connect described at least one multiple processors 22.It is described The method of dynamic assigning memory and processor includes:
S10 obtains the first calculating task by the control module 10.And by the control module 10 to described first Calculating task is divided to form multiple subtasks, includes the subtask of multiple efficient parallel calculating in the multiple subtask With the subtask of multiple non-effective parallel computations.
In step S10, the subtask of the efficient parallel calculating and described non-can be divided by the complexity of subtask The subtask of efficient parallel calculating.The complexity of the subtask can be by logical between each subtask and other subtasks Letter requires and the size of each subtask is judged.In an alternative embodiment, first calculating task can be drawn Divide to form m subtask.It include the subtask and a non-effective parallel meters of p of n efficient parallel calculating in the m subtask The subtask of calculation.Wherein, the m is the positive integer more than or equal to 1, and described n, p are the integer more than or equal to 0
S20 obtains the mission bit stream of the multiple subtask by the control module 10.
In step S20, the control module 10 can be management node in distributed computer.The multiple subtask Mission bit stream may include the mission bit stream of the subtask of each efficient parallel calculating.The task of the multiple subtask Information can also include the mission bit stream of the subtask of the non-effective parallel computation.The mission bit stream may include task institute Need the size of memory and the complexity of task.
S30 establishes at least one institute in the computing module 20 by the control module 10 according to the mission bit stream State the communication connection relationship between memory 21 and the processor 22.
In step S30, the communication connection relationship may include the processor 22 and other described processors 22 Between communication connection relationship.The communication connection relationship can also include between the processor 22 and the memory 21 Communication connection relationship.
S40, according to the communication connection relationship, complete in the computing module 20 the memory 21 and the place It manages device 22 to dynamically distribute, to form multiple first calculate nodes and multiple second calculate nodes.
In step S40, first calculate node has less processor cores compared to second calculate node With the memory of less capacity.The relationship of the memory 21 and processor 22 can be in one-to-one, one-to-many or multi-to-multi It is one or more.First calculate node can be CPU calculate node.Second calculate node can be fat node.Institute Stating the first calculate node may include two processors.Second calculate node may include 4 processors.First meter Operator node is used to calculate the subtask of the efficient parallel calculating.Second calculate node is described non-effective parallel for calculating The subtask of calculating.
In the present embodiment, the method for the dynamic assigning memory and processor obtains the first calculating task first.And to institute The first calculating task is stated to be divided to form multiple subtasks.It include multiple efficient parallel calculating in the multiple subtask Task and multiple non-effective parallel computation subtasks.Secondly, according to the multiple efficient parallel calculating subtask, and according to described The relationship of the memory 21 and the processor 22 is established, to form multiple first in multiple non-effective parallel computation subtasks Calculate node and multiple second calculate nodes.The method of the dynamic assigning memory and processor realize dynamic assigning memory and Processor.When carrying out parallel computation, the method for the dynamic assigning memory and processor is according to different calculating task dynamics The first calculate node and the second calculate node are configured, computing resource can be made full use of, improves calculating speed.
In one of the embodiments, the computing module 20 include a memory 21 and with 21 bus of memory Multiple processors 21 of connection.The S30 establishes the calculating mould by the control module 10 according to the mission bit stream The step of communication connection relationship in block 20 between at least one described memory 21 and the processor 22 can be the control Molding block 10 establishes the first communication connection relationship, communication link of the first communication connection relationship between multiple processors Connect relationship.
The S40, according to the communication connection relationship, complete in the computing module 20 the memory 21 and institute The dynamic allocation of processor 22 are stated, it can be in terms of described by the step of forming multiple first calculate nodes and multiple second calculate nodes It calculates module 20 and obtains the first communication connection relationship.And the computing module 20 will according to the first communication connection relationship The multiple processor 22 divides for multiple first processing units 221 and multiple the second processing unit 222, each is at described first Reason unit 221 is used to handle the subtask of the efficient parallel calculating, each described the second processing unit 222 is for locating Manage the subtask of a non-effective parallel computation.
In an alternative embodiment, the computing module 20 includes a memory 21 and a processor 22.It is each A processor 22 is connect with 21 bus of memory.The n processors are chosen from a processor 22 22, so that processor 22 described in each of described n processor 22 forms a first processing units 221.Described in one First processing units 221 are with other first processing units 221 without communicating.One first processing units 221 is based on Calculate the subtask of efficient parallel calculating.
In an alternative embodiment, according to the mission bit stream, confirm that the multiple non-effective parallel computation is appointed The number of the processor 22 needed for subtask described in each of business.It can be appointed according to the son of each non-effective parallel computation The size of business determines the number of the processor 22 needed for each described subtask.According to institute needed for each described subtask The number for stating processor 22 establishes in the computing module 20 first between the processor 22 by the control module 10 Communication connection relationship.
In an alternative embodiment, when the number of the processor 22 needed for a subtask is x, foundation The first communication connection relationship, chooses the x processors 22 from a processor 22, and makes the x places It manages device 22 and establishes communication, to form a second processing unit 222.The x is the positive integer greater than 1.Each subtask The number of the required processor 22 can be identical.The number of the processor 22 can not also phase needed for each subtask Together.
In the present embodiment, the first communication connection between the processor 22 can establish by the mission bit stream and close System.Multiple first processing units 221 and multiple the second processing unit 222 can be formed according to the first communication connection relationship. The formation of the multiple first processing units 221 and the multiple the second processing unit 222 can be dynamic allocation memory 21 It lays a good foundation with processor 22.
The S20 in one of the embodiments, obtains the task of the multiple subtask by the control module 10 After the step of information further include:
The control module 10 determines each in the multiple subtask according to the mission bit stream of the multiple subtask The size of a sub- required by task memory.The size of memory needed for the computing module 20 obtains each described described subtask, And the size of the memory according to needed for each described described subtask, the memory 21 is divided into multiple storage units 211. In an alternative embodiment, the memory 21 can be divided into m storage unit 211.
The memory 21 refers to the memory in server system in each server.The processor 22 refers to service Processor 22 in device system in each server.It is communicated to connect between a processor 22.The memory 21 is drawn The method for being divided into m storage unit 211 can deposit for the memory 21 is divided into m by logic chip or logical device Storage unit 211.Each storage unit 211 is not associated with other storage units 211.
In the present embodiment, a memory 21 is divided into multiple storage units 211.The multiple storage unit 211 Between without communication.The multiple storage unit 211 is to divide calculate node according to calculating task to provide the foundation.
The S30 in one of the embodiments, establishes institute by the control module 10 according to the mission bit stream The step of stating the communication connection relationship in computing module 20 between at least one described memory 21 and the processor 22 may be used also Think that the control module 10 establishes the second communication connection relationship.The second communication connection relationship is the multiple storage unit 211 communication connection relationships between the first processing units 221 and described the second processing unit 222 respectively.
The S40, according to the communication connection relationship, complete in the computing module 20 the memory 21 and institute The dynamic allocation of processor 22 are stated, the step of multiple first calculate nodes and multiple second calculate nodes can also be described to be formed Computing module 20 obtains the second communication connection relationship.And the computing module 20 is according to the second communication connection relationship It will be communicated to connect between each first processing units 221 and a storage unit 211.Each described first processing is single Communication connection can form multiple first calculate nodes between member 221 and a storage unit 211.Each described first Calculate node is used to calculate the subtask of the efficient parallel calculating.
The computing module 20 also according to the second communication connection relationship by each described the second processing unit 222 with It is communicated to connect between a storage unit 211 in the multiple storage unit 211 in remaining multiple storage units 211.Often One described the second processing unit 222 is deposited with one in multiple storage units 211 remaining in the multiple storage unit 211 Communication connection can form multiple second calculate nodes between storage unit 211.Each described second calculate node is used for Calculate the subtask of a non-effective parallel computation.
In the present embodiment, by the communication established between the first processing units 221 and storage unit 211, to be formed First calculate node.By the communication established between described the second processing unit 222 and storage unit 211, to be formed in terms of second Operator node.The method of the dynamic assigning memory and processor according to different the first calculate node of calculating task dynamic configuration and Second calculate node can make full use of computing resource, improve calculating speed.
The computing module 20 includes multiple computing units 23 in one of the embodiments,.Each described calculating is single Member 23 includes a processor 22 and a memory 21 communicated to connect with the processor 22.In an alternative embodiment In, the computing module 20 may include b computing unit 23.It is communicated to connect between the b computing unit 23.Each institute Stating computing unit 23 includes a processor 22 and a memory 21 communicated to connect with the processor 22.
The S30 is established at least one in the computing module 20 according to the mission bit stream by the control module 10 The step of communication connection relationship between a memory 21 and the processor 22, can establish for the control module 10 First communication connection relationship, the first communication connection relationship are memory 21 and processing in each described computing unit 23 Communication connection relationship between device 22.
The S40, according to the communication connection relationship, complete in the computing module 20 the memory 21 and institute The dynamic allocation of processor 22 are stated, it can be in terms of described by the step of forming multiple first calculate nodes and multiple second calculate nodes It calculates module 20 and obtains the first communication connection relationship.And the computing module 20 will according to the first communication connection relationship The communication connection between memory 21 and processor 22 in multiple computing units 23.And the computing module 20 ensure to The processor 22 in a few computing unit 23 does not work.
In an alternative embodiment, according to the mission bit stream, each of the multiple subtask is determined The size of required by task memory, and the number of processor 22 needed for the subtask of each of determining the multiple subtask.It can The required size of memory and the number of the required processor 22 are determined with the size by the subtask.To establish First communication connection relationship.
In the present embodiment, the first communication connection between the processor 22 can establish by the mission bit stream and close System.It will be logical between the memory 21 and processor 22 in multiple computing units 23 according to the first communication connection relationship Letter connection.And the computing module 20 ensures that the processor 22 at least one described computing unit 23 does not work.It is described The communication connection between memory 21 and processor 22 in multiple computing units 23 can be dynamic allocation memory 21 It lays a good foundation with processor 22.
The S30 in one of the embodiments, establishes institute by the control module 10 according to the mission bit stream The step of stating the communication connection relationship in computing module 20 between at least one described memory 21 and the processor 22 can be with The second communication connection relationship is established for the control module 10.The second communication connection relationship is the multiple storage unit Communication connection relationship between 211.
The S40, according to the communication connection relationship, complete in the computing module 20 the memory 21 and institute The dynamic allocation of processor 22 are stated, it can be in terms of described by the step of forming multiple first calculate nodes and multiple second calculate nodes It calculates module 20 and obtains the second communication connection relationship.And the computing module 20 will be more according to the second communication connection relationship A storage unit 211 communicates to connect, to form multiple first calculate nodes and multiple second calculate nodes.
According to the place needed for the size according to memory needed for subtask described in each and each described subtask The number of device 22 is managed, the control module 10 establishes the second communication connection relationship.It can be with according to the second communication connection relationship The multiple computing unit 23 is set to form multiple zonings.The computing unit 23 for forming the multiple zoning does not include place Manage the idle computing unit 23 of device 22.The quantity of multiple computing units 23 can not phase in the multiple zoning Deng.According to the second communication connection relationship can also by the multiple zoning with do not work in the processor 22 connect The memory 21 connect communicates to connect.
In the present embodiment, by controlling the correspondence between the computing unit 23, to be formed in terms of multiple described first Operator node and multiple second calculate nodes.According to the first calculate node described in different calculating task dynamic configurations and described Second calculate node can make full use of computing resource, improve calculating speed.
The S40 in one of the embodiments, is completed according to the communication connection relationship to the computing module 20 In the memory 21 and the processor 22 dynamically distribute, with formed multiple first calculate nodes and it is multiple second calculate section Include: after the step of point
An efficient parallel calculating is calculated by the first calculate node of each of the multiple first calculate node Subtask.And a non-effective parallel computation is calculated by the second calculate node of each of the multiple second calculate node Subtask.After the completion of first calculating task, the communication connection relationship in the computing module 20 is released.Release institute State the corresponding relationship of memory 21 and the processor 22.According to different calculating tasks, the different memories 21 is established With the corresponding relationship of the processor 22, so that the first calculate node of dynamic configuration and the second calculate node, can make full use of Computing resource improves calculating speed.
Fig. 2 is referred to, the application one embodiment provides a kind of computing module 20.The computing module 20 includes one and deposits Reservoir 21 and a processor 22.
One memory 21 includes m storage unit 211.Determine each of the multiple subtask subtask The size of required memory.According to the size of memory needed for each described subtask, the memory 21 is divided into m storage Unit 211.The m is the positive integer more than or equal to 1.Processor 21 described in each of described a processor 22 with it is described The connection of 21 bus of memory.
The memory 21 refers to the memory in server system in each server.The processor 22 refers to service Processor 22 in device system in each server.It is communicated to connect between a processor 22.The memory 21 is drawn The method for being divided into m storage unit 211 can deposit for the memory 21 is divided into m by logic chip or logical device Storage unit 211.Each storage unit 211 is not associated with other storage units 211.
The n processors 22 are chosen from a processor 22, so that each of described n processor 22 The processor 22 forms a first processing units 221.One first processing units 221 and other first processing units 221 without communication.It establishes and communicates between each described first processing units 221 and a storage unit 211, to form one A first calculate node.Each described first calculate node is used to calculate the subtask of the efficient parallel calculating.
Multiple processors 22 in a processor 22 establish communication, to form a second processing unit 222.Often It establishes and communicates between one described the second processing unit 222 and a storage unit 211, to form second calculate node. The number of processor 22 in each second node can be with the number phase of the processor 22 in second node described in other Together.The number of processor 22 in each second node can also be with of the processor 22 in second node described in other Number is not identical.Each described second calculate node is used to calculate the subtask of a non-effective parallel computation.
In the present embodiment, the computing module 20 includes a memory 21 and a processor 22.According to calculating task The memory 21 can be divided into multiple storage units 211 by division.Described a can also be handled according to the division of task Device 22 is divided into multiple first calculate nodes and multiple second calculate nodes.And then it is calculated by the multiple first Node and the multiple second calculate node calculate the calculating task.The computing module 20 can be according to different Calculating task is dynamically configured as the first calculate node and the second calculate node, can make full use of computing resource, improves and calculates Speed.
Fig. 3 is referred to, the application one embodiment provides a kind of computing module 20.The computing module 20 includes b meter Calculate unit 23.
It is communicated to connect between the b computing unit 23.The communication connection mode can connect for wireless communication. Each described computing unit 23 includes a processor 22 and a memory 21 communicated to connect with the processor 22.From The n computing units 23 are chosen in the b computing unit 23, so that each of described n computing unit 23 calculates Unit 23 forms first calculate node.Each calculate node is not established with other calculate nodes to be communicated.It is each A first calculate node is used to calculate the subtask of the efficient parallel calculating.
When processor 22 does not work at least one described computing unit 23, idle 22 communication link of processor The memory 21 connect is communicated with multiple computing units 23 in the remaining computing unit 23, to form one the Two calculate nodes.Each described second calculate node is used to calculate the subtask of a non-effective parallel computation.
In the present embodiment, by controlling the correspondence between the computing unit 23 in the computing module 20, with Form n first calculate nodes and p second calculate nodes.The computing module 20 can be according to different calculating Task is dynamically configured as first calculate node and second calculate node, can make full use of computing resource, improves Calculating speed.
Fig. 4 is referred to, the application one embodiment provides the device 100 of a kind of dynamic assigning memory and processor.It is described The device 100 of dynamic assigning memory and processor includes: computing module 20 and control module described in any of the above-described embodiment 10。
The control module 10 is connect with 20 bus of computing module.The control module 10 is for obtaining calculating task And the calculating task is divided into multiple subtasks.The control module 10 is also used to control the computing module 20, with shape At multiple first calculate nodes and how much second calculate nodes.The computing module 20 and the institute in above-described embodiment The embodiment for stating computing module 20 is identical, and details are not described herein again.
In one embodiment, the device 100 of the dynamic assigning memory and processor is mainframe computer.In the control Computer program is stored in molding block 10.The computing module 20 is realized in above-described embodiment when executing the computer program The step of any one the method.
The application also provides a kind of computer readable storage medium, is stored thereon with computer program.The computer journey The step of method described in any one of above-described embodiment is realized when sequence is executed by a controller.
Those of ordinary skill in the art will appreciate that realizing all or part of the process in above-described embodiment method, being can be with Relevant hardware is instructed to complete by computer program, the computer program can be stored in a non-volatile computer In read/write memory medium, the computer program is when being executed, it may include such as the process of the embodiment of above-mentioned each method.Wherein, To any reference of memory, storage, database or other media used in each embodiment provided herein, Including non-volatile and/or volatile memory.Nonvolatile memory may include read-only memory (ROM), programming ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM) or flash memory.Volatile memory may include Random access memory (RAM) or external cache.By way of illustration and not limitation, RAM is available in many forms, Such as static state RAM (SRAM), dynamic ram (DRAM), synchronous dram (SDRAM), double data rate sdram (DDRSDRAM), enhancing Type SDRAM (ESDRAM), synchronization link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic ram (DRDRAM) and memory bus dynamic ram (RDRAM) etc..
Each technical characteristic of embodiment described above can be combined arbitrarily, for simplicity of description, not to above-mentioned reality It applies all possible combination of each technical characteristic in example to be all described, as long as however, the combination of these technical characteristics is not deposited In contradiction, all should be considered as described in this specification.
The several embodiments of the application above described embodiment only expresses, the description thereof is more specific and detailed, but simultaneously The limitation to claim therefore cannot be interpreted as.It should be pointed out that coming for those of ordinary skill in the art It says, without departing from the concept of this application, various modifications and improvements can be made, these belong to the protection of the application Range.Therefore, the scope of protection shall be subject to the appended claims for the application patent.

Claims (10)

1. a kind of method of dynamic assigning memory and processor, which is characterized in that the side of the dynamic assigning memory and processor The device of device of the method applied to dynamic assigning memory and processor, the dynamic assigning memory and processor includes control module (10) and with the control module (10) bus the computing module (20) connecting;The computing module (20) includes that at least one is deposited Reservoir (21) and the multiple processors (22) being connect with memory described at least one (21) bus;
The described method includes:
S10 obtains the first calculating task by the control module (10), and is divided first calculating task with shape Subtask and multiple non-effective parallel computations at multiple subtasks, in the multiple subtask including multiple efficient parallel calculating Subtask;
S20 obtains the mission bit stream of the multiple subtask by the control module (10);
S30 establishes at least one institute in the computing module (20) by the control module (10) according to the mission bit stream State the communication connection relationship between memory (21) and the processor (22);
S40, according to the communication connection relationship, complete in the computing module (20) the memory (21) and the place It manages device (22) to dynamically distribute, to form multiple first calculate nodes and multiple second calculate nodes.
2. the method for dynamic assigning memory according to claim 1 and processor, which is characterized in that the computing module (20) the multiple processors (21) for including a memory (21) and being connect with the memory (21) bus;
The S30 is established at least one in the computing module (20) according to the mission bit stream by the control module (10) The step of communication connection relationship between a memory (21) and the processor (22) includes:
The control module (10) establishes the first communication connection relationship, and the first communication connection relationship is multiple processors Between communication connection relationship;
The S40, according to the communication connection relationship, complete in the computing module (20) the memory (21) and institute Processor (22) dynamic allocation are stated, include: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module (20) obtains the first communication connection relationship, and will be described according to the first communication connection relationship Multiple processors (22) are divided into multiple first processing units (221) and multiple the second processing unit (222), each described first Processing unit (221) is used to handle the subtask of the efficient parallel calculating, each described the second processing unit (222) For handling the subtask of a non-effective parallel computation.
3. the method for dynamic assigning memory according to claim 2 and processor, which is characterized in that the memory (21) Including multiple storage units (211);
The S30 is established at least one in the computing module (20) according to the mission bit stream by the control module (10) The step of communication connection relationship between a memory (21) and the processor (22) further include:
The control module (10) establishes the second communication connection relationship, and the second communication connection relationship is that the multiple storage is single First (211) communication connection relationship between the first processing units (221) and described the second processing unit (222) respectively;
The S40, according to the communication connection relationship, complete in the computing module (20) the memory (21) and institute Processor (22) dynamic allocation are stated, include: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module (20) obtains the second communication connection relationship, and will be each according to the second communication connection relationship It communicates to connect between a first processing units (221) and a storage unit (211), is calculated with forming multiple described first Node, each described first calculate node are used to calculate the subtask of the efficient parallel calculating;
The computing module (20) also according to it is described second communication connection relationship by each described the second processing unit (222) with Communication link between a storage unit (211) in the multiple storage unit (211) in remaining multiple storage units (211) Connect, to form multiple second calculate nodes, each described second calculate node for calculate one it is described it is non-effective simultaneously The subtask that row calculates.
4. the method for dynamic assigning memory according to claim 3 and processor, which is characterized in that the S20 passes through institute After the step of stating the mission bit stream of the multiple subtask of control module (10) acquisition further include:
The control module (10) determines each of the multiple subtask according to the mission bit stream of the multiple subtask The size of memory needed for subtask;
The size of memory needed for the computing module (20) obtains each described described subtask, and according to each described institute The memory (21) is divided into multiple storage units (211) by the size for stating memory needed for subtask.
5. the method for dynamic assigning memory according to claim 1 and processor, which is characterized in that the computing module (20) include multiple computing units (23), each described computing unit (23) include a processor (22) and one with it is described The memory (21) of processor (22) communication connection;
The S30 is established at least one in the computing module (20) according to the mission bit stream by the control module (10) The step of communication connection relationship between a memory (21) and the processor (22) includes:
The control module (10) establishes the first communication connection relationship, and the first communication connection relationship is each described calculating Communication connection relationship between memory (21) in unit (23) and processor (22);
The S40, according to the communication connection relationship, complete in the computing module (20) the memory (21) and institute Processor (22) dynamic allocation are stated, include: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module (20) obtains the first communication connection relationship, and will be multiple according to the first communication connection relationship The communication connection between memory (21) and processor (22) in the computing unit (23), and ensure at least one described meter The processor (22) calculated in unit (23) does not work.
6. the method for dynamic assigning memory according to claim 5 and processor, which is characterized in that the S30, according to institute State mission bit stream, by the control module (10) establish in the computing module (20) at least one described memory (21) and The step of communication connection relationship between the processor (22) further include:
The control module (10) establishes the second communication connection relationship, and the second communication connection relationship is that the multiple storage is single Communication connection relationship between first (211);
The S40, according to the communication connection relationship, complete in the computing module (20) the memory (21) and institute Processor (22) dynamic allocation are stated, include: the step of multiple first calculate nodes and multiple second calculate nodes to be formed
The computing module (20) obtains the second communication connection relationship, and will be multiple according to the second communication connection relationship Storage unit (211) communication connection, to form multiple first calculate nodes and multiple second calculate nodes.
7. the method for dynamic assigning memory according to claim 1-6 and processor, which is characterized in that described S40 is completed according to the communication connection relationship to the memory (21) and the processor in the computing module (20) (22) dynamically distribute, the step of to form multiple first calculate nodes and multiple second calculate nodes after include:
Appointed by the son that the first calculate node of each of the multiple first calculate node calculates an efficient parallel calculating Business, and pass through the son of the second calculate node of each of the multiple second calculate node one non-effective parallel computation of calculating Task;
After the completion of first calculating task, the communication connection relationship in the computing module (20) is released.
8. a kind of computing module (20), which is characterized in that the computing module (20) is for obtaining communication connection relationship, the meter Calculating module (20) includes:
One memory (21);
Multiple processors (22), each described processor (21) connect with the memory (21) bus;
Wherein, the memory (21) includes multiple storage units (211), and the computing module (20) is according to the communication connection Relationship is completed to the memory (21) and the processor (22) dynamic allocation in the computing module (20), to be formed Multiple first calculate nodes and multiple second calculate nodes.
9. a kind of computing module (20), which is characterized in that the computing module (20) is for obtaining communication connection relationship, the meter Calculating module (20) includes:
Multiple computing units (23) communicate to connect between the multiple computing unit (23);
Each described computing unit (23) includes that a processor (22) and one communicate to connect with the processor (22) Memory (21);
Wherein, the computing module (20) is completed according to the communication connection relationship to described in the computing module (20) Memory (21) and the processor (22) dynamically distribute, to form multiple first calculate nodes and multiple second calculate nodes.
10. the device of a kind of dynamic assigning memory and processor characterized by comprising
Computing module (20) described in any one of claim 8 or 9;And
Control module (10) is connect with the computing module (20) bus.
CN201910276015.3A 2019-04-08 2019-04-08 Method and device for dynamically allocating memory and processor and computing module Active CN110083449B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910276015.3A CN110083449B (en) 2019-04-08 2019-04-08 Method and device for dynamically allocating memory and processor and computing module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910276015.3A CN110083449B (en) 2019-04-08 2019-04-08 Method and device for dynamically allocating memory and processor and computing module

Publications (2)

Publication Number Publication Date
CN110083449A true CN110083449A (en) 2019-08-02
CN110083449B CN110083449B (en) 2020-04-28

Family

ID=67414444

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910276015.3A Active CN110083449B (en) 2019-04-08 2019-04-08 Method and device for dynamically allocating memory and processor and computing module

Country Status (1)

Country Link
CN (1) CN110083449B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1494688A (en) * 2001-02-24 2004-05-05 �Ҵ���˾ Novel massively parallel super computer
US20040139297A1 (en) * 2003-01-10 2004-07-15 Huppenthal Jon M. System and method for scalable interconnection of adaptive processor nodes for clustered computer systems
CN101311917A (en) * 2007-05-24 2008-11-26 中国科学院过程工程研究所 Particle model faced multi-tier direct-connection cluster paralleling computing system
CN101620588A (en) * 2008-07-03 2010-01-06 中国人民解放军信息工程大学 Connection and management method of reconfigurable component in high performance computer
CN103336756A (en) * 2013-07-19 2013-10-02 中国人民解放军信息工程大学 Generating device for data computational node
US9465549B1 (en) * 2013-12-19 2016-10-11 Emc Corporation Dynamic allocation of a high-speed memory pool between a cluster file system and a burst buffer appliance
CN108304261A (en) * 2017-12-29 2018-07-20 曙光信息产业(北京)有限公司 A kind of job scheduling method and device based on 6D-Torus networks
CN108897619A (en) * 2018-06-27 2018-11-27 国家超级计算天津中心 A kind of multi-layer resource flexibility configuration method for supercomputer

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1494688A (en) * 2001-02-24 2004-05-05 �Ҵ���˾ Novel massively parallel super computer
US20040139297A1 (en) * 2003-01-10 2004-07-15 Huppenthal Jon M. System and method for scalable interconnection of adaptive processor nodes for clustered computer systems
CN101311917A (en) * 2007-05-24 2008-11-26 中国科学院过程工程研究所 Particle model faced multi-tier direct-connection cluster paralleling computing system
CN101620588A (en) * 2008-07-03 2010-01-06 中国人民解放军信息工程大学 Connection and management method of reconfigurable component in high performance computer
CN103336756A (en) * 2013-07-19 2013-10-02 中国人民解放军信息工程大学 Generating device for data computational node
US9465549B1 (en) * 2013-12-19 2016-10-11 Emc Corporation Dynamic allocation of a high-speed memory pool between a cluster file system and a burst buffer appliance
CN108304261A (en) * 2017-12-29 2018-07-20 曙光信息产业(北京)有限公司 A kind of job scheduling method and device based on 6D-Torus networks
CN108897619A (en) * 2018-06-27 2018-11-27 国家超级计算天津中心 A kind of multi-layer resource flexibility configuration method for supercomputer

Also Published As

Publication number Publication date
CN110083449B (en) 2020-04-28

Similar Documents

Publication Publication Date Title
EP3738045B1 (en) Distributed partitioned map reduce using a data fabric
US10567213B1 (en) Systems and methods for selecting specific code segments in conjunction with executing requested tasks
CN102567086B (en) Task scheduling method, equipment and system
US20200134762A1 (en) Order group allocation method and device
CN102629219B (en) Reduce in parallel computation frame holds adaptive load balancing method
CN107688492B (en) Resource control method and device and cluster resource management system
WO2018095065A1 (en) Method and apparatus for allocating data object, and electronic device
CN104580396A (en) Task scheduling method, node and system
US20180246765A1 (en) System and method for scheduling jobs in distributed datacenters
CN102521051B (en) Task scheduling method, device and system in Map Reduce system applied to nomography
CN106503058B (en) A kind of data load method, terminal and computing cluster
CN108268317A (en) A kind of resource allocation methods and device
CN105980988A (en) Methods and systems for dynamically allocating resources and tasks among database work agents in smp environment
CN104199912B (en) A kind of method and device of task processing
CN106294233A (en) The transfer control method of a kind of direct memory access and device
US20200052885A1 (en) File storage method and apparatus for blockchain network
WO2017201127A1 (en) Reconfigurable distributed processing
CN103914556A (en) Large-scale graph data processing method
CN107562528A (en) Support the blocking on-demand computing method and relevant apparatus of a variety of Computational frames
WO2019000786A1 (en) Order assigning method and device
WO2016074130A1 (en) Batch processing method and device for system invocation commands
CN112988369A (en) Computer resource allocation method and system based on computing element
CN110083449A (en) The method, apparatus and computing module of dynamic assigning memory and processor
CN104239520A (en) Historical-information-based HDFS (hadoop distributed file system) data block placement strategy
CN104184685A (en) Data center resource allocation method, device and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant