CN108491259B - Remote sensing algorithm flow Method of Scheduling Parallel and device - Google Patents

Remote sensing algorithm flow Method of Scheduling Parallel and device Download PDF

Info

Publication number
CN108491259B
CN108491259B CN201810292764.0A CN201810292764A CN108491259B CN 108491259 B CN108491259 B CN 108491259B CN 201810292764 A CN201810292764 A CN 201810292764A CN 108491259 B CN108491259 B CN 108491259B
Authority
CN
China
Prior art keywords
node
execution
remote sensing
executes
executing
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.)
Active
Application number
CN201810292764.0A
Other languages
Chinese (zh)
Other versions
CN108491259A (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.)
Aerospace Hongtu Information Technology Co Ltd
Original Assignee
Beijing Aerospace Hongtu Information Technology Ltd By Share Ltd
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 Aerospace Hongtu Information Technology Ltd By Share Ltd filed Critical Beijing Aerospace Hongtu Information Technology Ltd By Share Ltd
Priority to CN201810292764.0A priority Critical patent/CN108491259B/en
Publication of CN108491259A publication Critical patent/CN108491259A/en
Application granted granted Critical
Publication of CN108491259B publication Critical patent/CN108491259B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Selective Calling Equipment (AREA)

Abstract

The present invention provides a kind of remote sensing algorithm flow Method of Scheduling Parallel and devices, this method comprises: loading remote sensing algorithm flow data structure by executing sequence controller, generate and execute node data structure;It analyzes node data structure is executed, obtains executing dependence;Each execution node is controlled by execution sequence controller, and each executing node and being included for task is executed in remote sensing algorithm execution pond according to dependence is executed.Remote sensing algorithm flow in the present invention is in the process of implementation, its task of being included serially is executed in the presence of between the execution node for executing dependence, there is no execute its task of being included parallel between the execution node for executing dependence, in this way, the execution efficiency for substantially increasing algorithm, alleviate existing remote sensing algorithm flow when being executed inefficiency the problem of.

Description

