CN110262887A - CPU-FPGA method for scheduling task and device based on feature identification - Google Patents

CPU-FPGA method for scheduling task and device based on feature identification Download PDF

Info

Publication number
CN110262887A
CN110262887A CN201910563352.0A CN201910563352A CN110262887A CN 110262887 A CN110262887 A CN 110262887A CN 201910563352 A CN201910563352 A CN 201910563352A CN 110262887 A CN110262887 A CN 110262887A
Authority
CN
China
Prior art keywords
task
fpga
waiting
waiting task
cpu
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
CN201910563352.0A
Other languages
Chinese (zh)
Other versions
CN110262887B (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910563352.0A priority Critical patent/CN110262887B/en
Publication of CN110262887A publication Critical patent/CN110262887A/en
Application granted granted Critical
Publication of CN110262887B publication Critical patent/CN110262887B/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)
  • Complex Calculations (AREA)

Abstract

The embodiment of the invention provides a kind of CPU-FPGA method for scheduling task and device based on feature identification, wherein method includes: to obtain the data volume of multiple waiting tasks and each waiting task, extract the characteristic information of each waiting task in multiple waiting tasks, cpu character information based on each waiting task, FPGA characteristic information, and task unique characteristics information, generate the feature vector of each waiting task, it will be in the feature vector input of each waiting task generated disaggregated model trained in advance, obtain the classification results of each waiting task, according to the size relation between the data volume of each waiting task, waiting task is ranked up, and each waiting task after sequence is dispatched in CPU and FPGA respectively according to preset strategy and is handled.The embodiment of the present invention can be realized the load equilibrium that CPU-FPGA is improved during CPU-FPGA task schedule.

Description

CPU-FPGA method for scheduling task and device based on feature identification
Technical field
The present invention relates to field of computer technology, more particularly to a kind of CPU-FPGA task schedule based on feature identification Method and device.
Background technique
Recently as artificial intelligence, multimedia technology and the development of high-performance calculation, people are excited to Heterogeneous Computing The extensive research interest of architecture.The unbearable high-volume of traditional server platform and diversified data processing task, Along with the development of distributed computing and high-performance calculation, Heterogeneous Computing is come into being.Heterogeneous computing platforms incorporate isomery Computing resource and storage resource provide the resource distribution of elasticity for the data processing of task, improve resource utilization, reduce Cost of serving, while fault-tolerant and fault recovery technology is provided, for the data processing of task safe and reliable platform is provided, So that more and more task immigrations are handled into heterogeneous platform.For example, task can be video data processing, picture number According to processing etc., heterogeneous platform can be heterogeneous server etc..
It is directed to CPU (Central Processing Unit, central processing unit)-FPGA (Field- at present Programmable Gate Array, field programmable gate array) task to be treated on heterogeneous platform, the place used Reason method are as follows: CPU is for task received on CPU-FPGA heterogeneous platform, according to the sequencing of the task of reception, by institute Received task is preferentially assigned on FPGA and executes, (FPGA at this time when executing needed on FPGA for task reaches certain amount Memory it is completely occupied), then the received task of institute is assigned on CPU and is executed.
However, the existing processing method for task on CPU-FPGA heterogeneous platform, is according to the successive suitable of the task of reception Ordered pair task is allocated processing, in practical application, the data volume that handles by different required by task it is of different sizes so that Only task is allocated according to the sequencing of the task of reception, being easy to appear need to handle that data volume is small or computation complexity is low Task distribute to FPGA, will need to handle the task that data volume is big or computation complexity is high and distribute to CPU, cause CPU-FPGA negative Carry unbalanced problem.
Summary of the invention
The embodiment of the present invention is designed to provide a kind of CPU-FPGA method for scheduling task and dress based on feature identification It sets, realizes during CPU-FPGA task schedule, further increase the load equilibrium of CPU-FPGA.Specific technical solution is such as Under:
In a first aspect, the embodiment of the invention provides a kind of CPU-FPGA method for scheduling task based on feature identification, institute The method of stating includes:
The data volume of multiple waiting tasks and each waiting task is obtained, the waiting task is the CPU and institute The task of pending processing in FPGA is stated, the data volume is for data processing needed for indicating the processing waiting task Amount;
The characteristic information of each waiting task in the multiple waiting task is extracted, the characteristic information includes: CPU spy Reference breath, FPGA characteristic information and task unique characteristics information;The cpu character information for indicate CPU processing it is described to The feature having when processing task, the FPGA characteristic information are used for the spy for indicating to have when FPGA handles the waiting task Sign;
Based on the cpu character information of each waiting task, FPGA characteristic information and task unique characteristics information, Generate the feature vector of each waiting task;Described eigenvector is the characteristic information of the waiting task through removal amount It is generated after guiding principle;
By in the feature vector input of each waiting task generated disaggregated model trained in advance, each institute is obtained State the classification results of waiting task, the classification results include: the first classification results and the second classification results, and described first point For corresponding first waiting task of class result for handling in CPU, second classification results are second to be processed corresponding Business in FPGA for handling;The disaggregated model is according to corresponding to the corresponding feature vector of preset task and preset task Class label training obtain;
According to the size relation between the data volume of each first waiting task, to first waiting task into Row sequence, and each first waiting task after sequence is dispatched in CPU according to preset strategy and is handled;
According to the size relation between the data volume of each second waiting task, to second waiting task into Row sequence, and each second waiting task after sequence is dispatched in FPGA according to preset strategy and is handled.
Optionally, the cpu character information based on each waiting task, FPGA characteristic information and task are certainly The step of body characteristic information, the feature vector of each waiting task of generation, comprising:
By the cpu character information of each waiting task, FPGA characteristic information and the removal of task unique characteristics information Dimension obtains the cpu character data of each waiting task, FPGA characteristic and task unique characteristics data;
According to preset rules by the cpu character data of each waiting task, FPGA characteristic and task itself Characteristic is combined into the feature vector of each waiting task.
Optionally, first classification results are CPU task subset, and second classification results are FPGA task subset, Size relation between the data volume according to each first waiting task, arranges first waiting task The step of sequence, comprising:
By corresponding first waiting task of the CPU task subset, according to each first waiting task data volume it Between size relation ascending sort, obtain the first CPU task queue;
Alternatively, by corresponding first waiting task of the CPU task subset, according to the data of each first waiting task Size relation descending sort between amount, obtains the 2nd CPU task queue;
Size relation between the data volume according to each second waiting task, to described second to be processed The step of business is ranked up, comprising:
By corresponding second waiting task of the FPGA task subset, according to each second waiting task data volume it Between size relation descending sort, obtain the first FPGA task queue;
Alternatively, by corresponding second waiting task of the FPGA task subset, according to the number of each second waiting task According to the size relation ascending sort between amount, the 2nd FPGA task queue is obtained.
Optionally, each first waiting task by after sequence is dispatched in CPU according to preset strategy carries out The step of processing, comprising:
For each first waiting task after sequence, according to each first to be processed in the first CPU task queue Each first waiting task in the first CPU task queue is successively dispatched in CPU by the sequencing of business Reason;
Alternatively, for each first waiting task after sequence, according in the 2nd CPU task queue each first wait locate Each first waiting task in the 2nd CPU task queue, is successively dispatched in CPU and carries out by the inverted order sequence of reason task Processing.
Optionally, each second waiting task by after sequence is dispatched in FPGA according to preset strategy carries out The step of processing, comprising:
For each second waiting task after sequence, according to each second to be processed in the first FPGA task queue Each second waiting task in the first FPGA task queue is successively dispatched in FPGA by the sequencing of business Reason;
Alternatively, for sequence after each second waiting task, according in the 2nd FPGA task queue each second to Each second waiting task in the 2nd FPGA task queue, is successively dispatched in FPGA by the inverted order sequence of processing task It is handled.
Second aspect, the embodiment of the invention provides a kind of CPU-FPGA task scheduling apparatus based on feature identification, institutes Stating device includes:
Module is obtained, for obtaining the data volume of multiple waiting tasks and each waiting task, the waiting task For the task of pending processing in the CPU and the FPGA, the data volume handles the waiting task institute for indicating The data processing amount needed;
Extraction module, for extracting the characteristic information of each waiting task in the multiple waiting task, the feature Information includes: cpu character information, FPGA characteristic information and task unique characteristics information;The cpu character information is used for table Show the feature having when CPU handles the waiting task, the FPGA characteristic information is for indicating that FPGA processing is described wait locate The feature having when reason task;
Generation module, for the cpu character information based on each waiting task, FPGA characteristic information and task Unique characteristics information generates the feature vector of each waiting task;Described eigenvector is the spy of the waiting task Reference breath generates after removing dimension;
Categorization module, the classification mould trained in advance for the feature vector input by each waiting task generated In type, the classification results of each waiting task are obtained, the classification results include: the first classification results and the second classification knot Fruit, for corresponding first waiting task of first classification results for handling in CPU, second classification results are corresponding Second waiting task in FPGA for handling;The disaggregated model be according to the corresponding feature vector of preset task, and it is pre- If the training of class label corresponding to task obtains;
First scheduler module, for the size relation between the data volume according to each first waiting task, to institute It states the first waiting task to be ranked up, and each first waiting task after sequence is dispatched to according to preset strategy It is handled in CPU;
Second scheduler module, for the size relation between the data volume according to each second waiting task, to institute It states the second waiting task to be ranked up, and each second waiting task after sequence is dispatched to according to preset strategy It is handled in FPGA.
Optionally, the generation module, comprising:
Dimension submodule is removed, for by the cpu character information of each waiting task, FPGA characteristic information and task Unique characteristics information removes dimension, obtains the cpu character data of each waiting task, and FPGA characteristic and task itself are special Levy data;
Generate submodule, for according to preset rules by the cpu character data of each waiting task, FPGA characteristic Accordingly and task unique characteristics data, it is combined into the feature vector of each waiting task.
Optionally, first scheduler module, is specifically used for:
By corresponding first waiting task of the CPU task subset, according to each first waiting task data volume it Between size relation ascending sort, obtain the first CPU task queue;
Alternatively, by corresponding first waiting task of the CPU task subset, according to the data of each first waiting task Size relation descending sort between amount, obtains the 2nd CPU task queue;
Second scheduler module, is specifically used for:
By corresponding second waiting task of the FPGA task subset, according to each second waiting task data volume it Between size relation descending sort, obtain the first FPGA task queue;
Alternatively, by corresponding second waiting task of the FPGA task subset, according to the number of each second waiting task According to the size relation ascending sort between amount, the 2nd FPGA task queue is obtained.
Optionally, the first scheduler module is specifically used for:
For each first waiting task after sequence, according to each first waiting task in the first CPU task queue Each first waiting task in first CPU task queue is successively dispatched in CPU and handles by sequencing;
Alternatively, for each first waiting task after sequence, according to each first to be processed in the 2nd CPU task queue Each first waiting task in 2nd CPU task queue, is successively dispatched in CPU and handles by the inverted order sequence of business.
Optionally, the second scheduler module is specifically used for:
For each second waiting task after sequence, according to each second waiting task in the first FPGA task queue Each second waiting task in first FPGA task queue is successively dispatched in FPGA and handles by sequencing;
Alternatively, for each second waiting task after sequence, it is to be processed according in the 2nd FPGA task queue each second Each second waiting task in 2nd FPGA task queue, is successively dispatched in FPGA by the inverted order sequence of task Reason.
The third aspect, the embodiment of the invention also provides a kind of electronic equipment, including processor, communication interface, memory And communication bus, wherein processor, communication interface, memory complete mutual communication by communication bus;
Memory, for storing computer program;
Processor when for executing the program stored on memory, realizes that one kind described in above-mentioned first aspect is based on The CPU-FPGA method for scheduling task step of feature identification.
Fourth aspect, the embodiment of the invention also provides a kind of computer readable storage mediums, which is characterized in that the meter Computer program is stored in calculation machine readable storage medium storing program for executing, the computer program is executed by processor described in above-mentioned first aspect It is a kind of based on feature identification CPU-FPGA method for scheduling task step.
The embodiment of the present invention the utility model has the advantages that
A kind of CPU-FPGA method for scheduling task and device based on feature identification provided in an embodiment of the present invention, due to right The classification of waiting task is realized based on the characteristic information of each waiting task feature vector generated, scheduling to Before processing task, cpu character information, FPGA characteristic information and the task unique characteristics letter of each waiting task are comprehensively considered Breath, and then classify to waiting task, so that the first waiting task obtained after classification is more suitable in CPU Reason, the second waiting task are more suitable for handling in FPGA, realize during CPU-FPGA task schedule, further increase The load equilibrium of CPU-FPGA, also, when being scheduled to waiting task, due to the data volume based on waiting task Between size relation be scheduled, therefore can preferably coordinate the resource using CPU and FPGA.
Certainly, implement any of the products of the present invention or method it is not absolutely required at the same reach all the above excellent Point.
Detailed description of the invention
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this Some embodiments of invention for those of ordinary skill in the art without creative efforts, can be with It obtains other drawings based on these drawings.
Fig. 1 is that a kind of process of CPU-FPGA method for scheduling task based on feature identification provided in an embodiment of the present invention is shown It is intended to;
Fig. 2 is feature vectors generating mode flow diagram provided in an embodiment of the present invention;
Fig. 3 is that a kind of structure of CPU-FPGA task scheduling apparatus based on feature identification provided in an embodiment of the present invention is shown It is intended to;
Fig. 4 is a kind of structural schematic diagram of generation module provided in an embodiment of the present invention;
Fig. 5 is the structural schematic diagram of a kind of electronic equipment provided in an embodiment of the present invention.
Specific embodiment
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other Embodiment shall fall within the protection scope of the present invention.
In order to solve the problem of existing CPU-FPGA load imbalance caused during CPU-FPGA task schedule, The embodiment of the invention provides a kind of CPU-FPGA method for scheduling task and device based on feature identification.
It is provided for the embodiments of the invention a kind of CPU-FPGA method for scheduling task based on feature identification first below It is introduced.
As shown in FIG. 1, FIG. 1 is a kind of task schedule sides CPU-FPGA based on feature identification provided in an embodiment of the present invention The flow diagram of method, this method may include:
S101, the data volume for obtaining multiple waiting tasks and each waiting task.
In the embodiment of the present invention, for the scheduling process of task on CPU-FPGA heterogeneous platform, it can be executed by CPU. Before being scheduled to task, the data volume of multiple waiting tasks and each waiting task can be first obtained.Wherein, Waiting task can be indicated for the task of pending processing in CPU and FPGA, the data volume of waiting task processing to Handle the data processing amount of required by task.
In practical application, acquired waiting task can be the task that user sends to CPU-FPGA heterogeneous platform, It is also possible to the task that other equipment are sent to CPU-FPGA heterogeneous platform.
S102, the characteristic information for extracting each waiting task in multiple waiting tasks.
After obtaining multiple waiting tasks, it is corresponding that each waiting task in multiple waiting tasks can be extracted Characteristic information, this feature information may include: cpu character information, FPGA characteristic information and task unique characteristics information.Its In, cpu character information is used for the feature for indicating to have when CPU handles waiting task, and FPGA characteristic information is for indicating FPGA The feature having when handling waiting task.
It should be understood that cpu character information can be the intrinsic some characteristic attributes of CPU, FPGA characteristic information be can be FPGA intrinsic some characteristic attributes.Illustratively, cpu character information and FPGA characteristic information may include: cpu chip frequency Maximum data transfer rate, CPU between rate, fpga chip frequency, CPU and host memory and the maximum bandwidth between FPGA with And bandwidth between local storage and global storage etc..
Task unique characteristics information may include: static nature information and dynamic feature information.Illustratively, static nature Information may include: the interval time of OpenCL (Open Computing Language, open operation language) kernel, first Clock cycle number, LUTs (Look-Up-Tables, the look-up table) utilization rate, FFs (Fringe lost before a effective output Field Switching, fringe field switching technique) utilization rate, the optimal clock cycle of OpenCL kernel, calculating task complexity Degree etc., for example, first effectively preceding clock cycle number lost of output can be, when first effectively output is in third It can be used after the clock period, then this first effectively preceding clock cycle number lost of output is 2, the complexity of task, which can be, appoints The complexity etc. of algorithm in business, the static nature information of the task can indicate that the waiting task will not be sent out during processing The feature for changing.Dynamic feature information may include: that host is transferred to the data volume of FPGA, FPGA is transferred to the data of host Amount, CPU and FPGA overall situation work item quantity and CPU and FPGA partial duty amount quantity etc., the dynamic feature information of the task It can indicate the waiting task changed feature during processing.
S103, the cpu character information based on each waiting task, FPGA characteristic information and task unique characteristics information, Generate the feature vector of each waiting task.
In the embodiment of the present invention, the characteristic information of each waiting task is extracted, by the characteristic information of waiting task through going Except the feature vector for generating each waiting task after dimension, referring to fig. 2, Fig. 2 be a kind of feature provided in an embodiment of the present invention to Generating mode flow diagram is measured, which may include:
S1031, the cpu character information by each waiting task, FPGA characteristic information and task unique characteristics information are gone Except dimension, the cpu character data of each waiting task, FPGA characteristic and task unique characteristics data are obtained.
Illustratively, the cpu character information of waiting task, FPGA characteristic information and task unique characteristics information can be with It include: cpu chip frequency for 50Hz, the maximum bandwidth between CPU and FPGA is 50bps, the optimal clock week of OpenCL kernel Phase is that the data volume that 50s, FPGA are transferred to host is 50MB, CPU and FPGA partial duty amount quantity is 50 etc., by these spies Reference breath removal dimension, correspondence obtain the cpu character data of waiting task, FPGA characteristic and task unique characteristics number According to are as follows: maximum bandwidth of the cpu chip frequency between 50, CPU and FPGA is the optimal clock cycle of 50, OpenCL kernel to be 50, FPGA is transferred to that the data volume of host is 50, CPU and FPGA partial duty amount quantity is 50 etc..
S1032, according to preset rules by the cpu character data of each waiting task, FPGA characteristic and task from Body characteristic is combined into the feature vector of each waiting task.
Illustratively, the cpu character data of waiting task, FPGA characteristic and task unique characteristics data are obtained Are as follows: maximum bandwidth of the cpu chip frequency between 50, CPU and FPGA be 50 the optimal clock cycle of 50, OpenCL kernel, FPGA is transferred to that the data volume of host is 50, CPU and FPGA partial duty amount quantity is 50 etc., these characteristics are combined into The feature vector of waiting task can be expressed as (50,50,50,50,50).Wherein, preset rules can be cpu character number According to front is placed on, FPGA characteristic is placed on centre, task unique characteristics data are placed on finally, being combined into turn to be processed The feature vector of task;Preset rules are also possible to the cpu character data of waiting task, FPGA characteristic and task Unique characteristics data random alignment, is combined into the feature vector of waiting task.Specifically, setting this field skill of preset rules Art personnel can be configured according to actual needs, and the embodiment of the present invention is not limited thereto.
Referring to Fig. 1, S104, the disaggregated model for training the feature vector input of each waiting task generated in advance In, obtain the classification results of each waiting task.
Will in the trained in advance disaggregated model of feature vector input of each waiting task of generation, further obtain respectively to The classification results of processing task.The classification results may include: the first classification results and the second classification results, wherein first point Corresponding first waiting task of class result for handling in CPU, use by corresponding second waiting task of the second classification results In being handled in FPGA.
Disaggregated model is trained according to class label corresponding to the corresponding feature vector of preset task and preset task It arrives.Illustratively, which can be based on SVM (Support Vector Machine, support vector machines) algorithm Svm classifier model, or be based on KNN (k-NearestNeighbor, K arest neighbors) algorithm KNN disaggregated model, or be based on K- The K-means disaggregated model of means (k-means clustering algorithm, k mean cluster) algorithm.Preset task can To be the task in the set of tasks for train classification models collected in advance, the set of tasks collected in advance can for comprising The data volume of the multiple tasks set of tasks not equal in 1M to 1G, the task in set of tasks may include vision generic task plus Close generic task and high performance parallel task dispatching, for example, vision generic task may include: edge detection generic task, de-watermarked class Task or target detection generic task etc..
Illustratively, for the preset task collected in advance, it can refer to the characteristic information of said extracted waiting task, it is raw It is corresponding to generate preset task to extract the characteristic information of preset task at the implementation of the feature vector of each waiting task Feature vector.Further actual measurement obtains the corresponding speed-up ratio of preset task on CPU-FPGA platform, which accelerates Degree can handle the ratio of required processing time with preset task accurately to describe in CPU and FPGA respectively.It can incite somebody to action Preset task of the speed-up ratio greater than 4 is defined as acceleration task, and the preset task by speed-up ratio no more than 4 is defined as common task, Further, will accelerate the corresponding classification logotype of task is the second classification results, is the by the corresponding classification logotype of common task One classification results obtain class label corresponding to preset task.Then, according to the corresponding feature vector of preset task, and it is pre- If the training of class label corresponding to task obtains disaggregated model, specific training process can refer to the realization of the prior art, this This will not be repeated here for inventive embodiments.
In the embodiment of the present invention, will accelerate the corresponding classification logotype of task is the second classification results, and common task is corresponding Classification logotype be the first classification results, the obtained disaggregated model of training can input the feature vector of each waiting task In the disaggregated model, corresponding first classification results of the first waiting task handled in CPU are obtained, and in FPGA Corresponding second classification results of the second waiting task of reason.Allow to task complexity is low or data calculate and stroke It spends waiting task that is small, being unfavorable for fpga chip acceleration to be divided into the first classification results and handle in CPU, by task complexity High or data calculate the waiting task that degree of concurrence is big, is conducive to fpga chip acceleration and are divided into the second classification results and exist It is handled in FPGA, to improve the load equilibrium of CPU-FPGA.
S105, according to the size relation between the data volume of each first waiting task, the first waiting task is carried out Sequence, and each first waiting task after sequence is dispatched in CPU according to preset strategy and is handled.
In the embodiment of the present invention, the first classification results can be expressed as CPU task subset, and the second classification results can indicate For FPGA task subset.CPU task subset is corresponding with multiple first waiting tasks, and FPGA task subset is corresponding with multiple second Waiting task.
Wherein, according to the size relation between the data volume of each first waiting task, the first waiting task is carried out The embodiment of sequence may include:
It is a kind of to the first waiting task sequence embodiment in, can be by CPU task subset corresponding first wait locate Reason task obtains the first CPU task team according to the size relation ascending sort between the data volume of each first waiting task Column.Wherein, the data volume of the first waiting task can be expressed as data processing amount needed for handling first waiting task.
In the embodiment that another kind sorts to the first waiting task, can by CPU task subset corresponding first to Processing task obtains the 2nd CPU task team according to the size relation descending sort between the data volume of each first waiting task Column.Wherein, the data volume of the second waiting task can be expressed as data processing amount needed for handling second waiting task.
The difference of first waiting task sequence embodiment, by each first waiting task after sequence according to default plan It is also different to be slightly dispatched to the embodiment handled in CPU.Specifically, for above-mentioned a kind of to the sequence of the first waiting task Embodiment, each first waiting task after sequence is dispatched to the embodiment party handled in CPU according to preset strategy Formula can be with are as follows:
For each first waiting task after sequence, according to each first waiting task in the first CPU task queue Each first waiting task in first CPU task queue is successively dispatched in CPU and handles by sequencing.At this point, pre- If strategy can be with are as follows: according to the sequencing of each first waiting task in the first CPU task queue successively to each first wait locate Reason task is scheduled.
For the above-mentioned another embodiment to the sequence of the first waiting task, by each first to be processed after sequence Business is dispatched to the embodiment that is handled in CPU according to preset strategy can be with are as follows:
For each first waiting task after sequence, according to each first waiting task in the 2nd CPU task queue Each first waiting task in 2nd CPU task queue, is successively dispatched in CPU and handles by inverted order sequence.At this point, pre- If strategy can be with are as follows: according to the inverted order sequence of each first waiting task in the first CPU task queue successively to each first wait locate Reason task is scheduled.
As a kind of optional embodiment of the present invention, closed according to the size between the data volume of each first waiting task System, each first waiting task is ranked up, and after sequence according to sequencing or inverted order sequence successively by each first to Processing task schedule is handled into CPU, so that smaller corresponding first waiting task of data volume is preferentially in CPU Reason.Further, can be when CPU task queue be empty, data volume is smaller by corresponding the in priority scheduling FPGA task queue Two waiting tasks, in order to preferably coordinate the resource using CPU and FPGA.
S106, according to the size relation between the data volume of each second waiting task, the second waiting task is carried out Sequence, and each second waiting task after sequence is dispatched in FPGA according to preset strategy and is handled.
Wherein, according to the size relation between the data volume of each second waiting task, the second waiting task is carried out The embodiment of sequence may include:
It is a kind of to the second waiting task sequence embodiment in, can be by FPGA task subset corresponding second wait locate Reason task obtains the first FPGA task team according to the size relation descending sort between the data volume of each second waiting task Column.
In the embodiment that another kind sorts to the second waiting task, can by FPGA task subset corresponding second to Processing task obtains the 2nd FPGA task according to the size relation ascending sort between the data volume of each second waiting task Queue.
The difference of second waiting task sequence embodiment, by each second waiting task after sequence according to default plan It is also different to be slightly dispatched to the embodiment handled in FPGA.Specifically, for above-mentioned a kind of to the second waiting task row Each second waiting task after sequence is dispatched to the implementation handled in FPGA according to preset strategy by the embodiment of sequence Mode can be with are as follows:
For each second waiting task after sequence, according to each second waiting task in the first FPGA task queue Each second waiting task in first FPGA task queue is successively dispatched in FPGA and handles by sequencing.At this point, Preset strategy can be with are as follows: according to each second waiting task in the first FPGA task queue sequencing successively to each second to Processing task is scheduled.
For the above-mentioned another embodiment to the sequence of the second waiting task, by each second to be processed after sequence Business is dispatched to the embodiment that is handled in FPGA according to preset strategy can be with are as follows:
For each second waiting task after sequence, according to each second waiting task in the 2nd FPGA task queue Each second waiting task in 2nd FPGA task queue, is successively dispatched in FPGA and handles by inverted order sequence.At this point, Preset strategy can be with are as follows: according to each second waiting task in the 2nd FPGA task queue inverted order sequence successively to each second to Processing task is scheduled.
As a kind of optional embodiment of the present invention, closed according to the size between the data volume of each second waiting task System, each second waiting task is ranked up, and after sequence according to sequencing or inverted order sequence successively by each second to Processing task schedule is handled into FPGA, so that larger corresponding second waiting task of data volume is preferentially in FPGA Reason.Further, can be when FPGA task queue be empty, data volume larger corresponding the in priority scheduling CPU task queue One waiting task, in order to preferably coordinate the resource using CPU and FPGA.
A kind of CPU-FPGA method for scheduling task based on feature identification provided in an embodiment of the present invention, due to to be processed The classification of task is realized based on the characteristic information of each waiting task feature vector generated, in be processed of scheduling Before business, cpu character information, FPGA characteristic information and the task unique characteristics information of each waiting task are comprehensively considered, in turn Classify to waiting task so that obtained the first waiting task is more suitable for handling in CPU after classification, second to Processing task is more suitable for handling in FPGA, realizes during CPU-FPGA task schedule, further increases CPU-FPGA's Load equilibrium, also, when being scheduled to waiting task, due to the size between the data volume based on waiting task Relationship is scheduled, therefore can preferably coordinate the resource using CPU and FPGA.
Corresponding to above method embodiment, the embodiment of the invention provides a kind of CPU-FPGA tasks based on feature identification Dispatching device, as shown in figure 3, the apparatus may include:
Module 201 is obtained, for obtaining the data volume of multiple waiting tasks and each waiting task, waiting task is The task of pending processing in CPU and FPGA, data volume is for data processing amount needed for indicating processing waiting task.
Extraction module 202, for extracting the characteristic information of each waiting task in multiple waiting tasks, characteristic information packet It includes: cpu character information, FPGA characteristic information and task unique characteristics information;Cpu character information for indicate CPU processing to The feature having when processing task, FPGA characteristic information are used for the feature for indicating to have when FPGA handles waiting task.
Generation module 203, for the cpu character information based on each waiting task, FPGA characteristic information and task are certainly Body characteristic information generates the feature vector of each waiting task;Feature vector is the characteristic information of waiting task through removal amount It is generated after guiding principle.
Categorization module 204, the classification mould trained in advance for the feature vector input by each waiting task generated In type, the classification results of each waiting task are obtained, classification results include: the first classification results and the second classification results, and first Corresponding first waiting task of classification results in CPU for handling, corresponding second waiting task of the second classification results For being handled in FPGA;Disaggregated model is according to classification corresponding to the corresponding feature vector of preset task and preset task Label training obtains.
First scheduler module 205, for the size relation between the data volume according to each first waiting task, to first Waiting task is ranked up, and each first waiting task after sequence is dispatched in CPU according to preset strategy Reason.
Second scheduler module 206, for the size relation between the data volume according to each second waiting task, to second Waiting task is ranked up, and each second waiting task after sequence is dispatched in FPGA according to preset strategy Reason.
A kind of CPU-FPGA task scheduling apparatus based on feature identification provided in an embodiment of the present invention, due to to be processed The classification of task is realized based on the characteristic information of each waiting task feature vector generated, in be processed of scheduling Before business, cpu character information, FPGA characteristic information and the task unique characteristics information of each waiting task are comprehensively considered, in turn Classify to waiting task so that obtained the first waiting task is more suitable for handling in CPU after classification, second to Processing task is more suitable for handling in FPGA, realizes during CPU-FPGA task schedule, further increases CPU-FPGA's Load equilibrium, also, when being scheduled to waiting task, due to the size between the data volume based on waiting task Relationship is scheduled, therefore can preferably coordinate the resource using CPU and FPGA.
It should be noted that the device of the embodiment of the present invention is and a kind of CPU- based on feature identification shown in FIG. 1 FPGA method for scheduling task corresponding device, a kind of CPU-FPGA method for scheduling task based on feature identification shown in FIG. 1 All embodiments are suitable for the device, and can reach identical beneficial effect.
Optionally, as shown in figure 4, generation module 203, comprising:
Dimension submodule 2031 is removed, for by the cpu character information of each waiting task, FPGA characteristic information and task Unique characteristics information removes dimension, obtains the cpu character data of each waiting task, and FPGA characteristic and task itself are special Levy data.
Generate submodule 2032, for according to preset rules by the cpu character data of each waiting task, FPGA characteristic Accordingly and task unique characteristics data, it is combined into the feature vector of each waiting task.
Optionally, the first scheduler module 205, is specifically used for:
By corresponding first waiting task of CPU task subset, between the data volume according to each first waiting task Size relation ascending sort obtains the first CPU task queue.
Alternatively, by corresponding first waiting task of CPU task subset, according to each first waiting task data volume it Between size relation descending sort, obtain the 2nd CPU task queue.
Second scheduler module 206, is specifically used for:
By corresponding second waiting task of FPGA task subset, between the data volume according to each second waiting task Size relation descending sort obtains the first FPGA task queue.
Alternatively, by corresponding second waiting task of FPGA task subset, according to the data volume of each second waiting task Between size relation ascending sort, obtain the 2nd FPGA task queue.
Optionally, the first scheduler module 205, is specifically used for:
For each first waiting task after sequence, according to each first waiting task in the first CPU task queue Each first waiting task in first CPU task queue is successively dispatched in CPU and handles by sequencing.
Alternatively, for each first waiting task after sequence, according to each first to be processed in the 2nd CPU task queue Each first waiting task in 2nd CPU task queue, is successively dispatched in CPU and handles by the inverted order sequence of business.
Optionally, the second scheduler module 206, is specifically used for:
For each second waiting task after sequence, according to each second waiting task in the first FPGA task queue Each second waiting task in first FPGA task queue is successively dispatched in FPGA and handles by sequencing.
Alternatively, for each second waiting task after sequence, it is to be processed according in the 2nd FPGA task queue each second Each second waiting task in 2nd FPGA task queue, is successively dispatched in FPGA by the inverted order sequence of task Reason.
The embodiment of the invention also provides a kind of electronic equipment, as shown in figure 5, include processor 301, communication interface 302, Memory 303 and communication bus 304, wherein processor 301, communication interface 302, memory 303 are complete by communication bus 304 At mutual communication,
Memory 303, for storing computer program;
Processor 301 when for executing the program stored on memory 303, is realized any of the above-described a kind of based on feature The step of CPU-FPGA method for scheduling task of identification.
A kind of electronic equipment provided in an embodiment of the present invention, since the classification to waiting task is based on each to be processed The characteristic information of business feature vector generated before dispatching waiting task, comprehensively considers each waiting task come what is realized Cpu character information, FPGA characteristic information and task unique characteristics information, and then classify to waiting task so that The first waiting task obtained after classification is more suitable for handling in CPU, and the second waiting task is more suitable in FPGA Reason is realized during CPU-FPGA task schedule, further increases the load equilibrium of CPU-FPGA, also, treating place It, can be more since the size relation between the data volume based on waiting task is scheduled when reason task is scheduled Good coordination utilizes the resource of CPU and FPGA.
The communication bus that above-mentioned electronic equipment is mentioned can be Peripheral Component Interconnect standard (Peripheral Component Interconnect, PCI) bus or expanding the industrial standard structure (Extended Industry Standard Architecture, EISA) bus etc..The communication bus can be divided into address bus, data/address bus, control bus etc..For just It is only indicated with a thick line in expression, figure, it is not intended that an only bus or a type of bus.
Communication interface is for the communication between above-mentioned electronic equipment and other equipment.
Memory may include random access memory (Random Access Memory, RAM), also may include non-easy The property lost memory (Non-Volatile Memory, NVM), for example, at least a magnetic disk storage.Optionally, memory may be used also To be storage device that at least one is located remotely from aforementioned processor.
Above-mentioned processor can be general processor, including central processing unit (Central Processing Unit, CPU), network processing unit (Network Processor, NP) etc.;It can also be digital signal processor (Digital Signal Processing, DSP), it is specific integrated circuit (Application Specific Integrated Circuit, ASIC), existing It is field programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic device, discrete Door or transistor logic, discrete hardware components.
In another embodiment provided by the invention, a kind of computer readable storage medium is additionally provided, which can It reads to be stored with computer program in storage medium, the computer program realizes that any of the above-described one kind is based on when being executed by processor The step of CPU-FPGA method for scheduling task of feature identification.
In another embodiment provided by the invention, a kind of computer program product comprising instruction is additionally provided, when it When running on computers, so that computer executes any CPU-FPGA task based on feature identification in above-described embodiment The step of dispatching method.
In the above-described embodiments, can come wholly or partly by software, hardware, firmware or any combination thereof real It is existing.When implemented in software, it can entirely or partly realize in the form of a computer program product.The computer program Product includes one or more computer instructions.When loading on computers and executing the computer program instructions, all or It partly generates according to process or function described in the embodiment of the present invention.The computer can be general purpose computer, dedicated meter Calculation machine, computer network or other programmable devices.The computer instruction can store in computer readable storage medium In, or from a computer readable storage medium to the transmission of another computer readable storage medium, for example, the computer Instruction can pass through wired (such as coaxial cable, optical fiber, number from a web-site, computer, server or data center User's line (DSL)) or wireless (such as infrared, wireless, microwave etc.) mode to another web-site, computer, server or Data center is transmitted.The computer readable storage medium can be any usable medium that computer can access or It is comprising data storage devices such as one or more usable mediums integrated server, data centers.The usable medium can be with It is magnetic medium, (for example, floppy disk, hard disk, tape), optical medium (for example, DVD) or semiconductor medium (such as solid state hard disk Solid State Disk (SSD)) etc..
It should be noted that, in this document, relational terms such as first and second and the like are used merely to a reality Body or operation are distinguished with another entity or operation, are deposited without necessarily requiring or implying between these entities or operation In any actual relationship or order or sequence.Moreover, the terms "include", "comprise" or its any other variant are intended to Non-exclusive inclusion, so that the process, method, article or equipment including a series of elements is not only wanted including those Element, but also including other elements that are not explicitly listed, or further include for this process, method, article or equipment Intrinsic element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that There is also other identical elements in process, method, article or equipment including the element.
Each embodiment in this specification is all made of relevant mode and describes, same and similar portion between each embodiment Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for device/ For electronic equipment embodiment, since it is substantially similar to the method embodiment, so be described relatively simple, related place referring to The part of embodiment of the method illustrates.
The foregoing is merely illustrative of the preferred embodiments of the present invention, is not intended to limit the scope of the present invention.It is all Any modification, equivalent replacement, improvement and so within the spirit and principles in the present invention, are all contained in protection scope of the present invention It is interior.

Claims (10)

1. a kind of CPU-FPGA method for scheduling task based on feature identification, which is characterized in that the described method includes:
Obtain the data volume of multiple waiting tasks and each waiting task, the waiting task is the CPU and described The task of pending processing in FPGA, the data volume is for data processing amount needed for indicating the processing waiting task;
The characteristic information of each waiting task in the multiple waiting task is extracted, the characteristic information includes: cpu character letter Breath, FPGA characteristic information and task unique characteristics information;The cpu character information is described to be processed for indicating CPU processing The feature having when task, the FPGA characteristic information are used for the feature for indicating to have when FPGA handles the waiting task;
Based on the cpu character information of each waiting task, FPGA characteristic information and task unique characteristics information are generated The feature vector of each waiting task;Described eigenvector is the characteristic information of the waiting task after removing dimension It generates;
Will in the trained in advance disaggregated model of feature vector input of each waiting task generated, obtain it is each it is described to The classification results of processing task, the classification results include: the first classification results and the second classification results, the first classification knot Corresponding first waiting task of fruit for handling in CPU, use by corresponding second waiting task of second classification results In being handled in FPGA;The disaggregated model is according to class corresponding to the corresponding feature vector of preset task and preset task Distinguishing label training obtains;
According to the size relation between the data volume of each first waiting task, first waiting task is arranged Sequence, and each first waiting task after sequence is dispatched in CPU according to preset strategy and is handled;
According to the size relation between the data volume of each second waiting task, second waiting task is arranged Sequence, and each second waiting task after sequence is dispatched in FPGA according to preset strategy and is handled.
2. the method according to claim 1, wherein the cpu character letter based on each waiting task The step of breath, FPGA characteristic information and task unique characteristics information, the feature vector of each waiting task of generation, packet It includes:
By the cpu character information of each waiting task, FPGA characteristic information and task unique characteristics information remove dimension, Obtain the cpu character data of each waiting task, FPGA characteristic and task unique characteristics data;
According to preset rules by the cpu character data of each waiting task, FPGA characteristic and task unique characteristics Data are combined into the feature vector of each waiting task.
3. according to the method described in claim 2, it is characterized in that, first classification results are CPU task subset, described the Two classification results are FPGA task subset, the size relation between the data volume according to each first waiting task, The step of first waiting task is ranked up, comprising:
By corresponding first waiting task of the CPU task subset, between the data volume according to each first waiting task Size relation ascending sort obtains the first CPU task queue;
Alternatively, by corresponding first waiting task of the CPU task subset, according to each first waiting task data volume it Between size relation descending sort, obtain the 2nd CPU task queue;
Size relation between the data volume according to each second waiting task, to second waiting task into The step of row sequence, comprising:
By corresponding second waiting task of the FPGA task subset, between the data volume according to each second waiting task Size relation descending sort obtains the first FPGA task queue;
Alternatively, by corresponding second waiting task of the FPGA task subset, according to the data volume of each second waiting task Between size relation ascending sort, obtain the 2nd FPGA task queue.
4. according to the method described in claim 3, it is characterized in that, each first waiting task by after sequence is pressed The step of being handled in CPU is dispatched to according to preset strategy, comprising:
For each first waiting task after sequence, according to each first waiting task in the first CPU task queue Each first waiting task in the first CPU task queue is successively dispatched in CPU and handles by sequencing;
Alternatively, for each first waiting task after sequence, according to each first to be processed in the 2nd CPU task queue Each first waiting task in the 2nd CPU task queue, is successively dispatched in CPU by the inverted order sequence of business Reason.
5. according to the method described in claim 3, it is characterized in that, each second waiting task by after sequence is pressed The step of being handled in FPGA is dispatched to according to preset strategy, comprising:
For each second waiting task after sequence, according to each second waiting task in the first FPGA task queue Each second waiting task in the first FPGA task queue is successively dispatched in FPGA and handles by sequencing;
Alternatively, for each second waiting task after sequence, it is to be processed according in the 2nd FPGA task queue each second Each second waiting task in the 2nd FPGA task queue, is successively dispatched in FPGA and carries out by the inverted order sequence of task Processing.
6. a kind of CPU-FPGA task scheduling apparatus based on feature identification, which is characterized in that described device includes:
Module is obtained, for obtaining the data volume of multiple waiting tasks and each waiting task, the waiting task is institute The task of pending processing in the CPU and FPGA is stated, the data volume is for indicating needed for handling the waiting task Data processing amount;
Extraction module, for extracting the characteristic information of each waiting task in the multiple waiting task, the characteristic information It include: cpu character information, FPGA characteristic information and task unique characteristics information;The cpu character information is for indicating CPU The feature having when handling the waiting task, the FPGA characteristic information is for indicating that FPGA handles the waiting task When the feature that has;
Generation module, for the cpu character information based on each waiting task, FPGA characteristic information and task itself Characteristic information generates the feature vector of each waiting task;Described eigenvector is that the feature of the waiting task is believed What breath generated after removing dimension;
Categorization module, the disaggregated model trained in advance for the feature vector input by each waiting task generated In, the classification results of each waiting task are obtained, the classification results include: the first classification results and the second classification knot Fruit, for corresponding first waiting task of first classification results for handling in CPU, second classification results are corresponding Second waiting task in FPGA for handling;The disaggregated model be according to the corresponding feature vector of preset task, and it is pre- If the training of class label corresponding to task obtains;
First scheduler module, for the size relation between the data volume according to each first waiting task, to described One waiting task is ranked up, and each first waiting task after sequence is dispatched in CPU according to preset strategy It is handled;
Second scheduler module, for the size relation between the data volume according to each second waiting task, to described Two waiting tasks are ranked up, and each second waiting task after sequence is dispatched in FPGA according to preset strategy It is handled.
7. device according to claim 6, which is characterized in that the generation module, comprising:
Dimension submodule is removed, for by the cpu character information of each waiting task, FPGA characteristic information and task itself Characteristic information removes dimension, obtains the cpu character data of each waiting task, FPGA characteristic and task unique characteristics number According to;
Generate submodule, for according to preset rules by the cpu character data of each waiting task, FPGA characteristic with And task unique characteristics data, it is combined into the feature vector of each waiting task.
8. device according to claim 7, which is characterized in that first scheduler module is specifically used for:
By corresponding first waiting task of the CPU task subset, between the data volume according to each first waiting task Size relation ascending sort obtains the first CPU task queue;
Alternatively, by corresponding first waiting task of the CPU task subset, according to each first waiting task data volume it Between size relation descending sort, obtain the 2nd CPU task queue;
Second scheduler module, is specifically used for:
By corresponding second waiting task of the FPGA task subset, between the data volume according to each second waiting task Size relation descending sort obtains the first FPGA task queue;
Alternatively, by corresponding second waiting task of the FPGA task subset, according to the data volume of each second waiting task Between size relation ascending sort, obtain the 2nd FPGA task queue.
9. a kind of electronic equipment, which is characterized in that including processor, communication interface, memory and communication bus, wherein processing Device, communication interface, memory complete mutual communication by communication bus;
Memory, for storing computer program;
Processor when for executing the program stored on memory, realizes any method and step of claim 1-5.
10. a kind of computer readable storage medium, which is characterized in that be stored with computer in the computer readable storage medium Program realizes claim 1-5 any method and step when the computer program is executed by processor.
CN201910563352.0A 2019-06-26 2019-06-26 CPU-FPGA task scheduling method and device based on feature recognition Active CN110262887B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910563352.0A CN110262887B (en) 2019-06-26 2019-06-26 CPU-FPGA task scheduling method and device based on feature recognition

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910563352.0A CN110262887B (en) 2019-06-26 2019-06-26 CPU-FPGA task scheduling method and device based on feature recognition

Publications (2)

Publication Number Publication Date
CN110262887A true CN110262887A (en) 2019-09-20
CN110262887B CN110262887B (en) 2022-04-01

Family

ID=67921995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910563352.0A Active CN110262887B (en) 2019-06-26 2019-06-26 CPU-FPGA task scheduling method and device based on feature recognition

Country Status (1)

Country Link
CN (1) CN110262887B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110908797A (en) * 2019-11-07 2020-03-24 浪潮电子信息产业股份有限公司 Call request data processing method, device, equipment, storage medium and system
CN111061547A (en) * 2019-10-24 2020-04-24 中国科学院计算技术研究所 Task scheduling method and system for heterogeneous system
CN111400007A (en) * 2020-03-13 2020-07-10 重庆特斯联智慧科技股份有限公司 Task scheduling method and system based on edge calculation
CN116073890A (en) * 2023-03-06 2023-05-05 成都星联芯通科技有限公司 Service data processing method, device, receiving equipment, earth station and storage medium

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101441579A (en) * 2008-12-02 2009-05-27 南京大学 Three-dimensional model library characteristic extracting method based on cluster computing system
CN101717817A (en) * 2009-07-17 2010-06-02 中国人民解放军国防科学技术大学 Method for accelerating RNA secondary structure prediction based on stochastic context-free grammar
JP2011197803A (en) * 2010-03-17 2011-10-06 Ricoh Co Ltd Program execution control method
CN103197976A (en) * 2013-04-11 2013-07-10 华为技术有限公司 Method and device for processing tasks of heterogeneous system
CN107273331A (en) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 A kind of heterogeneous computing system and method based on CPU+GPU+FPGA frameworks
CN107861606A (en) * 2017-11-21 2018-03-30 北京工业大学 A kind of heterogeneous polynuclear power cap method by coordinating DVFS and duty mapping
CN108334405A (en) * 2017-01-20 2018-07-27 阿里巴巴集团控股有限公司 Frequency isomery CPU, frequency isomery implementation method, device and method for scheduling task
CN108629355A (en) * 2017-03-21 2018-10-09 北京京东尚科信息技术有限公司 Method and apparatus for generating workload information
CN108776649A (en) * 2018-06-11 2018-11-09 山东超越数控电子股份有限公司 One kind being based on CPU+FPGA heterogeneous computing systems and its accelerated method
CN109101339A (en) * 2018-08-15 2018-12-28 北京邮电大学 Video task parallel method, device and Heterogeneous Cluster Environment in isomeric group
CN109408148A (en) * 2018-10-25 2019-03-01 北京计算机技术及应用研究所 A kind of production domesticization computing platform and its apply accelerated method
CN109542596A (en) * 2018-10-22 2019-03-29 西安交通大学 A kind of Scheduling Framework based on OpenCL kernel tasks
CN109828790A (en) * 2019-01-31 2019-05-31 上海赜睿信息科技有限公司 A kind of data processing method and system based on Shen prestige isomery many-core processor

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101441579A (en) * 2008-12-02 2009-05-27 南京大学 Three-dimensional model library characteristic extracting method based on cluster computing system
CN101717817A (en) * 2009-07-17 2010-06-02 中国人民解放军国防科学技术大学 Method for accelerating RNA secondary structure prediction based on stochastic context-free grammar
JP2011197803A (en) * 2010-03-17 2011-10-06 Ricoh Co Ltd Program execution control method
CN103197976A (en) * 2013-04-11 2013-07-10 华为技术有限公司 Method and device for processing tasks of heterogeneous system
CN108334405A (en) * 2017-01-20 2018-07-27 阿里巴巴集团控股有限公司 Frequency isomery CPU, frequency isomery implementation method, device and method for scheduling task
CN108629355A (en) * 2017-03-21 2018-10-09 北京京东尚科信息技术有限公司 Method and apparatus for generating workload information
CN107273331A (en) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 A kind of heterogeneous computing system and method based on CPU+GPU+FPGA frameworks
CN107861606A (en) * 2017-11-21 2018-03-30 北京工业大学 A kind of heterogeneous polynuclear power cap method by coordinating DVFS and duty mapping
CN108776649A (en) * 2018-06-11 2018-11-09 山东超越数控电子股份有限公司 One kind being based on CPU+FPGA heterogeneous computing systems and its accelerated method
CN109101339A (en) * 2018-08-15 2018-12-28 北京邮电大学 Video task parallel method, device and Heterogeneous Cluster Environment in isomeric group
CN109542596A (en) * 2018-10-22 2019-03-29 西安交通大学 A kind of Scheduling Framework based on OpenCL kernel tasks
CN109408148A (en) * 2018-10-25 2019-03-01 北京计算机技术及应用研究所 A kind of production domesticization computing platform and its apply accelerated method
CN109828790A (en) * 2019-01-31 2019-05-31 上海赜睿信息科技有限公司 A kind of data processing method and system based on Shen prestige isomery many-core processor

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
H. TOPCUOUGLU 等: "Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》 *
MEHMET E. BELVIRANLI 等: "A dynamic self-scheduling scheme for heterogeneous multiprocessor architectures", 《ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION》 *
XUECHAO WEI 等: "Throughput optimization for streaming applications on CPU-FPGA heterogeneous systems", 《2017 22ND ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE (ASP-DAC)》 *
张丹 等: "面向异构体系结构的任务流模型", 《信息工程大学学报》 *
张胜辉: "基于FPGA加速的异构计算多结点系统实时硬件任务调度与管理", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
钟诚等: "异构机群系统上带返回信息的可分负载多轮调度算法", 《计算机研究与发展》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061547A (en) * 2019-10-24 2020-04-24 中国科学院计算技术研究所 Task scheduling method and system for heterogeneous system
CN111061547B (en) * 2019-10-24 2023-04-11 中国科学院计算技术研究所 Task scheduling method and system for heterogeneous system
CN110908797A (en) * 2019-11-07 2020-03-24 浪潮电子信息产业股份有限公司 Call request data processing method, device, equipment, storage medium and system
CN110908797B (en) * 2019-11-07 2023-09-15 浪潮电子信息产业股份有限公司 Call request data processing method, device, equipment, storage medium and system
CN111400007A (en) * 2020-03-13 2020-07-10 重庆特斯联智慧科技股份有限公司 Task scheduling method and system based on edge calculation
CN116073890A (en) * 2023-03-06 2023-05-05 成都星联芯通科技有限公司 Service data processing method, device, receiving equipment, earth station and storage medium
CN116073890B (en) * 2023-03-06 2023-06-02 成都星联芯通科技有限公司 Service data processing method, device, receiving equipment, earth station and storage medium

Also Published As

Publication number Publication date
CN110262887B (en) 2022-04-01

Similar Documents

Publication Publication Date Title
CN110262887A (en) CPU-FPGA method for scheduling task and device based on feature identification
CN104424339B (en) The method, apparatus and system of data analysis
CN105808328B (en) The methods, devices and systems of task schedule
CN108519911A (en) The dispatching method and device of resource in a kind of cluster management system based on container
CN110378235A (en) A kind of fuzzy facial image recognition method, device and terminal device
CN106506670B (en) A kind of cloud platform virtual resource high speed dispatching method and system
CN104657205B (en) A kind of video content analysis method and system based on virtualization
CN106951926A (en) The deep learning systems approach and device of a kind of mixed architecture
TW201023042A (en) Scheduler of virtual machine module, scheduling method thereof, and device containing computer software
US20140059054A1 (en) Parallel generation of topics from documents
CN108229651A (en) Neural network model moving method and system, electronic equipment, program and medium
CN108549583A (en) Big data processing method, device, server and readable storage medium storing program for executing
CN103885820B (en) Information processor and information processing method
CN110427262A (en) A kind of gene data analysis method and isomery dispatching platform
CN109739833A (en) A kind of Domestic Platform database accelerator system and method based on FPGA
CN103336672B (en) Method for reading data, device and computing device
CN109067867A (en) The virtualization container service elastic telescopic method of data-oriented central loading monitoring
Behzad et al. Queue based job scheduling algorithm for cloud computing
CN110083728A (en) A kind of methods, devices and systems of optimization automation image data cleaning quality
CN110347602A (en) Multitask script execution and device, electronic equipment and readable storage medium storing program for executing
CN110414778A (en) Case work dispatching method and device
CN111639044A (en) Method and device for supporting interrupt priority polling arbitration dispatching
CN109983459A (en) Method and apparatus for identifying the counting of the N-GRAM occurred in corpus
CN108491872A (en) Target recognition methods and device, electronic equipment, program and storage medium again
CN110300959A (en) Task management when dynamic operation

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