EP4409402A1 - Procédé de supervision et superviseur du pilotage d'un traitement parallèle distribué dans un réseau de communication, dispositif de fourniture de services et programme le mettant en oeuvre - Google Patents
Procédé de supervision et superviseur du pilotage d'un traitement parallèle distribué dans un réseau de communication, dispositif de fourniture de services et programme le mettant en oeuvreInfo
- Publication number
- EP4409402A1 EP4409402A1 EP22793446.0A EP22793446A EP4409402A1 EP 4409402 A1 EP4409402 A1 EP 4409402A1 EP 22793446 A EP22793446 A EP 22793446A EP 4409402 A1 EP4409402 A1 EP 4409402A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- processing
- component
- execution
- input data
- data
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
Definitions
- the invention relates to distributed parallel processing in a communication network and more particularly to the control of these distributed parallel processing.
- Distributed parallel processing is used in particular for "cloud computing” or the execution of programs in the network, for example of distributed “cloud” services, and for learning applications in artificial intelligence (automatic learning, statistics, “machine learning” or machine learning, learning afterwards).
- So-called “Dataflow” programming is a model that calls into question the principle of synchronous control (instruction by instruction) of a program. It is distinguished by its particular way of controlling the control flow of parallel programs. Recently applied to real-time massive data processing platforms, it avoids loss of control time, but not exchange time or data waiting time. So it actually avoids a (limited) part of the coordination delays. Furthermore, the design and implementation of “Dataflow” programs proves difficult to master, which limits the adoption of “Dataflow” models.
- One of the aims of the present invention is to remedy the drawbacks of the state of the art.
- An object of the invention is a method for supervising the piloting of distributed parallel processing in a communication network, the distributed parallel processing consisting of a piloting method implemented by a service provision device and several processing components, including a first component and a second component, distributed over nodes of the communication network, the steering method comprising a succession of steps including a step for triggering the execution of a processing component by a node, the piloting supervision method comprising an execution of the step of triggering the execution of a component of the processing as soon as the piloting method reaches the step of triggering the execution of this component.
- the present invention differs from prior techniques by breaking completely with the constraint of availability of input data before the execution of a processing component.
- This invention makes it possible to launch the execution of the remote component of the processing (service, program, method, procedure, function, etc.) before the availability of the values of the input parameters (also called, input data).
- the invention relates to any processing that can be called remotely according to imperative or declarative programming, with input data.
- the programs implementing this invention make it possible to further limit the coordination times of the distributed parallel processing operations, beyond what can be done so far.
- the implementation of this invention makes it possible to drastically accelerate distributed software, by limiting the share of coordination delays due to waiting for input data. treatments. This is often the case for services with massive parallelism whose programs and processing are not of a par- embarrassing rallyism, a category that encompasses many future services, especially in distributed learning in AI.
- the piloting supervision device comprises supplying the piloting method with substitution data if, when the piloting method reaches a step for triggering the execution of a second component of the processing, input data provided by a first component of the processing and necessary to start the execution of the second component of the processing are not available.
- the piloting of the processing is not modified since the piloting receives data which it considers to be input data even if these are not available making it possible to trigger the piloting of the execution of the corresponding processing component either without input data or using the substitution data. Control is then said to be asynchronous since it controls the execution of a processing component without providing ad hoc input data.
- the supervision method includes reading input data from a previous execution of the second component, the input data from the previous execution constituting the substitution data.
- the processing component is executed using substitution data which is probably equivalent to the expected input data, by equivalent is understood that the result of the processing will be identical or approaching that produced with the input data. expected while reducing the time required to provide the result.
- the supervision method comprises a prediction of input data, the predicted input data constituting the substitution data.
- the supervision method comprises, when the processing is closed, a recording of the input data of the components of the processing being executed.
- substitution data can be based at least on the input data of the previous execution of the processing, limiting the risks of processing errors.
- the supervision method iterates, when closing the processing, an invocation counter initialized to zero.
- the supervision method comprises an association of the invocation counter with the recorded data.
- the substitution data can be based in addition to the data of the previous executions of the processing but also on their evolutions further reducing the risks of processing errors.
- the prediction is a function of at least one of the following data from the recorded input data and the associated invocation counter.
- the supervision method comprises, if the supervision method receives data from a first component intended for a second component after the execution of the step for triggering execution of the second component, a supply of the data from the first component to the second component if a prediction error is detected based on the predicted input data and the received input data.
- the various steps of the method according to the invention are implemented by computer software or program, this software comprising software instructions intended to be executed by a data processor a supervisor for piloting a processing forming in particular part of a device for providing services and being designed to control the execution of the various steps of this method.
- the invention therefore also relates to a program comprising program code instructions for the execution of the steps of the process for supervising the piloting of a processing when said program is executed by a processor.
- This program can use any programming language and be in the form of source code, object code or intermediate code between source code and object code such as in a partially compiled form or in any other desirable form. .
- An object of the invention is also a supervisor for controlling distributed parallel processing in a communication network, the distributed parallel processing consisting of a control method implemented by a controller of a supply of services comprising the Supervisor and several processing components, including a first component and a second component, distributed over nodes of the communication network, the steering method comprising a succession of steps including a step for triggering the execution of a component of the processing by a node, the supervisor comprising a decoupler 110 capable of controlling the execution of the step of triggering the execution of a component of the processing as soon as the piloting method reaches the step of triggering the execution of this component.
- the supervisor comprises a memory capable of storing data, when the processing is closed, of the input data of the components of the processing being executed.
- the supervisor comprises an invocation counter initialized to zero and capable of being iterated upon closing the processing.
- An object of the invention is also a device for providing services comprising a controller capable of controlling distributed parallel processing in a communication network, the distributed parallel processing consisting of a control method implemented by the controller and several processing components, including a first component and a second component, distributed over nodes of the communication network, the piloting method comprising a succession of steps including a step for triggering execution of a processing component by a node, the service provision device comprising a supervisor capable of controlling the execution of the step of triggering the execution of a component of the processing as soon as the piloting method reaches the step of triggering the execution of this component.
- FIG. la a simplified diagram of a process for supervising the control of distributed parallel processing according to the invention
- FIG.1b a non-exhaustive detailed diagram of a first part of a process for supervising the control of a distributed parallel processing according to the invention
- FIG. le a simplified diagram of a second part of a method for supervising the control of distributed parallel processing according to the invention
- FIG. Id a simplified diagram of distributed parallel processing
- FIG.2 a simplified diagram of a flowchart illustrating the supervision method according to the invention
- FIG.3 a simplified diagram of a distributed communication architecture comprising a supervisor according to the invention
- FIG.4 a simplified diagram of a communication architecture in which a processing component is implemented in a remote node of a service provision device controlling the processing according to the invention
- FIG.5 a simplified diagram of a communication architecture comprising a service provision device separately supervising the control of the execution by remote nodes of a component of a processing and the prediction input data from ad hoc components.
- the invention is motivated by the design needs of future networks and services (5G, 5G+, etc.) with peripheral processing techniques (or “edge computing"), peripheral "cloud” services (" edge cloud” in English) and distributed. It paves the way for new uses of machine learning, design and programming of more efficient peripheral distributed cloud services for future networks and services, and implementation of more efficient distributed processing for training models.
- distributed learning in AI This involves using the aggregated and distributed resources within the peripheral network installations of an operator (access, aggregation, mobile core, etc.) as support for the execution of cloud services, to cope with the load of calculation with more performance, and thus reduce processing times. This type of learning approach is growing, and its widespread use in future networks is becoming clearer.
- FIG. 1 illustrate the supervision method according to the invention.
- FIG. la illustrates a simplified diagram of a method for supervising the control of a distributed parallel processing according to the invention.
- the SPTPD supervision method supervises the piloting PP of distributed parallel processing in a communication network.
- Distributed parallel processing consists of a piloting process PP implemented by a service provision device and several processing components C, including a first component and a second component, distributed over nodes of the communication network.
- the piloting process PP comprises a succession of steps including a step of triggering C_TRG for the execution of a component of the processing by a node.
- the control process SPTPD includes an execution INST_EXE of the step for triggering the execution of a processing component as soon as the control process PP reaches the step for triggering the execution of this component.
- FIG.1b illustrates a non-exhaustive detailed diagram of a first part of a process for supervising the control of a distributed parallel processing according to the invention.
- the steering supervision device SPTPD comprises a supply D_PRV to the steering method PP of substitution data d sub .
- the SPTPD supervision method includes a verification of the availability of the input data of C j?. The verification of the availability of the input data of a component Cj is verified as soon as the control method reaches the step for triggering the execution of this component Cj.
- the supervision process directly supplies these input data of Cj to the control process which triggers Cj_TRG the execution of the second component Cj by transmitting to the component Cj the available input data of C j.
- the SPTPD supervision method detects the achievement by the piloting method of a trigger step Cj_TRG of an execution of a component of the processing.
- the piloting process PP informs the supervision process SPTPD of the achievement of a triggering step Cj_TRG of an execution of a component of the processing.
- the supervision method SPTPD detects the Cj input data expected by the processing component Cj whose piloting method PP has reached the execution trigger step Cj_TRG.
- the piloting method PP requests from the supervision method SPTPD the input data of Cj expected by the processing component Cj whose piloting method PP has reached the step of triggering execution Cj_TRG.
- the SPTPD supervision method includes receiving data provided by the execution of a first component Ci of the processing, in particular the input data of a second component of the processing Cj.
- supplying input data D_PRV then supplies the previous data of Cj (n1) as substitution data dsub.
- the supervision process SPTPD reads D_RD the input data of the previous execution of Cj (nl) in a memory storing BDD processing input data, in particular in a processing input database, or even of processing implemented by the service provision device.
- the supply of input data D_PRV then supplies the predicted data dp as substitution data dsub.
- the supervision process SPTPD predicts the input data of the second component dp Cj in particular according to input data from previous executions ⁇ of C j(î]) ⁇ r
- i . or stored in a processing input data memory BDD, in particular in a processing input data base, or even of processing implemented by the service provision device.
- the invocation counter r] indicates the number of invocations of the processing during the recording of input data.
- invocation of the processing is meant the request for execution of the processing.
- FIG. le illustrates a simplified diagram of a second part of a method for supervising the control of a distributed parallel processing SPTPD according to the invention.
- the execution of a processing includes the execution of the piloting method PP.
- the start of the execution of the control method consists of a start of the execution of the TT_STR processing.
- the piloting process comprises a succession of processing component triggering steps C1_TRG, ..., Ci_TRG, ..., Cj_TRG... until the end of the TT_CL processing.
- invocation counter initialized to zero is understood that the invocation counter is at zero before the first invocation of the processing.
- the SPTPD supervision method comprises an association ASS of the invocation counter n with the recorded data ⁇ of C ; ⁇ i: ( ⁇ deci]i, n).
- the recording of the data DE_MEM behavior a recording of the pair ( ⁇ de a ⁇ i, n) made up of the recorded data ⁇ de a ⁇ and the invocation counter n supplied by the association ASS.
- the supervision method is implemented in the form of a program comprising program code instructions for the execution of the steps of the method for supervising the piloting of a processing when said program is executed by a processor.
- FIG. Id illustrates a simplified diagram of distributed parallel processing.
- the distributed parallel processing TT comprises a piloting method PP implemented by a service provision device and several processing components CI...Ci...C, implemented by remote nodes.
- some nodes can implement a Cl, Ci, Cj or more of the components of the
- the piloting process PP triggers la.cmd(exe,de cl ),..., 2a.cmd(exe,de ci ),...,3a.cmd(exe,de c i) the execution of a component Cl,..., Ci,..., Ci.
- the piloting method PP receives data supplied lb.answ(de d ),..., 2b.answ(de CJ ),..., 3b.answ by processing components C 1. ..Ce executed.
- the data provided by a first processing component Ci includes input data from a second processing component of Cj .
- the piloting method PP triggers the execution of a second component by transmitting the input data ⁇ of a ⁇ provided by a first component. This is why, in the prior art, the piloting method PP waits for the supply of these input data ⁇ of ⁇ ⁇ by the first component before triggering the execution of the execution of the second component.
- FIG.2 illustrates a simplified diagram of a flowchart illustrating the supervision method according to the invention.
- the SPTPD supervision method includes a start of the SPTPD supervision.
- the supervision method receives a call to the TT_RQ_RCV processing in particular from a communication terminal or more particularly from a component of the Cj_REQ_RCV processing of the PP piloting method of the TT processing when the PP piloting method reaches the execution triggering step of the Ci component of the treatment.
- the communication terminal sends to the service provision device implementing the TT processing a processing request or invocation of the processing tt_req.
- the SPTPD supervision method verifies sc? whether processing execution should be implemented synchronously or asynchronously. For example, the SPTPD supervision method asks the terminal whether the processing should be executed synchronously or not.
- the piloting method PP triggers the execution of the second component Cj_TRG of the processing after reception of the input data of Ci provided by one or more first components Ci of the processing previously executed.
- the SPTPD supervision process performs an asynchronous call, that is to say an invocation without supplying the input data AS_TT, AS_Ci when the execution of a component is triggered.
- the SPTPD supervision process commands exe_cmd to the control process to trigger the execution of a component Ci_TRG without providing the input data of this component.
- the SPTPD supervision process checks whether the input data must be sent asynchronously or not d_as?.
- the SPTPD supervision method implements a data service or data supply D_PRV which recovers data from a previous invocation in a memory or database BDD.
- the SPTPD supervision process includes a data availability review for the execution of the DE_RVW component.
- the SPTPD supervision method verifies the available data d?.
- the supervision process SPTPD performs a delayed or anticipated asynchronous processing AS_TT, AS_Cj in particular according to the substitution data d sub produced by the data service D_PRV from the input data of the invocation or the previous invocations (that is to say of a history of input data) recorded in a memory BDD and/or of predicted data dp.
- the SPTPD supervision process predicts D_PRED the input data for the asynchronous processing AS_TT, AS_Cj.
- the SPTPD supervision method provides substitution data comprising either input data from previous invocation(s), or data predicted indirectly to the component Cj whose execution is triggered asynchronously.
- the SPTPD supervision process receives a TT_RSP, Ci_RSP return.
- the supervision method is terminated STP.
- the invention breaks with the practice of ensuring that the input data of the processing component are available before triggering the execution of this component which is often the cause of significant delays in coordination.
- the SPTPD supervision process authorizes the component to run even if the data is not available. This is possible because the control of the triggering of the execution of the component is transferred from the piloting process to the supervision process.
- a supply of D_MNGT data without transfer of control i.e. a management of the input data of a component independent of the execution of this component, comprising a recording of the data for future invocations and a supplying the data recorded during an invocation in progress as substitution data so that the control method immediately executes the step for triggering execution of the processing component with the supply of the substitution data to the processing component or for predict D_PRED of dp data used for asynchronous processing AS_TT, AS_Cj;
- the supervision method forces the execution of the step of the execution triggering piloting method of a processing component even if no data by substituting for the input data substitution data obtained by prediction of data D_PRED or simple reading of the stored input data of previous invocation(s);
- the first two options allow the supervision method to desynchronize the two sub-actions (transfer of control and supply of data) which were previously inseparable.
- the first option introduces a memory of input data to be used for future invocation.
- the second option introduces the fact that the unavailable input data is replaced either by input data stored during previous invocations and supplied by the data management D_MNGT, or by predicted input data.
- D-PRD prediction is notably built by learning with a model that will have been designed and trained for each treatment.
- the prediction comprises neural networks and a deep learning process making it possible to design and train suitable predictors in order to better predict the input data of the invocation in progress or even of the following invocation.
- FIG.3 illustrates a simplified diagram of a distributed communication architecture comprising a supervisor according to the invention.
- the distributed communication architecture includes in particular a service provision device 1 implementing at least one distributed parallel service or processing TT.
- a controller 10 controls the execution by different nodes 2 b ..., 2 K of the communication network 3 of components C i . • -C, TT treatment.
- a node 2k comprises a processor 2() k ′ capable of executing the component Ci of the processing TT.
- the service provision device 1 includes the controller 10.
- the node 20 (not illustrated) at the origin of the invocation of the processing, called invoking node, (that is to say having required the implementation of the proposed by the service provision device) comprises the controller 10.
- the invoking node 20 comprises a processor 10 capable of executing the method of piloting PP of the processing TT.
- the invoking node 20 comprises at least one control interface, not illustrated, capable of exchanging with the controller 10 and the service provision device 1 comprises the controller 10.
- the control interface control comprises in particular a launcher capable of triggering the start of processing by the controller.
- the control interface further comprises a process selector from among the processes made available by the service provision device 1.
- the supervisor 11 is capable of supervising the piloting of distributed parallel processing in a communication network.
- Distributed parallel processing consists of a piloting method implemented by a controller 10 of a service provision device 1 comprising the supervisor 11 and of several processing components, including a first component and a second component, distributed over communication network nodes 2 1; ..., 2k ..., 2K .
- the piloting method comprises a succession of steps including a step for triggering the execution of a processing component by a node.
- a node 2i...2 k .. ,2 K comprises in particular an execution command receiver la.cmd(exe,de C i),...2a.cmd(exe,de ci),... 3a.cmd(exe,de C i), and a processor 20 ⁇ capable of executing the processing component Ci (also called the first component) upon receipt of the execution command and of providing a result of processing component lb.answ(of Cj ),... 2b. answ(of a ),... 3b.answ possibly comprising input data from another processing component (also called second component).
- the controller 10 is able to receive the input data of a second component of the processing Cj resulting from the execution of a first component of the processing Ci %b.ailSw(deCj)
- the supervisor 11 comprises a decoupler 110 capable of controlling 24.exe_cmd the execution of the step for triggering the execution of a processing component as soon as the control method reaches the step for triggering the execution of this component 2O.nxt(Ci).
- the supervisor 11 includes a memory 113 capable of storing data, when the processing is closed, of the input data of the components of the processing being executed.
- the supervisor 11 includes an invocation counter 116 initialized to zero and capable of being iterated upon closing the processing.
- the supervisor 11 comprises a recorder 115 able to write in a memory 113 input data of the invocation in progress and/or the number of the invocation in progress in particular provided by the invocation counter 116.
- the recorder 115 is capable of associating the input data with the number of the invocation in progress before recording them in particular in the form of a pair: (input data, invocation number).
- the supervisor comprises a reader 115 capable of reading during an invocation in progress the data recorded during previous invocation(s), in particular in a memory 113.
- the recorder and the data reader are one and the same data reader/writer 115.
- the supervisor 11 comprises a detector 114 of the end of processing or closing of processing.
- the end of processing detector 114 triggers ll.w_trg(de) the writing by the recorder 115 of the data 12.de and/or the value of the invocation counter 12.(de,n).
- the invocation counter 126 provides its value 1 l'.n to the recorder 115 possibly on request from the recorder 115.
- the detector 114 or the recorder 115 triggers 13.it_trg the iteration of the invocation counter 116 after the recording of the data by the recorder 115.
- the detector 114 is capable of receiving end of processing information 10.cl(de) from the controller and/or of requesting, possibly in a pe- periodically, to the controller 10, the processing step being executed (for example start, component number, end, etc.) and/or to detect when the controller 10 has reached the end of processing step .
- the supervisor 11 includes a receiver 114 capable of receiving data from the controller 10, in particular the input data of the components of the processing being invoked.
- the receiver 114 further includes the end of processing or processing closure detector.
- the receiver 114 provides the input data to the recorder 115 with the w_trg write trigger.
- the supervisor includes a data availability detector 111 able to check whether the input data is available and to trigger 21'.d_as if not the decoupler 110.
- the decoupler 110 commands 24.exe_cmd to execute the processing component without the input data.
- the availability detector 111 is triggered 20.nxt(Ci) by reaching a step for triggering the execution of a processing component by the controller 10.
- the decoupler 110 supplies unavailable input data instead of the substitution data 24.exe_cmd(d sub ).
- the supervisor 11 comprises a substitution data generator 112 able to generate substitution data d sub from in particular the input data recorded in the memory 113, that is to say data from 'entry of the previous invocation 22. ⁇ de(nl) ⁇ , or even pairs: input data of the previous invocations and invocation number 22. ⁇ de(r
- the supervisor 11 comprises a data reader 1120 capable of reading data 22. ⁇ de(nl) ⁇ , 22. ⁇ de(r
- 11.1 in the memory 113 and supplying them 23'.de a (n-1) to the decoupler 110.
- the substitution data generator 112 includes the data reader 1120.
- the predictor 1121 receives from the reader 1120 the input data of the previous invocations 23'. ⁇ de( r
- n .i.
- a 2k node of the communication network in which distributed parallel processing operations are executed comprises at least one component of a first processing operation, or even several components of one or more first processing operations, and possibly a service provision device supplying a second treatment.
- the [Fig.4] illustrates a simplified diagram of a communication architecture in which a processing component is implemented in a remote node of a service provision device controlling the processing according to the invention .
- a service provision device 1 controls the execution of component(s) of a processing of the nodes 2k of the communication network 3.
- a processor 20k of the node 2k executes the component of the processing.
- the service provision device 1 comprises a decoupler 110 suitable for triggering the immediate execution of a processing component as soon as the service provision device 1 reaches the step of triggering the execution of this component.
- the service provision device 1 invokes the processing component asynchronously, that is to say before the input data of this component are available.
- the service provision device comprises a data manager 118 capable of recording input data in particular in a memory 115 (see [Fig.3]).
- the data manager 118 includes a substitution data generator 112 (see [Fig.3]) based on input data from previous invocation(s).
- the data manager 118 makes it possible to manage the input data of a component asynchronously with respect to the execution of this component.
- the service provision device 1 comprises a standard processing component invoker, that is to say synchronous since it controls the execution of a second component by providing the input data provided by the execution of a first component.
- the [Fig.5] illustrates a simplified diagram of a communication architecture comprising a service provision device separately supervising the piloting of the execution by remote nodes of a processing component and the prediction of ad hoc component input data.
- a supervisor 11 is capable of triggering in a delayed manner (that is to say by using the input data recorded during the previous invocation rpl) or anticipated (that is to say using prediction) an invocation by the controller 10 of the processing components.
- the supervisor 11 has a memory 113 in which a history of the input data during one or more of the preceding invocations is kept: either it comprises the memory 113, or it comprises an interface with this memory 113 (in particular a recorder and/or a memory reader).
- the supervisor 11 includes an invocation counter 116.
- the Cl component of the processing is triggered in a delayed manner Cl_trg(tl,r
- the supervisor retrieves the input data of C i(ql) provided by another component during the previous invocation q-1 to trigger the execution of this component Cl as soon as the step for triggering the execution of the component CL is reached at time tl
- the C2 component is triggered in advance C2_trg(t2), that is to say that the supervisor triggers an asynchronous invocation using the predictor by the controller of the C2 component.
- component C2 is triggered in particular by providing, instead of input data, anticipated data, for example predicted by means of a neural network according to the history recorded in the memory 113.
- the implementation of the component is said to be delayed because it uses input data from the previous invocation and not from the invocation in course.
- the processing component C p .i is triggered in a delayed manner C p .i_trg(t p.1 , q- 1), i.e. the supervisor triggers an asynchronous invocation using the history 113 by the component controller C p .i.
- the su- pervisor retrieves the input data of Cp .i(r
- the Cp component is triggered in advance Cp_trg(tp), that is to say that the supervisor triggers an asynchronous invocation using the predictor by the controller of the Cp component. This means that as soon as the step for triggering the execution of the component Cp is reached at time tp, in particular by providing, instead of input data, anticipated data, in particular predicted by means of a network of neuron according to the history recorded in the memory 113.
- the supervisor thus provides an asynchronous and predictive invocation service.
- the recording of a processing operation consists in particular of creating an invocation counter for this processing operation, which will be initialized to 0.
- the asynchronous and predictive invocation service also allocates memory space to hold the values of the last parameters received. At the end of each new call or invocation of a process, the value of the invocation counter for this process is incremented, and the values of the last parameters are updated.
- the first contribution of an asynchronous and predictive invocation service is to memorize the values of the parameters of the previous calls. We save all the last calls of each process, to be able to use them at the next call if there is no new value available. Each time a process is invoked, the values that are not present as inputs are retrieved from this storage space of previous parameter values.
- the predictor is designed and trained by learning, from historical invocation data.
- the supervisor comprises in particular a comparator of the predicted values with the received values. If the difference in values complies with a specified validity threshold then we validate, otherwise we invalidate and we start the processing again with the new values received. This mechanism makes it possible to process the erroneous predictions inherent in learning, and thus to reinforce the robustness of the invention.
- the invention also relates to a support.
- the information carrier can be any entity or device capable of storing the program.
- the medium may include a storage medium, such as a ROM, for example a CD ROM or a microelectronic circuit ROM or else a magnetic recording medium, for example a floppy disk or a hard disk.
- the information medium can be a transmissible medium such as an electrical or optical signal which can be conveyed via an electrical or optical cable, by radio or by other means.
- the program according to the invention can in particular be downloaded onto a network, in particular of the Internet type.
- the software implementation of this invention is based on so-called complete machines, which are machines with all the resources necessary for the execution of a program.
- a (complete) machine can be:
- a basic machine The equivalent of a PC or a physical server with a single unmarked processing unit, CPU/GPU type.
- Machines with multiple commoditized processing units can support the execution of up to as many base machines as there are commoditized processing units.
- VM virtual machine
- hypervisor hypervisor type
- cloud service infrastructures Either a virtual machine (VM) for a basic machine, as implemented in modern virtualization software (of the hypervisor type), and cloud service infrastructures.
- a container for a base machine as implemented in container platforms and orchestrators (Docker, Kubernetes, Mesos, etc.) and used for programming distributed, container-based cloud-native services and microservices architectures.
- container platforms and orchestrators Docker, Kubernetes, Mesos, etc.
- the asynchronous and predictive invocation service is designed and implemented in such a way as to be able to execute one or more instance(s) of this asynchronous and predictive invocation service on each base machine of infrastructure.
- the basic machines of the peripheral installations under the control of the operator generally aggregated within a small data center, will each execute at least one instance of the asynchronous and predictive invocation service. All of these basic machines equipped with asynchronous and predictive invocation services, organized in small data centers, will be used as a distributed cloud infrastructure, to program, deploy and execute more efficient services by reducing coordination times.
- the invention can be integrated into an operator's cloud infrastructure services: distributed Multiservice Edge Computing (MEC) services, NWDAF (Network Data Analytics Function) service for data analysis and AI in networks 5G, distributed learning platforms (TensorFlow, Keras, etc.), real-time massive data processing and e-learning platforms (Hadoop (MapReduce), Spark, Flink, etc.), etc.
- MEC distributed Multiservice Edge Computing
- NWDAF Network Data Analytics Function
- the information medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
- module can correspond either to a software component or to a hardware component.
- a software component corresponds to one or more computer programs, one or more sub-programs of a program, or more generally to any element of a program or software capable of implementing a function or a function set as described above.
- a hardware component corresponds to any element of a hardware assembly capable of implementing a function or a set of functions.
- the invention can be used by software in applications in many fields, including:
- NFV Network function virtualization
- the invention targets services and applications in the 5G (+) network domain, with high granularity and having a low ratio of remote calls. It can then be generalized to high-performance, real-time applications provided outside of operator networks. This extension will make it possible to target markets historically occupied by IT players:
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2110333A FR3127592A1 (fr) | 2021-09-30 | 2021-09-30 | Procédé de supervision et superviseur du pilotage d’un traitement parallèle distribué dans un réseau de communication, dispositif de fourniture de services et programme le mettant en œuvre |
| PCT/FR2022/051840 WO2023052730A1 (fr) | 2021-09-30 | 2022-09-29 | Procédé de supervision et superviseur du pilotage d'un traitement parallèle distribué dans un réseau de communication, dispositif de fourniture de services et programme le mettant en œuvre |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4409402A1 true EP4409402A1 (fr) | 2024-08-07 |
Family
ID=79601864
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP22793446.0A Pending EP4409402A1 (fr) | 2021-09-30 | 2022-09-29 | Procédé de supervision et superviseur du pilotage d'un traitement parallèle distribué dans un réseau de communication, dispositif de fourniture de services et programme le mettant en oeuvre |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20250036457A1 (fr) |
| EP (1) | EP4409402A1 (fr) |
| FR (1) | FR3127592A1 (fr) |
| WO (1) | WO2023052730A1 (fr) |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060048142A1 (en) * | 2004-09-02 | 2006-03-02 | Roese John J | System and method for rapid response network policy implementation |
| EP1857946B1 (fr) * | 2006-05-16 | 2018-04-04 | Sap Se | Systèmes et procédé de migration de données |
| US9430400B2 (en) * | 2013-03-14 | 2016-08-30 | Nvidia Corporation | Migration directives in a unified virtual memory system architecture |
| US9560119B2 (en) * | 2014-12-23 | 2017-01-31 | Cisco Technology, Inc. | Elastic scale out policy service |
| US10318433B2 (en) * | 2016-12-20 | 2019-06-11 | Texas Instruments Incorporated | Streaming engine with multi dimensional circular addressing selectable at each dimension |
| CN109144414B (zh) * | 2018-07-27 | 2020-07-07 | 阿里巴巴集团控股有限公司 | 区块链数据的多级存储方法和装置 |
| US20220058476A1 (en) * | 2020-08-19 | 2022-02-24 | Qualcomm Incorporated | Methods and apparatus for dynamic shader selection for machine learning |
-
2021
- 2021-09-30 FR FR2110333A patent/FR3127592A1/fr not_active Withdrawn
-
2022
- 2022-09-29 WO PCT/FR2022/051840 patent/WO2023052730A1/fr not_active Ceased
- 2022-09-29 US US18/696,574 patent/US20250036457A1/en active Pending
- 2022-09-29 EP EP22793446.0A patent/EP4409402A1/fr active Pending
Non-Patent Citations (1)
| Title |
|---|
| BAUDISCH DANIEL ET AL: "Evaluation of Speculation in Out-of-Order Execution of Synchronous Dataflow Networks", INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING. PLENUM PRESS, NEW YORK., US, vol. 43, no. 1, 22 October 2013 (2013-10-22), pages 86 - 129, XP035428603, ISSN: 0885-7458, [retrieved on 20131022], DOI: 10.1007/S10766-013-0277-2 * |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023052730A1 (fr) | 2023-04-06 |
| FR3127592A1 (fr) | 2023-03-31 |
| US20250036457A1 (en) | 2025-01-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11228570B2 (en) | Safe-transfer exchange protocol based on trigger-ready envelopes among distributed nodes | |
| EP2232368B1 (fr) | Systeme comportant une pluralite d'unites de traitement permettant d'executer des taches en parallele, en mixant le mode d'execution de type controle et le mode d'execution de type flot de donnees | |
| US9661071B2 (en) | Apparatus, systems and methods for deployment and management of distributed computing systems and applications | |
| CN109951547B (zh) | 事务请求并行处理方法、装置、设备和介质 | |
| US10250480B2 (en) | Polling parameter adjustment | |
| WO2020072929A1 (fr) | Système et procédé pour réaliser une base de données de graphes à intelligence artificielle | |
| US11283698B2 (en) | Optimizing timeout settings for nodes in a workflow | |
| US11487851B2 (en) | Using blockchain for flexible application licensing | |
| US20180218276A1 (en) | Optimizing Application Performance Using Finite State Machine Model and Machine Learning | |
| US8510281B2 (en) | Ultimate locking mechanism | |
| CN112860421A (zh) | 用于作业处理的方法、设备和计算机程序产品 | |
| CN111292722A (zh) | 异步联合架构的模型训练方法、终端、服务器及存储装置 | |
| US11206190B1 (en) | Using an artificial intelligence based system to guide user dialogs in designing computing system architectures | |
| WO2023052730A1 (fr) | Procédé de supervision et superviseur du pilotage d'un traitement parallèle distribué dans un réseau de communication, dispositif de fourniture de services et programme le mettant en œuvre | |
| FR3057081B1 (fr) | Processeur comprenant une pluralite de coeurs de calcul | |
| US20250303302A1 (en) | User placement for multi-application host computing instance groups | |
| US11520866B2 (en) | Controlling processor instruction execution | |
| US20250303286A1 (en) | Multi-application host computing instance group for application streaming | |
| US12568401B2 (en) | Distributed network management system | |
| CN111913759A (zh) | 控制应用程序执行的方法、装置、计算设备和介质 | |
| Autili et al. | Highly collaborative distributed systems: Synthesis and enactment at work | |
| CN118331656A (zh) | 服务接口加解密处理方法、装置、设备、介质和程序产品 | |
| Prasad et al. | Resource allocation and SLA determination for large data processing services over cloud | |
| US11093935B2 (en) | System and methods for a resource-saving exchange protocol based on trigger-ready envelopes among distributed nodes | |
| Marian et al. | Analysis of Different SaaS Architectures from a Trust Service Provider Perspective |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20240223 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20260605 |