Remote sensing algorithm flow Method of Scheduling Parallel and device
Technical field
The present invention relates to the technical field of remote sensing algorithm, more particularly, to a kind of remote sensing algorithm flow Method of Scheduling Parallel and Device.
Background technique
With the development of remote sensing satellite technology, remote sensing image data has become geography information and obtains and analyze significant data Source is illustrated so that Forest road hierarchy monitors as an example below.
Forestry is to maintain the ecological balance, and cultivating and conserving forests obtains timber and other forestry products, utilizes woods to obtain The natural characteristic of wood is one of important component of national economy to play the production division of protective action.Forest is covered in China Lid rate is only 16.55%, and the 3% of forest total accumulation deficiency world total amount.Since production and construction occupy, felling and growth are moved back The reasons such as change, forest land resource are lost seriously, therefore monitoring and protect forest land resource in time is an important task.Remote sensing is The important means of forestry monitoring, can obtain and grasp in time Forest road hierarchy situation by satellite remote-sensing image data.But it is comprehensive The processing remotely-sensed data of conjunction property and the software systems not yet mature for obtaining Forest road hierarchy situation automatically.
In order to complete a certain item work, when handling remotely-sensed data, a variety of remote sensing algorithms are often related to.It is existing In technology, in the execution of remote sensing algorithm flow, it is not intended that the dependence between remote sensing algorithm, is executed using serial Mode carry out.For example, now, there are four kinds of remote sensing algorithms, are A algorithm, B algorithm, C algorithm, D-algorithm, wherein A algorithm respectively After having executed, obtained result is transferred to B algorithm, and B algorithm could execute, and after C algorithm has executed, obtained result is transferred to D Algorithm, D-algorithm could execute, that is to say, that there are dependences between A algorithm and B algorithm, exist between C algorithm and D-algorithm Dependence often first carries out A algorithm, then execute B algorithm when existing remote sensing algorithm flow executes, and executes C calculation again later Method and D-algorithm, and the method inefficiency that this sequence executes
To sum up, there is inefficiency in existing remote sensing algorithm flow when being executed.
Summary of the invention
In view of this, the purpose of the present invention is to provide a kind of remote sensing algorithm flow Method of Scheduling Parallel and device, with slow Solve existing remote sensing algorithm flow has inefficiency when being executed.
In a first aspect, the embodiment of the invention provides a kind of remote sensing algorithm flow Method of Scheduling Parallel, which comprises
Remote sensing algorithm flow data structure is loaded by executing sequence controller, generates and executes node data structure, wherein Include multiple execution nodes in the execution node data structure, includes a kind of remote sensing algorithm task in each execution node;
The execution node data structure is analyzed, obtains executing dependence, wherein the execution dependence For the dependence between each execution node;
Each execution node is controlled according to the execution dependence in remote sensing algorithm by the execution sequence controller It executes and executes the task that each execution node is included in pond, wherein there are between the execution node for executing dependence Its task of being included serially is executed, there is no execute what it was included parallel between the execution node for executing dependence Task.
With reference to first aspect, the embodiment of the invention provides the first possible embodiments of first aspect, wherein institute It states before being located at current execution node in multiple execution nodes and is described with the current adjacent execution node of node that executes The current forerunner's node for executing node, be located at current the executions node later in the multiple executions node and with it is described currently Executing the adjacent node that executes of node is the current successor node for executing node, and the execution node there is no forerunner's node is Level-one executes node.
With reference to first aspect, the embodiment of the invention provides second of possible embodiments of first aspect, wherein logical It crosses the execution sequence controller and controls each execution node according to the execution dependence in remote sensing algorithm execution pond It is middle to execute each node task of being included that executes and include:
All level-ones are executed node to be added in remote sensing algorithm execution pond, so that all level-ones execute Node executes its task of being included parallel;
The execution state that each level-one executes node is monitored, to supervise the execution process that the level-one executes node, wherein The execution state includes following any: being not carried out state, operating status, completion status.
With reference to first aspect, the embodiment of the invention provides the third possible embodiments of first aspect, wherein logical It crosses the execution sequence controller and controls each execution node according to the execution dependence in remote sensing algorithm execution pond It is middle to execute each executing node and being included for task further include:
When the execution state for currently executing node is completion status, if there are subsequent knots for the current execution node The accredited number of the successor node is then added 1 by point;
Obtain the number of forerunner's node corresponding to the successor node;
The number determination of forerunner's node corresponding to accredited number and the successor node based on the successor node is held Row process.
With reference to first aspect, the embodiment of the invention provides the 4th kind of possible embodiments of first aspect, wherein base The number of forerunner's node corresponding to the accredited number and the successor node of the successor node determines that executing process includes:
It, will if the accredited number of the successor node is equal to the number of forerunner's node corresponding to the successor node The successor node is added to the remote sensing algorithm and executes in pond, so that the successor node executes its task of being included;
If the accredited number of the successor node is less than the number of forerunner's node corresponding to the successor node, After the execution state of all forerunner's nodes of the successor node becomes the completion status, institute in the successor node is executed Task of including.
With reference to first aspect, the embodiment of the invention provides the 5th kind of possible embodiments of first aspect, wherein Each execution node is controlled by the execution sequence controller to be executed according to the execution dependence in the remote sensing algorithm After executing the task that each execution node is included in pond, the method also includes:
Obtain all execution states for executing node;
If all execution states for executing node are completion status, the remote sensing algorithm flow executes knot Beam.
With reference to first aspect, the embodiment of the invention provides the 6th kind of possible embodiments of first aspect, wherein institute Stating remote sensing algorithm and executing pond includes thread pool.
Second aspect, the embodiment of the invention also provides a kind of remote sensing algorithm flow Parallel Scheduling device, described device packets It includes:
Loading module generates for loading remote sensing algorithm flow data structure by executing sequence controller and executes node Data structure, wherein include multiple execution nodes in the execution node data structure, include a kind of distant in each execution node Feel algorithm task;
Analysis module obtains executing dependence, wherein institute for analyzing the execution node data structure Stating and executing dependence is the dependence between each execution node;
Execution module relies on pass according to the execution for controlling each execution node by the execution sequence controller It ties up to and executes the task that each execution node is included in remote sensing algorithm execution pond, wherein there are the execution dependences It executes and serially executes its task of being included between node, there is no hold parallel between the execution node for executing dependence The capable task that it is included.
In conjunction with second aspect, the embodiment of the invention provides the first possible embodiments of second aspect, wherein institute It states before being located at current execution node in multiple execution nodes and is described with the current adjacent execution node of node that executes The current forerunner's node for executing node, be located at current the executions node later in the multiple executions node and with it is described currently Executing the adjacent node that executes of node is the current successor node for executing node, and the execution node there is no forerunner's node is Level-one executes node.
In conjunction with second aspect, the embodiment of the invention provides second of possible embodiments of second aspect, wherein institute Stating execution module includes:
Adding unit is added in remote sensing algorithm execution pond, so that described for all level-ones to be executed node All level-ones execute node and execute its task of being included parallel;
Monitoring unit executes the execution state of node for monitoring each level-one, executes node to supervise the level-one Execute process, wherein the execution state includes following any: being not carried out state, operating status, completion status.
The embodiment of the present invention brings following the utility model has the advantages that the embodiment of the invention provides a kind of remote sensing algorithm flow is parallel Dispatching method and device are generated and are executed this method comprises: loading remote sensing algorithm flow data structure by executing sequence controller Node data structure, wherein executing includes multiple execution nodes in node data structure, comprising a kind of distant in each execution node Feel algorithm task;It analyzes node data structure is executed, obtains executing dependence, wherein it is each for executing dependence Dependence between a execution node;Existed by executing each execution node of sequence controller control according to dependence is executed Remote sensing algorithm executes and executes the task that each execution node is included in pond, wherein there is the execution node for executing dependence Between serially execute its task of being included, there is no execute dependence execution node between execute what it was included parallel Task.
In the prior art, when remote sensing algorithm flow executes, it is not intended that the dependence between remote sensing algorithm, is all adopted With serially carrying out, efficiency is greatly reduced.Compared with existing remote sensing algorithm flow, the embodiment of the present invention is provided Remote sensing algorithm flow Method of Scheduling Parallel in, by execute sequence controller load remote sensing algorithm flow data structure, thus It obtains executing node data structure, then, analyzes node data structure is executed, obtain executing dependence, in turn, lead to It crosses execution sequence controller and controls each executions node and wrapped according to executing dependence and execute it in remote sensing algorithm execution pond Containing for task exists in the process of implementation and serially executes its task of being included between the execution node for executing dependence, no Its task of being included is executed parallel in the presence of between the execution node for executing dependence, in this way, substantially increasing holding for algorithm Line efficiency, alleviate existing remote sensing algorithm flow when being executed inefficiency the problem of.
Other features and advantages of the present invention will illustrate in the following description, also, partly become from specification It obtains it is clear that understand through the implementation of the invention.The objectives and other advantages of the invention are in specification, claims And specifically noted structure is achieved and obtained in attached drawing.
To enable the above objects, features and advantages of the present invention to be clearer and more comprehensible, preferred embodiment is cited below particularly, and cooperate Appended attached drawing, is described in detail below.
Detailed description of the invention
It, below will be to specific in order to illustrate more clearly of the specific embodiment of the invention or technical solution in the prior art Embodiment or attached drawing needed to be used in the description of the prior art be briefly described, it should be apparent that, it is described below Attached drawing is some embodiments of the present invention, for those of ordinary skill in the art, before not making the creative labor It puts, is also possible to obtain other drawings based on these drawings.
Fig. 1 is a kind of flow chart of remote sensing algorithm flow Method of Scheduling Parallel provided in an embodiment of the present invention;
Fig. 2 is remote sensing algorithm flow data structure provided in an embodiment of the present invention and the signal for executing node data structure Figure;
Fig. 3 is provided in an embodiment of the present invention a kind of by executing each execution node of sequence controller control according to execution Dependence executes the method flow diagram that the task that each execution node is included is executed in pond in remote sensing algorithm;
Fig. 4 is provided in an embodiment of the present invention another to control each execution node according to holding by executing sequence controller Row dependence executes the method flow diagram that the task that each execution node is included is executed in pond in remote sensing algorithm;
Fig. 5 is a kind of functional block diagram of remote sensing algorithm flow Parallel Scheduling device provided in an embodiment of the present invention.
Specific embodiment
In order to make the object, technical scheme and advantages of the embodiment of the invention clearer, below in conjunction with attached drawing to the present invention Technical solution be clearly and completely described, it is clear that described embodiments are some of the embodiments of the present invention, rather than Whole embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art are not making creative work premise Under every other embodiment obtained, shall fall within the protection scope of the present invention.
For convenient for understanding the present embodiment, first simultaneously to a kind of remote sensing algorithm flow disclosed in the embodiment of the present invention Row dispatching method describes in detail.
Embodiment one:
A kind of remote sensing algorithm flow Method of Scheduling Parallel, with reference to Fig. 1, this method comprises:
S102, remote sensing algorithm flow data structure is loaded by executing sequence controller, generates and executes node data structure, Wherein, executing includes multiple execution nodes in node data structure, includes a kind of remote sensing algorithm task in each execution node;
In embodiments of the present invention, remote sensing algorithm flow data structure is the data structure obtained in advance.The remote sensing algorithm Flow data structure is used to describe the data structure of logical relation between execution sequence between remote sensing algorithm, includes in the structure It include altogether which remote sensing algorithm when process executes, which algorithm must be executed serially, which algorithm must execute parallel.
After executing sequence controller load remote sensing algorithm flow data structure, it will be able to generate and execute node data knot Structure.
Specifically, executing the administrative section that sequence controller is whole system, all execution nodes can be managed, it can The executive condition for checking remote sensing algorithm flow is externally provided.And it is the adaptation for connecting remote sensing algorithm that it is practical, which to execute node data structure, Device, it is, executing in each of node data structure node includes a kind of remote sensing algorithm task (it is considered that every A kind of structure that remote sensing algorithm packaging can be identified at remote sensing algorithm execution pond), the execution node data structure and remote sensing algorithm Pond matching is executed, in addition, by including the execution dependence between executing node in the execution node data structure.By this It executes node data structure and is able to access that the current forerunner's node and successor node for executing node, while also can currently be held The accredited number and execution state of row node.
Generally, with reference to Fig. 2, if now there are five kinds of algorithms, A algorithm, B algorithm, C algorithm, D-algorithm, E algorithm, Wherein, after A algorithm has executed, obtained result is transferred to B algorithm, and B algorithm could execute, after C algorithm has executed, obtained knot Fruit is transferred to D-algorithm, and D-algorithm could execute, and after B algorithm and D-algorithm have executed, obtained result is all transferred to E algorithm, and E is calculated Method could execute, that is to say, that and there are dependences between A algorithm and B algorithm, there are dependence between C algorithm and D-algorithm, All with E algorithm there are dependence, such relationship is exactly remote sensing algorithm flow data structure for B algorithm, D-algorithm.Obtain it is distant Feel algorithm flow data structure, executes sequence controller and load the remote sensing algorithm flow data structure, it will be able to obtain executing knot Point data structure.It is independent between each remote sensing algorithm, if be not carried out in above-mentioned remote sensing algorithm flow data structure Node data structure can not find B algorithm after the completion of A algorithm executes, and only obtain executing (such as A after node data structure Corresponding algorithm is node 1, and corresponding B algorithm is node 2), it could pass through and execute the dependence of node (for example node 1 is held Node 2 is executed after having gone) establish dependence between each algorithm.
S104, execution node data structure is analyzed, obtains executing dependence, wherein executing dependence is Dependence between each execution node;
Obtain execute node data structure after, to execute node data structure analyze, obtain execute node between Execute dependence.It executes and executes dependence between execution dependence i.e. remote sensing algorithm task wherein included between node Relationship.
S106, each execution node is controlled according to execution dependence in the execution of remote sensing algorithm by executing sequence controller The task that each execution node is included is executed in pond, wherein exist and serially execute between the execution node for executing dependence Its task of being included, there is no execute its task of being included parallel between the execution node for executing dependence.
After obtaining executing dependence, closed by executing each execution node of sequence controller control according to dependence is executed It ties up in remote sensing algorithm execution pond and executes each executing node and being included for task, when being executed, there is execution dependence It executes and serially executes its task of being included between node, there is no execute it parallel between the execution node for executing dependence Task of being included, to realize the maximization of execution efficiency.
Specifically, remote sensing algorithm executes the final execution place that pond is remote sensing algorithm task, it is capable of providing remote sensing algorithm and appoints The concurrent asynchronous of business executes, and assigns execution task by executing sequence controller for it, then, is held according to execution task Row reports implementing result to execution sequence controller when remote sensing algorithm task execution is completed.
Optionally, it includes thread pool that remote sensing algorithm, which executes pond,.The thread pool can be open source, or user itself Definition, certainly, remote sensing algorithm executes pond can also be comprising other forms, and the embodiment of the present invention is to it without specifically limiting System.
In the prior art, when remote sensing algorithm flow executes, it is not intended that the dependence between remote sensing algorithm, is all adopted With serially carrying out, efficiency is greatly reduced.Compared with existing remote sensing algorithm flow, the embodiment of the present invention is provided Remote sensing algorithm flow Method of Scheduling Parallel in, by execute sequence controller load remote sensing algorithm flow data structure, thus It obtains executing node data structure, then, analyzes node data structure is executed, obtain executing dependence, in turn, lead to It crosses execution sequence controller and controls each executions node and wrapped according to executing dependence and execute it in remote sensing algorithm execution pond Containing for task exists in the process of implementation and serially executes its task of being included between the execution node for executing dependence, no Its task of being included is executed parallel in the presence of between the execution node for executing dependence, in this way, substantially increasing holding for algorithm Line efficiency, alleviate existing remote sensing algorithm flow when being executed inefficiency the problem of.
Above content has carried out brief introduction to remote sensing algorithm flow Method of Scheduling Parallel, below to being directed in Appearance describes in detail.
Optionally, multiple execute in node executes node before and the execution knot adjacent with current execution node positioned at current Point is the current forerunner's node for executing node, is located at after current execution node in multiple execution nodes and executes node with current The adjacent node that executes is the current successor node for executing node, is that level-one executes knot there is no the execution node of forerunner's node Point.
Specifically, if currently executing node there are forerunner's node, the quantity of forerunner's node can be it is multiple, together Reason, if currently executing node there are successor node, the quantity of the successor node may be multiple.
Optionally, with reference to Fig. 3, each execution node is controlled according to execution dependence distant by executing sequence controller Executing the task that each execution node is included in sense algorithm execution pond includes:
S301, all level-one execution nodes are added in remote sensing algorithm execution pond, so that all level-ones execute knot Point executes its task of being included parallel;
Specifically, all level-ones execute node after all level-one execution nodes are added to remote sensing algorithm execution pond Its task of being included is executed parallel, and remote sensing algorithm executes pond and sends all level-one execution to execution sequence controller in real time The execution state of node is marked, so that the external world looks into so as to execute the execution state that sequence controller executes node to level-one It sees.
S302, the execution state that each level-one executes node is monitored, to supervise the execution process that level-one executes node, In, execution state includes following any: being not carried out state, operating status, completion status.
In this course, it executes sequence controller and monitors the execution state that each level-one executes node, to supervise level-one Execute the execution process of node.
Optionally, with reference to Fig. 4, each execution node is controlled according to execution dependence distant by executing sequence controller Sense algorithm executes and executes the task that each execution node is included in pond further include:
S401, when currently execute node execution state be completion status when, if currently execute node there are subsequent knots The accredited number of successor node is then added 1 by point;
Specifically, when the execution state for currently executing node is completion status, that is, the current execution for executing node When completion event arrives, executing the current execution state for executing node of sequence controller label is completion status, if currently held There are successor nodes for row node, then the accredited number of successor node is added 1.Wherein, which refers to that successor node connects Receive its number for starting to execute the task that it is included.
It should be noted that the quantity for currently executing the successor node of node can be multiple.
S402, the number for obtaining forerunner's node corresponding to successor node;
The number determination of forerunner's node corresponding to S403, accredited number and successor node based on successor node executes stream Journey.
Optionally, the number of forerunner's node corresponding to the accredited number and successor node based on successor node, which determines, executes Process includes:
It (1), will be subsequent if the accredited number of successor node is equal to the number of forerunner's node corresponding to successor node Node is added to remote sensing algorithm and executes in pond, so that successor node executes its task of being included;
Similarly, the feedback and label of execution state should be also carried out in the process.
(2) if the accredited number of successor node is less than the number of forerunner's node corresponding to successor node, subsequent After the execution state of all forerunner's nodes of node becomes completion status, task included in successor node is executed.
It should be noted that such case it is corresponding be if the corresponding forerunner's node of an execution node be it is multiple, that As long as just can be carried out the execution of this execution node task after the completion of the execution task of its corresponding all forerunner's node. Such as the node 5 in Fig. 2.
Optionally, each execution node is being controlled according to execution dependence in remote sensing algorithm by executing sequence controller It executes after executing the task that each execution node is included in pond, this method further include:
(1) all execution states for executing node are obtained;
(2) if all execution states for executing node are completion status, the execution of remote sensing algorithm flow terminates.
Remote sensing algorithm flow Method of Scheduling Parallel in through the invention can be improved in remote sensing algorithm flow and be closed without relying on Parallel execution efficiency between the algorithm of system.
Embodiment two:
A kind of remote sensing algorithm flow Parallel Scheduling device, with reference to Fig. 5, which includes:
Loading module 11, for loading remote sensing algorithm flow data structure by executing sequence controller, generation executes knot Point data structure, wherein executing includes multiple execution nodes in node data structure, includes a kind of remote sensing in each execution node Algorithm task;
Analysis module 12 obtains executing dependence, wherein execute for analyzing execution node data structure Dependence is the dependence between each execution node;
Execution module 13, for controlling each execution node according to execution dependence distant by executing sequence controller Sense algorithm, which executes, executes each execution node task of being included in pond, wherein exist execute dependence execution node it Between serially execute its task of being included, there is no execute times that its is included between the executions node for executing dependence parallel Business.
It is distant by executing sequence controller load in remote sensing algorithm flow Parallel Scheduling device provided in an embodiment of the present invention Feel algorithm flow data structure, to obtain executing node data structure, then, analyze node data structure is executed, It obtains executing dependence, in turn, controls each execution node according to execution dependence distant by executing sequence controller Sense algorithm, which executes in pond, executes its task of being included, and in the process of implementation, exists between the execution node for executing dependence Its task of being included serially is executed, there is no execute its times for being included between the execution node for executing dependence parallel Business, in this way, substantially increase the execution efficiency of algorithm, alleviating existing remote sensing algorithm flow, inefficiency is asked when being executed Topic.
Optionally, multiple execute in node executes node before and the execution knot adjacent with current execution node positioned at current Point is the current forerunner's node for executing node, is located at after current execution node in multiple execution nodes and executes node with current The adjacent node that executes is the current successor node for executing node, is that level-one executes knot there is no the execution node of forerunner's node Point.
Optionally, execution module includes:
Adding unit is added in remote sensing algorithm execution pond, so that all one for all level-ones to be executed node Grade executes node and executes its task of being included parallel;
Monitoring unit executes the execution state of node for monitoring each level-one, to supervise the execution that level-one executes node Process, wherein execution state includes following any: being not carried out state, operating status, completion status.
Optionally, execution module further include:
Accredited secondary counting unit is updated, when the execution state for currently executing node is completion status, if currently executing knot There are successor nodes for point, then the accredited number of successor node are added 1;
Acquiring unit, for obtaining the number of forerunner's node corresponding to successor node;
Determination unit, the number for forerunner's node corresponding to accredited number and successor node based on successor node are true Surely process is executed.
Optionally it is determined that unit includes:
Subelement is added, if the accredited number of successor node is equal to the number of forerunner's node corresponding to successor node, Successor node is then added to remote sensing algorithm to execute in pond, so that successor node executes its task of being included;
Postpone execution unit, if the accredited number of successor node is less than of forerunner's node corresponding to successor node Number executes included in successor node then after the execution state of all forerunner's nodes of successor node becomes completion status Task.
Optionally, the device further include:
Module is obtained, for obtaining all execution states for executing node;
Ending module is executed, if all execution states for executing node are completion status, remote sensing algorithm flow is held Row terminates.
Optionally, it includes thread pool that remote sensing algorithm, which executes pond,.
Particular content in the embodiment two can be with reference to the description in above-described embodiment one, and details are not described herein.
The computer program product of remote sensing algorithm flow Method of Scheduling Parallel and device provided by the embodiment of the present invention, packet The computer readable storage medium for storing program code is included, the instruction that said program code includes can be used for executing previous methods Method as described in the examples, specific implementation can be found in embodiment of the method, and details are not described herein.
It is apparent to those skilled in the art that for convenience and simplicity of description, the system of foregoing description It with the specific work process of device, can refer to corresponding processes in the foregoing method embodiment, details are not described herein.
In addition, in the description of the embodiment of the present invention unless specifically defined or limited otherwise, term " installation ", " phase Even ", " connection " shall be understood in a broad sense, for example, it may be being fixedly connected, may be a detachable connection, or be integrally connected;It can To be mechanical connection, it is also possible to be electrically connected;It can be directly connected, can also can be indirectly connected through an intermediary Connection inside two elements.For the ordinary skill in the art, above-mentioned term can be understood at this with concrete condition Concrete meaning in invention.
It, can be with if the function is realized in the form of SFU software functional unit and when sold or used as an independent product It is stored in a computer readable storage medium.Based on this understanding, technical solution of the present invention is substantially in other words The part of the part that contributes to existing technology or the technical solution can be embodied in the form of software products, the meter Calculation machine software product is stored in a storage medium, including some instructions are used so that a computer equipment (can be a People's computer, server or network equipment etc.) it performs all or part of the steps of the method described in the various embodiments of the present invention. And storage medium above-mentioned includes: that USB flash disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), arbitrary access are deposited The various media that can store program code such as reservoir (RAM, Random Access Memory), magnetic or disk.
In the description of the present invention, it should be noted that term " center ", "upper", "lower", "left", "right", "vertical", The orientation or positional relationship of the instructions such as "horizontal", "inner", "outside" be based on the orientation or positional relationship shown in the drawings, merely to Convenient for description the present invention and simplify description, rather than the device or element of indication or suggestion meaning must have a particular orientation, It is constructed and operated in a specific orientation, therefore is not considered as limiting the invention.In addition, term " first ", " second ", " third " is used for descriptive purposes only and cannot be understood as indicating or suggesting relative importance.
Finally, it should be noted that embodiment described above, only a specific embodiment of the invention, to illustrate the present invention Technical solution, rather than its limitations, scope of protection of the present invention is not limited thereto, although with reference to the foregoing embodiments to this hair It is bright to be described in detail, those skilled in the art should understand that: anyone skilled in the art In the technical scope disclosed by the present invention, it can still modify to technical solution documented by previous embodiment or can be light It is readily conceivable that variation or equivalent replacement of some of the technical features;And these modifications, variation or replacement, do not make The essence of corresponding technical solution is detached from the spirit and scope of technical solution of the embodiment of the present invention, should all cover in protection of the invention Within the scope of.Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (8)

1. a kind of remote sensing algorithm flow Method of Scheduling Parallel, which is characterized in that the described method includes:
Remote sensing algorithm flow data structure is loaded by executing sequence controller, generates and executes node data structure, wherein is described Executing includes multiple execution nodes in node data structure, includes a kind of remote sensing algorithm task in each execution node;
The execution node data structure is analyzed, obtains executing dependence, wherein the execution dependence is each Dependence between a execution node;
Each execution node is controlled by the execution sequence controller to be executed according to the execution dependence in remote sensing algorithm The task that each execution node is included is executed in pond, wherein there are serial between the execution node for executing dependence Its task of being included is executed, there is no execute its times for being included between the execution node for executing dependence parallel Business;
Wherein, each execution node is controlled according to the execution dependence in the remote sensing by the execution sequence controller The task that each execution node is included is executed in algorithm execution pond includes:
When the execution state for currently executing node is completion status, if the current execution node there are successor node, The accredited number of the successor node is added 1;
Obtain the number of forerunner's node corresponding to the successor node;
The number determination of forerunner's node corresponding to accredited number and the successor node based on the successor node executes stream Journey;
Wherein, it is held based on the number determination of forerunner's node corresponding to the accredited number of the successor node and the successor node Row process includes:
It, will be described if the accredited number of the successor node is equal to the number of forerunner's node corresponding to the successor node Successor node is added to the remote sensing algorithm and executes in pond, so that the successor node executes its task of being included;
If the accredited number of the successor node is less than the number of forerunner's node corresponding to the successor node, described After the execution state of all forerunner's nodes of successor node becomes the completion status, execute included in the successor node Task.
2. the method according to claim 1, wherein be located in the multiple execution node it is current execute node it Preceding and adjacent with the current execution node node that executes is the current forerunner's node for executing node, the multiple execution It is located at after the current execution node in node and is currently held with the current adjacent execution node of node that executes to be described The successor node of row node is that level-one executes node there is no the execution node of forerunner's node.
3. according to the method described in claim 2, it is characterized in that, executing knot by the way that execution sequence controller control is each Point executes the task that each execution node is included according to the execution dependence in remote sensing algorithm execution pond
All level-ones are executed node to be added in remote sensing algorithm execution pond, so that all level-ones execute node Its task of being included is executed parallel;
The execution state that each level-one executes node is monitored, to supervise the execution process that the level-one executes node, wherein described Execution state includes following any: being not carried out state, operating status, completion status.
4. the method according to claim 1, wherein controlling each execution by the execution sequence controller Node according to it is described execution dependence the remote sensing algorithm execute pond in execute it is each execution node included task it Afterwards, the method also includes:
Obtain all execution states for executing node;
If all execution states for executing node are completion status, the remote sensing algorithm flow execution terminates.
5. the method according to claim 1, wherein it includes thread pool that the remote sensing algorithm, which executes pond,.
6. a kind of remote sensing algorithm flow Parallel Scheduling device, which is characterized in that described device includes:
Loading module generates for loading remote sensing algorithm flow data structure by executing sequence controller and executes node data Structure, wherein include multiple execution nodes in the execution node data structure, calculated in each execution node comprising a kind of remote sensing Method task;
Analysis module obtains executing dependence, wherein described to hold for analyzing the execution node data structure Row dependence is the dependence between each execution node;
Execution module exists for controlling each execution node by the execution sequence controller according to the execution dependence Remote sensing algorithm executes and executes the task that each execution node is included in pond, wherein there are the execution for executing dependence Its task of being included serially is executed between node, there is no execute it parallel between the execution node for executing dependence Task of being included;
Wherein, the execution module further include:
Accredited secondary counting unit is updated, when the execution state for currently executing node is completion status, current executes knot if described There are successor nodes for point, then the accredited number of the successor node are added 1;
Acquiring unit, for obtaining the number of forerunner's node corresponding to the successor node;
Determination unit, for forerunner's node corresponding to accredited number and the successor node based on the successor node Number, which determines, executes process;
The determination unit further include:
Subelement is added, if the accredited number of the successor node is equal to of forerunner's node corresponding to the successor node The successor node is then added to the remote sensing algorithm and executed in pond, so that the successor node executes what it was included by number Task;
Postpone execution unit, if the accredited number of the successor node is less than forerunner's node corresponding to the successor node Number, then after the execution state of all forerunner's nodes of the successor node becomes the completion status, after execution is described The task included in the node.
7. device according to claim 6, which is characterized in that be located in the multiple execution node it is current execute node it Preceding and adjacent with the current execution node node that executes is the current forerunner's node for executing node, the multiple execution It is located at after the current execution node in node and is currently held with the current adjacent execution node of node that executes to be described The successor node of row node is that level-one executes node there is no the execution node of forerunner's node.
8. device according to claim 7, which is characterized in that the execution module includes:
Adding unit is added in remote sensing algorithm execution pond, so that described all for all level-ones to be executed node Level-one execute node execute its task of being included parallel;
Monitoring unit executes the execution state of node for monitoring each level-one, to supervise the execution that the level-one executes node Process, wherein the execution state includes following any: being not carried out state, operating status, completion status.
CN201810292764.0A 2018-03-30 2018-03-30 Remote sensing algorithm flow Method of Scheduling Parallel and device Active CN108491259B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810292764.0A CN108491259B (en) 2018-03-30 2018-03-30 Remote sensing algorithm flow Method of Scheduling Parallel and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810292764.0A CN108491259B (en) 2018-03-30 2018-03-30 Remote sensing algorithm flow Method of Scheduling Parallel and device

Publications (2)

Publication Number Publication Date
CN108491259A CN108491259A (en) 2018-09-04
CN108491259B true CN108491259B (en) 2019-04-02

Family

ID=63318345

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810292764.0A Active CN108491259B (en) 2018-03-30 2018-03-30 Remote sensing algorithm flow Method of Scheduling Parallel and device

Country Status (1)

Country Link
CN (1) CN108491259B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114257701A (en) * 2020-09-23 2022-03-29 北京字节跳动网络技术有限公司 Access configuration method, device and storage medium of video processing algorithm

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8689231B2 (en) * 2009-06-30 2014-04-01 Sap Ag System and method for ordering tasks with complex interrelationships
WO2016111778A1 (en) * 2015-01-07 2016-07-14 Qualcomm Incorporated Devices and methods implementing operations for selective enforcement of task dependencies
CN106909696A (en) * 2017-03-27 2017-06-30 浙江工业大学 A kind of colleges and universities' data assembled view automatic generation method based on data, services dependency graph
CN107329828A (en) * 2017-06-26 2017-11-07 华中科技大学 A kind of data flow programmed method and system towards CPU/GPU isomeric groups
CN107832125A (en) * 2017-10-10 2018-03-23 中国银联股份有限公司 Method for processing business and device under a kind of distributed environment

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108292241B (en) * 2015-10-28 2022-05-24 谷歌有限责任公司 Processing a computation graph
US10318348B2 (en) * 2016-09-23 2019-06-11 Imagination Technologies Limited Task scheduling in a GPU
GB2554392B (en) * 2016-09-23 2019-10-30 Imagination Tech Ltd Task scheduling in a GPU
CN106648846A (en) * 2016-09-23 2017-05-10 郑州云海信息技术有限公司 Improved heterogeneous multi-core task scheduling method
CN107967166A (en) * 2017-10-18 2018-04-27 东莞理工学院 Remote sensing image processing service flow implementation method under a kind of cloud environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8689231B2 (en) * 2009-06-30 2014-04-01 Sap Ag System and method for ordering tasks with complex interrelationships
WO2016111778A1 (en) * 2015-01-07 2016-07-14 Qualcomm Incorporated Devices and methods implementing operations for selective enforcement of task dependencies
CN106909696A (en) * 2017-03-27 2017-06-30 浙江工业大学 A kind of colleges and universities' data assembled view automatic generation method based on data, services dependency graph
CN107329828A (en) * 2017-06-26 2017-11-07 华中科技大学 A kind of data flow programmed method and system towards CPU/GPU isomeric groups
CN107832125A (en) * 2017-10-10 2018-03-23 中国银联股份有限公司 Method for processing business and device under a kind of distributed environment

Also Published As

Publication number Publication date
CN108491259A (en) 2018-09-04

Similar Documents

Publication Publication Date Title
CN112549029B (en) Robot behavior control method and device based on behavior tree
Long et al. Modeling and distributed simulation of supply chain with a multi-agent platform
CN109669992A (en) A kind of implementation method of data visualization conversion
CN103368795A (en) Automatic feeding, testing and sorting system and operation method thereof
CN107992367B (en) Modbus serial port data processing method
CN110532076A (en) A kind of method, system, equipment and the readable storage medium storing program for executing of cloud resource creation
CN101562539B (en) Self-adapting network intrusion detection system
CN109447276A (en) A kind of machine learning method, system, equipment and application method
CN113722912B (en) Virtual-real fused unmanned cluster collaborative verification system
CN108491259B (en) Remote sensing algorithm flow Method of Scheduling Parallel and device
CN108052020A (en) A kind of Chemical Processes Simulation device towards intelligence manufacture
CN108052385A (en) A kind of Container Management method, system, equipment and computer storage media
CN104050193B (en) Generate the method for message and realize the data handling system of this method
Dusadeerungsikul et al. Collaboration requirement planning protocol for HUB-CI in factories of the future
CN104298671B (en) data statistical analysis method and device
Van Hentenryck et al. Joint assessment and restoration of power systems
CN113112107A (en) Transfer planning method, device, server and storage medium
CN109729073A (en) Network Abnormal recognition methods and system in a kind of electric network information physical system
Domínguez et al. SCOPE: a multi-agent system tool for supply chain network analysis
CN109992497A (en) A kind of distribution power automation terminal standard testing use-case updates the method and system of publication
König et al. Probabilistic availability analysis of control and automation systems for active distribution networks
CN108647134B (en) A kind of task monitoring, tracking and recognition methods towards multicore architecture
CN106557492A (en) A kind of method of data synchronization and device
Wang et al. The production instruction system for smart job shop
CN103019862A (en) Symbolic execution 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
CP02 Change in the address of a patent holder

Address after: Room 301, floor 3, building 5, zone 4, Xishan Creative Park, Haidian District, Beijing 100195

Patentee after: Beijing Aerospace Hongtu information technology Limited by Share Ltd

Address before: 100144 west 2 District, 1 building, 18, Xing Shi Kou Lu, Haidian District, Beijing.

Patentee before: Beijing Aerospace Hongtu information technology Limited by Share Ltd

CP02 Change in the address of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 301, floor 3, building 5, zone 4, Xishan Creative Park, Haidian District, Beijing 100195

Patentee after: Aerospace Hongtu Information Technology Co., Ltd

Address before: Room 301, floor 3, building 5, zone 4, Xishan Creative Park, Haidian District, Beijing 100195

Patentee before: BEIJING PIESAT INFORMATION TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder