FR3087556A1 - METHOD FOR IMPROVING THE EFFICIENCY OF USE OF THE RESOURCES OF AN INFRASTRUCTURE FOR IMPLEMENTING A SCHEDULING PLAN - Google Patents
METHOD FOR IMPROVING THE EFFICIENCY OF USE OF THE RESOURCES OF AN INFRASTRUCTURE FOR IMPLEMENTING A SCHEDULING PLAN Download PDFInfo
- Publication number
- FR3087556A1 FR3087556A1 FR1859590A FR1859590A FR3087556A1 FR 3087556 A1 FR3087556 A1 FR 3087556A1 FR 1859590 A FR1859590 A FR 1859590A FR 1859590 A FR1859590 A FR 1859590A FR 3087556 A1 FR3087556 A1 FR 3087556A1
- Authority
- FR
- France
- Prior art keywords
- resources
- execution
- plan
- resource
- values
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000010923 batch production Methods 0.000 claims abstract description 99
- 238000004513 sizing Methods 0.000 claims abstract description 87
- 238000012545 processing Methods 0.000 claims description 100
- 238000012795 verification Methods 0.000 claims description 33
- 238000004364 calculation method Methods 0.000 claims description 29
- 238000005457 optimization Methods 0.000 claims description 22
- 238000005259 measurement Methods 0.000 claims description 13
- 230000004048 modification Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 8
- 238000011282 treatment Methods 0.000 claims description 5
- 238000010200 validation analysis Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 34
- 230000014509 gene expression Effects 0.000 description 18
- 230000015654 memory Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 16
- 238000003860 storage Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 13
- 239000000523 sample Substances 0.000 description 12
- 238000004590 computer program Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000007257 malfunction Effects 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000011449 brick Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003116 impacting effect Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004064 dysfunction Effects 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 238000001033 granulometry Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000001483 mobilizing effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- General Factory Administration (AREA)
Abstract
L'invention porte sur procédé de génération d'un plan de dimensionnement optimisé pour l'amélioration de l'efficacité d'utilisation des ressources d'une infrastructure informatique impliquée dans l'exécution d'une pluralité de traitements par lots selon un plan d'ordonnancement, ledit procédé comportant : - une étape (100) d'acquisition de données, comportant l'acquisition d'un premier plan de dimensionnement d'un coefficient de pondération prédéterminé pour chaque ressource d'une pluralité de ressources et de paramètres d'exécution prédéterminés d'un plan d'ordonnancement; - une étape de calcul (200) d'une première valeur d'efficacité d'utilisation des ressources; - une étape de détermination (300) de durées d'exécution rallongées de la pluralité de traitements par lots, en fonction de valeurs de quantités de ressources disponibles, une étape de génération (400), d'au moins un plan de dimensionnement optimisé comportant la sélection de nouvelles valeurs de quantité de ressources attribuées à l'au moins un plan de dimensionnement optimisé. A method of generating an optimized sizing plan for improving the efficiency of resource utilization of an IT infrastructure involved in performing a plurality of batch processes according to a plan of. 'scheduling, said method comprising: - a step (100) of data acquisition, comprising the acquisition of a first dimensioning plan of a predetermined weighting coefficient for each resource of a plurality of resources and of predetermined execution parameters of a plan scheduling; - a step of calculating (200) a first value of efficiency of use of resources; - a step of determining (300) extended execution times of the plurality of batch processes, as a function of values of quantities of available resources, a step of generation (400) of at least one optimized sizing plan comprising selecting new resource quantity values assigned to the at least one optimized sizing plan.
Description
PROCEDE D'AMELIORATION DE L'EFFICACITE D'UTLISATION DES RESSOURCES D'UNE INFRASTRUCTURE DESTINEE A EXECUTER UN PLAN D'ORDONNANCEMENT PROCESS FOR IMPROVING THE EFFICIENCY OF USING THE RESOURCES OF AN INFRASTRUCTURE INTENDED TO EXECUTE A SCHEDULE PLAN
[0001] L'invention concerne le domaine des traitements par lots, et plus particulièrement celui de l'amélioration de l'utilisation des ressources d'une infrastructure informatique impliquée dans l'exécution de traitements par lots.The invention relates to the field of batch processing, and more particularly that of improving the use of resources of a computer infrastructure involved in the execution of batch processing.
L'invention porte notamment sur un procédé d'amélioration de l'efficacité d'utilisation des ressources d'une infrastructure informatique pour l'exécution d'une pluralité de traitement par lots selon un plan d'ordonnancement.In particular, the invention relates to a method for improving the efficiency of using resources of an IT infrastructure for performing a plurality of batch processing operations according to a scheduling plan.
Un tel procédé permet de calculer un dimensionnement optimisé de l'infrastructure informatique pour que l'exécution d'un plan d'ordonnancement se fasse avec une efficacité améliorée.Such a method makes it possible to calculate an optimized dimensioning of the IT infrastructure so that the execution of a scheduling plan is done with improved efficiency.
[Art antérieur [Prior art
[0002] En général, les traitements par lots sont les processus exécutés par un système informatique de façon autonome (e.g. sans interaction de l'utilisateur).[0002] In general, batch processing is the process executed by a computer system autonomously (e.g. without user interaction).
Ils sont utilisés pour l'automatisation de tâches non interactives qui doivent être exécutées de manière fiable avant certaines échéances.They are used for the automation of non-interactive tasks that must be performed reliably before certain deadlines.
Un traitement par lots peut par exemple être utilisé pour mettre à jour les informations à la fin de la journée, transformer des données, générer des rapports, imprimer des documents ou réaliser d'autres tâches non interactives.For example, a batch job can be used to update information at the end of the day, transform data, generate reports, print documents or perform other non-interactive tasks.
Un traitement par lot peut aussi être utilisé pour effectuer diverses opérations avec fichiers, notamment des images numériques, telles que le redimensionnement ou la conversion.Batch processing can also be used to perform various operations with files, including digital images, such as resizing or converting.
Ces traitements par lot sont généralement mis en attente ou accumulés pendant les heures de pics lorsque les ressources informatiques ne sont pas disponibles ou limitées par les activités en temps réel.These batch jobs are typically put on hold or accumulated during peak hours when computing resources are unavailable or limited by real-time activity.
Ils sont alors exécutés en dehors des heures de pointe lorsque les ressources informatiques sont disponibles.They are then executed outside peak hours when computer resources are available.
Il est ainsi très fréquent que, pour des raisons techniques, ces traitements soient planifiés la nuit, les fins de semaine ou durant des périodes de faible activité métier. It is therefore very common that, for technical reasons, these treatments are scheduled at night, on weekends or during periods of low business activity.
[0003] L'évolution constante des systèmes d'information, et la multiplication des traitements par lot, tend à surcharger les périodes durant lesquelles les traitements peuvent s'exécuter.The constant evolution of information systems, and the multiplication of batch processing, tends to overload the periods during which the processing operations can be executed.
Or, il s'agit souvent de traitements longs et critiques qu'il convient particulièrement de surveiller afin de garantir le bon fonctionnement des applicatifs métiers pendant les horaires « humains » d'utilisation.However, these are often long and critical processes that should be monitored in particular in order to guarantee the proper functioning of business applications during “human” hours of use.
Ainsi, il est connu des planificateurs de traitement par lots (« batch scheduler » en anglais).Thus, it is known to batch schedulers.
Il existe notamment un mécanisme décrit dans le document EP3113022 consistant à utiliser les niveaux de consommation de 2 ressources dans les règles d'ordonnancement des traitements par lot.There is in particular a mechanism described in document EP3113022 consisting in using the consumption levels of 2 resources in the scheduling rules for batch processing.
Plus particulièrement, ce mécanisme se base sur les contraintes d'exécution, les ressources qu'ils consomment et les ressources disponibles sur l'infrastructure. More specifically, this mechanism is based on execution constraints, the resources they consume and the resources available on the infrastructure.
[0004] En outre, la fluctuation importante dans le temps des volumes de données entraine 5 des consommations de ressources et des temps de traitements très volatiles.[0004] In addition, the significant fluctuation over time in the volumes of data leads to very volatile resource consumption and processing times.
Par exemple, un même ordonnancement sur une même infrastructure peut entrainer un jour une surcharge des ressources et une interruption de traitement alors qu'un autre jour, à quelques jours d'intervalles, aucun dysfonctionnement ne sera décelé.For example, the same scheduling on the same infrastructure can lead one day to an overload of resources and an interruption of processing while another day, with a few days intervals, no dysfunction will be detected.
Toutes ces évolutions ont un impact non seulement sur le temps d'exécution des traitements, mais également sur la 10 quantité des ressources utilisées.All these changes have an impact not only on the execution time of the processing operations, but also on the quantity of the resources used.
De fait, les administrateurs des systèmes d'information (SI) ont tendance à augmenter les ressources de leur infrastructure de façon à ce que les traitements par lots soient terminés dans les temps impartis et qu'ils n'entrainent par une saturation des ressources disponibles.In fact, information systems (IS) administrators tend to increase the resources of their infrastructure so that the batch processes are completed in the allotted time and that they do not lead to a saturation of the available resources. .
En effet, dans certains cas, la production peut être arrêtée si les traitements n'ont pas pu se réaliser en temps voulu. 15 Indeed, in some cases, production can be stopped if the treatments could not be carried out in time. 15
[0005] Ces évolutions entrainent généralement un surdimensionnement des infrastructures informatiques impliquées dans l'exécution de traitements par lots selon des plans d'ordonnancement.[0005] These changes generally lead to an oversizing of the IT infrastructures involved in the execution of batch processing according to scheduling plans.
Or, avec des utilisations de plus en plus courantes de ces traitements par lots et des contraintes au niveau de l'utilisation des ressources, il est nécessaire pour les administrateurs SI de disposer de procédés ou de dispositifs permettant 20 d'améliorer l'efficacité de l'utilisation des ressources et réduire leur gaspillage. Now, with more and more common uses of these batch processing operations and constraints in the use of resources, it is necessary for IS administrators to have methods or devices available which make it possible to improve the efficiency of the process. the use of resources and reduce their waste.
[0006] En effet, une utilisation inadaptée de certaines ressources lors de l'exécution de traitement par lots peut entrainer un ralentissement de l'exécution du traitement par lots, une incompatibilité avec les autres traitements par lots et un épuisement des ressources.[0006] In fact, an inappropriate use of certain resources during the execution of batch processing can lead to a slowing down of the execution of the batch processing, incompatibility with other batch processing operations and exhaustion of resources.
De plus, les ressources allouées étant variables entre chaque traitement par lot, il est difficile 25 d'organiser, de programmer ou de façon plus générale d'exécuter les traitements par lots. In addition, the allocated resources being variable between each batch process, it is difficult to organize, program or more generally to execute the batch processes.
[0007] Néanmoins, il n'existe pas à ce jour de solution qui permette de calculer un dimensionnement d'une infrastructure informatique permettant la bonne exécution du plan d'ordonnancement, cela sans gaspillage des ressources et avec une efficacité d'utilisation maximale.[0007] However, to date there is no solution which makes it possible to calculate a dimensioning of an IT infrastructure allowing the proper execution of the scheduling plan, without wasting resources and with maximum efficiency of use.
En effet, avec les mécanismes connus, il peut survenir un gaspillage de 30 ressources.Indeed, with the known mechanisms, it can occur a waste of 30 resources.
De plus, l'exécution des traitements par lots dans des environnements virtualisés se généralise et la définition d'un dimensionnement optimisé avec une efficacité d'utilisation des ressources améliorée permettant une bonne exécution des traitements par 3 lots permettrait de pouvoir mettre en parallèle un plus grand nombre de traitements par lots sur une même infrastructure informatique. In addition, the execution of batch processes in virtualized environments becomes generalized and the definition of an optimized sizing with an improved efficiency of use of the resources allowing a good execution of the processes by 3 batches would allow to be able to put in parallel a more large number of batch processes on the same IT infrastructure.
[0008] Ainsi, il existe un besoin pour de nouveaux procédés ou dispositifs capables de générer un plan de dimensionnement permettant l'amélioration de l'efficacité d'utilisation des ressources pour l'exécution d'une pluralité de traitements par lots.[0008] Thus, there is a need for new methods or devices capable of generating a dimensioning plan allowing the improvement of the efficiency of use of resources for the execution of a plurality of batch processes.
JProblème technique! Technical problem!
[0009] L'invention a pour but de remédier aux inconvénients de l'art antérieur.[0009] The aim of the invention is to remedy the drawbacks of the prior art.
En particulier, l'invention a pour but de proposer un procédé d'amélioration de l'efficacité 10 d'utilisation des ressources d'une infrastructure informatique pour l'exécution d'une pluralité de traitement par lots selon un plan d'ordonnancement, ledit procédé étant capable de générer un plan de dimensionnement optimisé portant sur une quantité de ressources suffisante pour mener à bien le plan d'ordonnancement, et dont l'efficacité d'utilisation des ressources est améliorée. 15 In particular, the object of the invention is to propose a method for improving the efficiency of the use of the resources of an IT infrastructure for the execution of a plurality of batch processing operations according to a scheduling plan, said method being capable of generating an optimized sizing plan relating to a quantity of resources sufficient to carry out the scheduling plan, and of which the efficiency of use of the resources is improved. 15
[0010] L'invention a en outre pour but de proposer un dispositif capable de mettre en oeuvre un procédé d'amélioration de l'efficacité d'utilisation des ressources d'une infrastructure informatique de façon à ce qu'elle soit capable avec un minimum de ressource d'exécuter les traitements par lots dans un temps maximum prédéterminé et avec une efficacité maximale des ressources utilisées.The invention further aims to provide a device capable of implementing a method of improving the efficiency of use of the resources of a computer infrastructure so that it is capable with a minimum resource to run the batch processes in a predetermined maximum time and with maximum efficiency of the resources used.
20 JBrève description de l'invention! 20 JBrief description of the invention!
[0011] A cet effet, l'invention porte sur un procédé de génération d'un plan de dimensionnement optimisé pour l'amélioration de l'efficacité d'utilisation des ressources 25 d'une infrastructure informatique impliquée dans l'exécution d'une pluralité de traitements par lots selon un plan d'ordonnancement, ledit procédé comportant : une étape d'acquisition de données, par un module d'acquisition, comportant l'acquisition d'un premier plan de dimensionnement, d'un coefficient de pondération prédéterminé pour chaque ressource d'une pluralité de ressources et de paramètres 30 d'exécution prédéterminés d'un plan d'ordonnancement, ledit premier plan de dimensionnement comportant des premières valeurs de quantité de ressources 4 attribuées permettant l'exécution d'une pluralité de traitements par lots selon le plan d'ordonnancement sur une durée correspondant à une première durée globale d'exécution du plan d'ordonnancement ; - une étape de calcul d'une première valeur d'efficacité d'utilisation des ressources, 5 par un module d'optimisation, à partir des premières valeurs de quantité de ressources attribuées, des coefficients de pondération prédéterminés et de la première durée globale d'exécution du plan d'ordonnancement ; - une étape de détermination de durées d'exécution rallongées de la pluralité de traitements par lots, en fonction de valeurs de quantités de ressources disponibles, 10 comportant : o la génération sur une infrastructure informatique, par un module de raréfaction de ressources, d'une consommation contrôlée d'au moins une ressource selon des règles de raréfaction préalablement mémorisées de façon à laisser à disposition d'un traitement par lots une quantité de ressources disponible 15 inférieure à une quantité de ressources initiale, o l'exécution sur l'infrastructure informatique, par un module d'exécution de traitement par lots, de chacun des traitements par lots de la pluralité de traitements par lots, et o une étape de mesure, par un module de collecte de métriques, de durées 20 d'exécution rallongées en fonction de valeurs de quantité de ressources disponible pour chacun des traitements par lots ; et - une étape de génération, par le module d'optimisation, d'au moins un plan de dimensionnement optimisé, ladite étape de génération comportant : o la définition de valeurs de quantité de ressources, inférieures aux premières 25 valeurs de quantité de ressources attribuées, o le calcul, pour chaque valeur de quantité de ressources, d'une nouvelle valeur d'efficacité d'utilisation des ressources, ledit calcul étant fonction des valeurs de quantité de ressources, des coefficients de pondération prédéterminés et des durées d'exécution rallongées mesurées des traitements par lots, et 30 o la sélection de nouvelles valeurs de quantité de ressources attribuées à l'au moins un plan de dimensionnement optimisé, lesdites nouvelles valeurs de quantité de ressources attribuées étant sélectionnées parmi les valeurs de quantité de ressources dont la nouvelle valeur d'efficacité d'utilisation des ressources est améliorée par rapport à la première valeur d'efficacité d'utilisation des ressources 5 To this end, the invention relates to a method for generating an optimized sizing plan for improving the efficiency of use of the resources of an IT infrastructure involved in the execution of a plurality of batch processing operations according to a scheduling plan, said method comprising: a step of data acquisition, by an acquisition module, comprising the acquisition of a first dimensioning plan, of a predetermined weighting coefficient for each resource of a plurality of resources and of predetermined execution parameters of a scheduling plan, said first dimensioning plan comprising first values of quantity of resources 4 allocated allowing the execution of a plurality of processes in batches according to the scheduling plan over a period corresponding to a first overall duration of execution of the scheduling plan; a step of calculating a first value of efficiency of use of resources, by an optimization module, from the first values of quantity of resources allocated, from the predetermined weighting coefficients and from the first overall duration d 'execution of the scheduling plan; a step of determining extended execution times of the plurality of batch processes, as a function of values of quantities of available resources, comprising: the generation on an IT infrastructure, by a resource scarcity module, of a controlled consumption of at least one resource according to previously stored rarefaction rules so as to leave a quantity of available resources available for a batch processing less than an initial quantity of resources, o execution on the infrastructure data processing, by a batch processing execution module, of each of the batch processing operations of the plurality of batch processing operations, and a step of measuring, by a metrics collection module, of execution times extended in function of values of quantity of resources available for each of the batch processes; and a step of generation, by the optimization module, of at least one optimized sizing plan, said generation step comprising: the definition of resource quantity values, lower than the first 25 allocated resource quantity values , the calculation, for each value of quantity of resources, of a new value of efficiency of use of resources, said calculation being a function of the values of quantity of resources, of the predetermined weighting coefficients and of the extended execution times measured batch processes, and the selection of new values of quantity of resources allocated to the at least one optimized dimensioning plan, said new values of quantity of allocated resources being selected from among the values of quantity of resources including the new one Resource use efficiency value is improved over the first resource use efficiency value 5
[0012] Le procédé selon l'invention permet de calculer un dimensionnement en ressources, pour une infrastructure informatique, capable de supporter la bonne exécution d'un plan d'ordonnancement et permettant de maximiser l'efficacité de l'utilisation des ressources.The method according to the invention makes it possible to calculate a resource sizing, for an IT infrastructure, capable of supporting the proper execution of a scheduling plan and making it possible to maximize the efficiency of the use of resources.
Il permet par exemple de déterminer le ou les dimensionnements comportant 5 une combinaison de ressources plus efficace pour un plan d'ordonnancement donné.It makes it possible, for example, to determine the dimensioning (s) comprising a more efficient combination of resources for a given scheduling plan.
De nombreuses méthodes visent à réduire le temps d'exécution des traitements par lot ou à sécuriser leur exécution en assurant une quantité de ressources bien supérieure au besoin.Many methods aim to reduce the execution time of batch processes or to secure their execution by ensuring a quantity of resources much greater than needed.
Ici, le procédé permet de générer un plan de dimensionnement améliorant l'efficacité d'utilisation des ressources impliquées ou attribuées.Here, the method makes it possible to generate a dimensioning plan improving the efficiency of use of the resources involved or allocated.
C'est-à-dire que les valeurs de 10 ressources attribuées ne sont pas sélectionnées pour être les plus basses possible ou pour permettre l'exécution la plus rapide mais elles sont sélectionnées pour correspondre aux quantités de ressources les plus adaptées au regard de facteurs propres à ses ressources (disponibilités, quantité brute, demande...) tels que modélisés par le coefficient de pondération. 15 That is, the values of 10 allocated resources are not selected to be as low as possible or to allow the fastest execution, but they are selected to correspond to the quantities of resources that are most suitable with regard to factors specific to its resources (availability, gross quantity, demand, etc.) as modeled by the weighting coefficient. 15
[0013] Selon d'autres caractéristiques optionnelles du procédé : - la génération d'au moins un plan de dimensionnement optimisé comporte en outre le calcul de paramètres d'exécution du plan d'ordonnancement en fonction de valeurs d'efficacité d'utilisation des ressources et en ce que les nouvelles valeurs de quantité de ressources attribuées sont également sélectionnées parmi les valeurs de quantité de ressources dont 20 les paramètres d'exécution calculés respectent des paramètres d'exécution prédéterminés du plan d'ordonnancement.[0013] According to other optional characteristics of the method: the generation of at least one optimized sizing plan further comprises the calculation of execution parameters of the scheduling plan as a function of values of efficiency of use of the resources and in that the new allocated resource quantity values are also selected from among the resource quantity values whose calculated execution parameters respect predetermined execution parameters of the scheduling plan.
Ainsi, il est par exemple possible de vérifier que la durée d'exécution globale maximale prédéterminée du plan d'ordonnancement n'est pas dépassé. 25 - le premier plan de dimensionnement est obtenu selon une étape de génération de plan de dimensionnement comportant : oune étape d'acquisition de données, par un module d'acquisition, comportant l'acquisition de règles d'exécution prédéterminées, et d'une empreinte sur une pluralité de ressources de chaque traitement par lots 30 oune étape de calcul, par un module de dimensionnement, comportant, en fonction de l'empreinte sur une pluralité de ressources de chaque traitement par lots et selon un plan d'ordonnancement respectant les règles d'exécution prédéterminées, le calcul de valeurs maximales de consommation de ressources par période par les traitements par lots, et 6 oune étape de définition d'un premier plan de dimensionnement d'une infrastructure informatique, par le module de dimensionnement, en fonction des valeurs maximales de consommation de ressources par périodes calculées, ledit premier plan de dimensionnement comportant des premières valeurs de quantité de ressources attribuées - il comprend la mesure, par le module de collecte de métriques, d'une empreinte de chacun des traitements par lots et l'identification, par le module d'optimisation, de ressources critiques pour chacun des traitements par lots.Thus, it is for example possible to verify that the predetermined maximum overall execution time of the scheduling plan is not exceeded. 25 - the first sizing plan is obtained according to a sizing plan generation step comprising: oua data acquisition step, by an acquisition module, comprising the acquisition of predetermined execution rules, and of a footprint on a plurality of resources of each batch process 30 or a calculation step, by a dimensioning module, comprising, as a function of the footprint on a plurality of resources of each batch process and according to a scheduling plan respecting the predetermined execution rules, the calculation of maximum values of resource consumption per period by batch processing, and 6 or a step of defining a first dimensioning plan of an IT infrastructure, by the dimensioning module, according to maximum values of resource consumption per calculated periods, said first dimensioning plan comprising first values of quantity of resources a ttributed - it includes the measurement, by the metrics collection module, of a footprint of each of the batch processes and the identification, by the optimization module, of critical resources for each of the batch processes.
Cette mesure peut être réalisée en amont 10 du procédé par exemple préalablement à l'étape de détermination de durées d'exécution rallongées.This measurement can be carried out upstream of the method, for example prior to the step of determining extended execution times.
Elle permet de réaliser une sélection des ressources à étudier dans le cadre de l'optimisation du dimensionnement. - l'étape de génération comporte en outre : 15 o le calcul, pour chaque valeurs de quantité générées de ressources, d'une nouvelle durée globale d'exécution du plan d'ordonnancement en fonction des durées d'exécution rallongées mesurées des traitements par lots, et o la suppression des valeurs de quantité de ressources, pour lesquelles la nouvelle durée globale d'exécution du plan d'ordonnancement correspondant est 20 supérieure à une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement Cela permet au procédé selon l'invention de généré des plans de dimensionnement présentant une efficacité d'utilisation des ressources améliorée mais respectant également des durées d'exécution maximales prédéterminées. 25 - lors de l'étape de génération, le procédé comporte la génération d'une pluralité de plan de dimensionnements optimisés. - Il comprend en outre une étape de vérification du respect du plan d'ordonnancement, ladite 30 étape comprenant : o l'exécution, par le module d'exécution de traitement par lots et sur une infrastructure informatique dont les ressources disponibles correspondent au plan de dimensionnement optimisé, de la pluralité de traitements par lots selon le plan d'ordonnancement, 35 o la mesure, par le module de collecte de métriques, de paramètres d'exécution du plan d'ordonnancement, et 7 o la comparaison, par un module de vérification, des paramètres mesurés d'exécution du plan d'ordonnancement avec des paramètres prédéterminés d'exécution du plan d'ordonnancement.It makes it possible to select the resources to be studied within the framework of the optimization of the dimensioning. the generation step further comprises: the calculation, for each quantity values generated of resources, of a new overall execution time of the scheduling plan as a function of the measured extended execution times of the processing operations by batches, and the deletion of the resource quantity values, for which the new overall execution time of the corresponding scheduling plan is greater than a predetermined maximum overall execution time of the scheduling plan. This allows the method according to the invention of generating dimensioning plans exhibiting improved efficiency in the use of resources but also respecting predetermined maximum execution times. - during the generation step, the method comprises the generation of a plurality of optimized dimensioning plan. - It further comprises a step of verifying compliance with the scheduling plan, said step comprising: the execution, by the batch processing execution module and on an IT infrastructure whose available resources correspond to the scheduling plan. optimized sizing, of the plurality of batch processes according to the scheduling plan, 35 o the measurement, by the metrics collection module, of execution parameters of the scheduling plan, and 7 o the comparison, by a module verification, measured execution parameters of the scheduling plan with predetermined execution parameters of the scheduling plan.
Ainsi, il est possible de vérifier que le plan de dimensionnement optimisé généré permet effectivement l'exécution du plan d'ordonnancement dans les conditions prescrites.Thus, it is possible to verify that the optimized sizing plan generated effectively allows the execution of the scheduling plan under the prescribed conditions.
La comparaison peut de préférence être réalisée sur la durée d'exécution globale du plan d'ordonnancement. - l'étape de vérification du respect du plan d'ordonnancement comprend au préalable la 10 génération sur l'infrastructure informatique, par le module de raréfaction de ressources, d'une consommation contrôlée de plusieurs ressources selon le plan de dimensionnement optimisé.The comparison can preferably be carried out over the overall execution time of the scheduling plan. the step of verifying compliance with the scheduling plan comprises beforehand the generation on the IT infrastructure, by the resource scarcity module, of a controlled consumption of several resources according to the optimized sizing plan.
Cela permet de pouvoir vérifier avant la mise en production sur une infrastructure dédiée que le plan de dimensionnement est adapté au plan d'ordonnancement et à ses règles d'exécution. 15 - l'étape de vérification comprend en outre : o le calcul, par le module de vérification, d'une différence entre une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement et une durée globale mesurée d'exécution du plan d'ordonnancement, 20 o la comparaison de la différence calculée, par le module de vérification, à un seuil prédéterminé de performance, et o la validation, par le module de vérification, du plan de dimensionnement optimisé lorsque le seuil prédéterminé de performance n'est pas dépassé.This makes it possible to check before going into production on a dedicated infrastructure that the sizing plan is adapted to the scheduling plan and its execution rules. 15 - the verification step further comprises: the calculation, by the verification module, of a difference between a predetermined maximum overall duration of execution of the scheduling plan and a measured overall duration of execution of the plan d 'scheduling, the comparison of the difference calculated, by the verification module, with a predetermined performance threshold, and the validation, by the verification module, of the optimized sizing plan when the predetermined performance threshold is not not exceeded.
Ainsi, il est possible de vérifier s'il est possible d'optimiser encore le plan de 25 dimensionnement lorsque celui-ci permet encore malgré la réduction de ressources, l'exécution du plan d'ordonnancement dans une durée bien inférieure la durée globale maximale prédéterminée.Thus, it is possible to check whether it is possible to further optimize the dimensioning plan when the latter still allows, despite the reduction in resources, the execution of the scheduling plan in a period much less than the maximum overall duration. predetermined.
Ces étapes permettent de réduire encore le gaspillage de ressources. 30 - il comprend en outre une étape de modification du plan de dimensionnement optimisé si au moins un des paramètres prédéterminés d'exécution du plan d'ordonnancement suivants n'est pas respecté : règle d'exécution, durée maximale prédéterminée d'exécution d'un traitement par lots et durée globale maximale prédéterminée du plan d'ordonnancement. 35 8 These steps further reduce the waste of resources. 30 - it further comprises a step of modifying the optimized sizing plan if at least one of the following predetermined execution parameters of the scheduling plan is not respected: execution rule, predetermined maximum duration of execution of batch processing and predetermined maximum overall duration of the scheduling plan. 35 8
[0014] Selon un autre aspect, l'invention porte sur un dispositif de génération d'un plan de dimensionnement optimisé pour l'amélioration de l'efficacité d'utilisation des ressources d'une infrastructure informatique impliquée dans l'exécution d'une pluralité de traitements par lots selon un plan d'ordonnancement selon l'invention, caractérisé en ce qu'il comporte : 5 - un module d'acquisition configuré pour acquérir un premier plan de dimensionnement, un coefficient de pondération prédéterminé pour chaque ressource d'une pluralité de ressource et des paramètres d'exécution prédéterminés d'un plan d'ordonnancement, ledit premier plan de dimensionnement comportant des premières valeurs de quantité de ressources attribuées permettant l'exécution d'une 10 pluralité de traitements par lots selon un plan d'ordonnancement, ladite exécution se déroulant sur une durée correspondant à une première durée globale d'exécution du plan d'ordonnancement ; - un module de raréfaction de ressources configuré pour générer, sur une infrastructure informatique, une consommation contrôlée d'au moins une ressource 15 selon des règles de raréfaction préalablement mémorisées de façon à laisser à disposition d'un traitement par lots une quantité de ressources disponible inférieure à une quantité de ressources initiale, - un module d'exécution de traitement par lots configuré pour exécuter, sur l'infrastructure informatique, chacun des traitements par lots de la pluralité de 20 traitements par lots, et - un module de collecte de métriques configuré pour mesurer des durées d'exécution rallongées en fonction de valeurs de quantité de ressources disponibles pour chacun des traitements par lots, - un module d'optimisation configuré pour calculer une première valeur d'efficacité 25 d'utilisation des ressources à partir des premières valeurs de quantité de ressources attribuées, des coefficients de pondération prédéterminés et de la première durée globale d'exécution du plan d'ordonnancement, et configuré pour définir des valeurs de quantité de ressources inférieures aux premières valeurs de quantité de ressources attribuées ; calculer, pour chaque valeur de quantité de ressource une 30 nouvelle valeur d'efficacité d'utilisation des ressources, ledit calcul étant fonction des valeurs de quantité de ressources, des coefficients de pondération prédéterminés et des durées d'exécution rallongées mesurées des traitements par lots, et sélectionner de nouvelles valeurs de quantité de ressources attribuées à l'au moins un plan de dimensionnement optimisé, lesdites nouvelles valeurs de quantité de ressources 35 attribuées étant sélectionnées parmi les valeurs de quantité de ressources dont la 9 nouvelle valeur d'efficacité d'utilisation des ressources est améliorée par rapport à la première valeur d'efficacité d'utilisation des ressources . According to another aspect, the invention relates to a device for generating an optimized sizing plan for improving the efficiency of use of the resources of an IT infrastructure involved in the execution of a plurality of batch processes according to a scheduling plan according to the invention, characterized in that it comprises: 5 - an acquisition module configured to acquire a first dimensioning plan, a predetermined weighting coefficient for each resource of a plurality of resource and predetermined execution parameters of a scheduling plan, said first sizing plan comprising first allocated resource quantity values allowing the execution of a plurality of batch processes according to a plan of scheduling, said execution taking place over a period corresponding to a first overall duration of execution of the scheduling plan; a resource rarefaction module configured to generate, on an IT infrastructure, a controlled consumption of at least one resource 15 according to previously stored rarefaction rules so as to leave a quantity of available resources available for batch processing less than an initial amount of resources, - a batch processing execution module configured to execute, on the IT infrastructure, each of the batch processes of the plurality of 20 batch processes, and - a metrics collection module configured to measure extended execution times as a function of values of quantity of resources available for each of the batch processes, - an optimization module configured to calculate a first value of efficiency of use of resources from the first values of allocated resource quantity, predetermined weighting coefficients and the first overall duration e execution of the scheduling plan, and configured to define resource quantity values lower than the first allocated resource quantity values; calculating, for each resource quantity value a new resource utilization efficiency value, said calculation being a function of the resource quantity values, the predetermined weighting coefficients and the measured extended execution times of the batch processes , and selecting new resource quantity values allocated to the at least one optimized sizing plan, said new allocated resource quantity values being selected from among the resource quantity values including the new efficiency value of. Resource utilization is improved from the first value of resource utilization efficiency.
[0015] Comme le procédé selon l'invention, un tel dispositif permet de calculer le dimensionnement d'une l'infrastructure informatique, nécessaire à la bonne exécution d'un 5 plan d'ordonnancement tout en maximisant l'efficacité de l'utilisation des ressources.Like the method according to the invention, such a device makes it possible to calculate the dimensioning of an IT infrastructure, necessary for the proper execution of a scheduling plan while maximizing the efficiency of use. Resource.
Ainsi contrairement aux dispositifs ou systèmes classiques visant à optimiser le plan d'ordonnancement ou à assurer l'absence de dysfonctionnement lors de l'exécution d'un plan d'ordonnancement, un tel dispositif va permettre de réduire le gaspillage de ressources associées au maintien d'infrastructure informatique surdimensionnées et dédiées à 10 l'exécution des traitements par lots. Thus, unlike conventional devices or systems aiming to optimize the scheduling plan or to ensure the absence of malfunction during the execution of a scheduling plan, such a device will make it possible to reduce the waste of resources associated with maintaining oversized IT infrastructure dedicated to performing batch processing.
[0016] Selon un autre aspect, l'invention porte en outre sur un programme d'ordinateur comprenant des instructions qui, lorsque le programme d'ordinateur est chargé dans la mémoire d'un ordinateur et est exécuté par un processeur dudit ordinateur, cause la mise en oeuvre par l'ordinateur de toutes les étapes du procédé selon l'invention. 15 According to another aspect, the invention further relates to a computer program comprising instructions which, when the computer program is loaded into the memory of a computer and is executed by a processor of said computer, cause the implementation by the computer of all the steps of the method according to the invention. 15
[0017] Selon un autre aspect, l'invention porte en outre sur un support d'enregistrement tangible, lisible par un ordinateur, sur lequel est enregistré de manière non-transitoire le programme selon l'invention. According to another aspect, the invention further relates to a tangible recording medium, readable by a computer, on which the program according to the invention is recorded in a non-transient manner.
[0018] D'autres avantages et caractéristiques de l'invention apparaitront à la lecture de la description suivante donnée à titre d'exemple illustratif et non limitatif, en référence aux 20 Figures annexées qui représentent : - Figure 1, une représentation schématique d'un procédé de génération d'un plan de dimensionnement optimisé pour l'amélioration de l'efficacité d'utilisation des ressources d'une infrastructure informatique impliquée dans l'exécution d'une pluralité de traitements par lots selon l'invention.[0018] Other advantages and characteristics of the invention will become apparent on reading the following description given by way of illustrative and non-limiting example, with reference to the appended figures which represent: - Figure 1, a schematic representation of a method of generating an optimized sizing plan for improving the efficiency of use of the resources of an IT infrastructure involved in the execution of a plurality of batch processes according to the invention.
Les étapes encadrées par des 25 pointillés sont facultatives ; - Figure 2, une représentation schématique d'une étape préalable d'identification de ressources critiques ; - Figure 3, une représentation schématique d'une étape préalable de génération d'un plan de dimensionnement ; 10 - Figure 4, une représentation schématique d'une étape de détermination de durées d'exécution rallongées, de la pluralité des traitements par lots, en fonction de valeurs de quantité de ressources disponibles selon un mode de réalisation de l'invention ; - Figure 5A, une représentation schématique d'une étape de génération d'au moins un nouveau plan de dimensionnement optimisé selon un mode de réalisation de l'invention - Figure 5B, une représentation schématique d'une étape de génération d'au moins un nouveau plan de dimensionnement optimisé selon un mode de réalisation de l'invention ; 10 - Figure 6, une représentation schématique d'une étape de vérification du respect du plan d'ordonnancement selon l'invention ; - Figure 7, une représentation schématique d'une étape de vérification du respect du plan d'ordonnancement selon un mode de réalisation de l'invention - Figure 8, une représentation schématique d'une étape de modification 15 supplémentaire de la quantité de ressources attribuées au plan de dimensionnement optimisé selon l'invention ; - Figure 9, une vue schématique du dispositif d'optimisation du dimensionnement d'une infrastructure informatique pour l'exécution d'une pluralité de traitement par lots selon l'invention. 20 Steps enclosed by dotted lines are optional; - Figure 2, a schematic representation of a preliminary step for identifying critical resources; FIG. 3, a schematic representation of a preliminary step for generating a dimensioning plan; FIG. 4, a schematic representation of a step for determining extended execution times, of the plurality of batch processes, as a function of values of quantity of resources available according to one embodiment of the invention; - Figure 5A, a schematic representation of a step for generating at least one new optimized dimensioning plan according to one embodiment of the invention - Figure 5B, a schematic representation of a step for generating at least one new optimized sizing plan according to one embodiment of the invention; FIG. 6, a schematic representation of a step for verifying compliance with the scheduling plan according to the invention; - Figure 7, a schematic representation of a step of verifying compliance with the scheduling plan according to one embodiment of the invention - Figure 8, a schematic representation of a step of additional modification of the quantity of allocated resources the optimized dimensioning plan according to the invention; FIG. 9, a schematic view of the device for optimizing the sizing of an IT infrastructure for the execution of a plurality of batch processing operations according to the invention. 20
[0019] Des aspects de la présente invention sont décrits en référence à des organigrammes et / ou à des schémas fonctionnels de procédés, d'appareils (systèmes) et de produits de programme d'ordinateur selon des modes de réalisation de l'invention. Aspects of the present invention are described with reference to flowcharts and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention.
[0020] Sur les figures, les organigrammes et les schémas fonctionnels illustrent l'architecture, la fonctionnalité et le fonctionnement d'implémentations possibles de 25 systèmes, de procédés et de produits de programme d'ordinateur selon divers modes de réalisation de la présente invention.[0020] In the figures, flowcharts and block diagrams illustrate the architecture, functionality and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. .
A cet égard, chaque bloc dans les organigrammes ou blocs-diagrammes peut représenter un système, un dispositif, un module ou un code, qui comprend une ou plusieurs instructions exécutables pour mettre en oeuvre la ou les fonctions logiques spécifiées.In this regard, each block in the flowcharts or block diagrams may represent a system, device, module or code, which comprises one or more executable instructions for implementing the specified logic function (s).
Dans certaines implémentations, les fonctions associées aux 30 blocs peuvent apparaître dans un ordre différent que celui indiqué sur les figures.In some implementations, the functions associated with the blocks may appear in a different order than that shown in the figures.
Par 11 exemple, deux blocs montrés successivement peuvent, en fait, être exécutés sensiblement simultanément, ou les blocs peuvent parfois être exécutés dans l'ordre inverse, en fonction de la fonctionnalité impliquée.For example, two blocks shown in succession may, in fact, be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order, depending on the functionality involved.
Chaque bloc des schémas de principe et / ou de l'organigramme, et des combinaisons de blocs dans les schémas de principe et / ou l'organigramme, peuvent être mis en oeuvre par des systèmes matériels spéciaux qui exécutent les fonctions ou actes spécifiés ou effectuer des combinaisons de matériel spécial et d'instructions informatiques. f Description de l'invention]. 10 Each block of the block diagrams and / or the flowchart, and combinations of blocks in the block diagrams and / or the flowchart, can be implemented by special hardware systems that perform the specified functions or acts or perform combinations of special equipment and computer instructions. f Description of the invention]. 10
[0021] Dans la suite de la description, l'expression « améliorée l'efficacité d'utilisation des ressources » au sens de l'invention, on entend l'action de maximiser ou perfectionner l'utilisation des ressources d'une infrastructure informatique, dans le cadre de l'exécution d'un traitement par lot, par rapport à un niveau antérieur à la mise en oeuvre de l'invention.In the remainder of the description, the expression "improved the efficiency of use of resources" within the meaning of the invention is understood to mean the action of maximizing or improving the use of the resources of an IT infrastructure. , within the framework of the execution of a batch processing, compared to a level prior to the implementation of the invention.
Cette meilleure efficacité est permise par le choix de quantité de ressources de façon à 15 privilégier les ressources les plus disponibles et dont l'utilisation entraine un impact le plus faible possible sur l'infrastructure informatique ou son administration. This better efficiency is made possible by the choice of quantity of resources so as to favor the most available resources and the use of which results in the lowest possible impact on the IT infrastructure or its administration.
[0022] L'expression ce traitements par lots » (« batch processing » en terminologie anglo-saxonne) correspond à un enchaînement automatique de plusieurs phases par l'intermédiaire d'une suite de commandes (processus) sur un ordinateur sans intervention 20 d'un opérateur.The expression this batch processing "(" batch processing "in English terminology) corresponds to an automatic sequence of several phases by means of a series of commands (process) on a computer without intervention 20 d 'an operator.
Une fois qu'un processus est terminé l'ordinateur traite un lot suivant et à un instant T, il y a généralement plusieurs traitements par lots qui s'exécutent en parallèle.Once a process is finished the computer processes a next batch and at a time T there are usually several batch processes running in parallel.
Le traitement des lots se termine une fois que tous les lots de la pile (queue) ont été exécutés.Batch processing ends after all batches in the stack (queue) have been executed.
Les traitements par lots sont surtout utilisés pour des tâches automatisées, par exemple pour l'envoi automatique de courriers postaux ou électroniques.Batch processes are mainly used for automated tasks, for example for the automatic sending of postal or electronic mail.
Un traitement par 25 lot est généralement stocké dans un fichier de commandes qui est exécuté par le système informatique.A batch process is generally stored in a batch file which is executed by the computer system.
L'exécution du fichier de commandes peut produire un certain nombre d'actions aussi diverses que la mise à jour de bases de données, l'envoi d'e-mails aux utilisateurs ou la production d'un ou de plusieurs fichiers de sortie à utiliser par un autre traitement par lots. 30 Running the batch file can produce a number of actions as diverse as updating databases, sending emails to users, or producing one or more output files to use by another batch process. 30
[0023] Le « plan d'ordonnancement » au sens de l'invention, aussi appelé « plan d'exécution », correspond à l'ordre d'exécution des différents traitements par lots devant être réalisé au cours d'une période de temps donnée.The "scheduling plan" within the meaning of the invention, also called "execution plan", corresponds to the order of execution of the various batch processes to be carried out during a period of time. given.
Cet ordonnancement est 12 généralement calculé en fonction de règles et/ou de prérequis de façon à satisfaire des exigences de disponibilité de ressources. This scheduling is generally calculated as a function of rules and / or prerequisites so as to satisfy resource availability requirements.
[0024] L'expression « paramètres d'exécution du plan d'ordonnancement » au sens de l'invention correspond à un ensemble de paramètres associés à l'exécution du plan 5 d'ordonnancement.The expression “execution parameters of the scheduling plan” within the meaning of the invention corresponds to a set of parameters associated with the execution of the scheduling plan.
Cela peut par exemple inclure la durée globale d'exécution du plan d'ordonnancement, le respect des règles d'exécution ou la durée d'exécution des traitements par lots.This may for example include the overall execution time of the scheduling plan, compliance with execution rules or the execution time of batch processes.
Les paramètres d'exécution du plan d'ordonnancement peuvent également inclure : l'utilisation de ressources par les traitements par lots dans le temps, ou encore un volume de données générées ou une occupation de l'espace mémoire après la 10 fin des traitements par lots.The execution parameters of the scheduling plan can also include: the use of resources by the batch processes over time, or even a volume of data generated or an occupation of the memory space after the end of the treatments by lots.
Ces valeurs peuvent par exemple être mesurées par des sondes et elles peuvent également être prédéterminées, l'invention incluant en particulier la comparaison de valeurs de paramètres mesurés à des valeurs de paramètres prédéterminées. These values can for example be measured by probes and they can also be predetermined, the invention including in particular the comparison of values of parameters measured with values of predetermined parameters.
[0025] Les expressions « règles d'exécution » ou « règles d'exécution 15 prédéterminées » au sens de l'invention correspondent à des règles d'exécution d'un plan d'ordonnancement dont le respect permet une exécution répondant aux besoins de l'administrateur SI.The expressions "execution rules" or "predetermined execution rules" within the meaning of the invention correspond to rules for the execution of a scheduling plan, compliance with which allows execution to meet the needs of the SI administrator.
Ces règles peuvent notamment inclure des ordres d'enchainement à respecter pour les traitements par lots, des horaires à respecter, ou des seuils de consommation en ressources à respecter. 20 These rules can in particular include sequence orders to be respected for batch processing, schedules to be respected, or resource consumption thresholds to be respected. 20
[0026] L'expression « durée d'exécution » au sens de l'invention correspond au temps d'exécution d'un traitement par lots ou de plusieurs traitements par lots.The expression "execution time" within the meaning of the invention corresponds to the execution time of a batch process or of several batch processes.
Autrement dit, c'est la durée nécessaire au système informatique (e.g. processeur) pour exécuter les ordres.In other words, it is the time required for the computer system (e.g. processor) to execute the orders.
L'expression « durée d'exécution maximale prédéterminée » au sens de l'invention correspond à la durée d'exécution qu'un traitement par lots ne doit pas dépasser.The expression “predetermined maximum execution time” within the meaning of the invention corresponds to the execution time that a batch process must not exceed.
Elle peut 25 correspondre par exemple à la durée d'exécution d'un traitement par lots à ne pas dépasser de façon à ne pas entrainer un dysfonctionnement ou une finalisation tardive d'un plan d'ordonnancement. It may correspond, for example, to the duration of execution of a batch processing which must not be exceeded so as not to cause a malfunction or a late finalization of a scheduling plan.
[0027] L'expression « durée d'exécution rallongée » au sens de l'invention correspond à la durée d'exécution d'un traitement par lots ou de plusieurs traitements par lots lorsque 30 les ressources disponibles ont été réduites. The expression "extended execution time" within the meaning of the invention corresponds to the execution time of a batch process or of several batch processes when the available resources have been reduced.
[0028] L'expression « durée globale d'exécution du plan d'ordonnancement » au sens de l'invention correspond au temps d'exécution du plan d'ordonnancement.The expression "overall execution time of the scheduling plan" within the meaning of the invention corresponds to the execution time of the scheduling plan.
Autrement dit, 13 c'est la durée nécessaire au système informatique (e.g. processeur) pour exécuter les ordres associés à tous les traitements par lots constituant le plan d'ordonnancement.In other words, 13 is the time necessary for the computer system (e.g. processor) to execute the orders associated with all the batch processes constituting the scheduling plan.
La durée globale d'exécution maximale prédéterminée du plan d'ordonnancement au sens de l'invention correspond à la durée d'exécution qu'un plan d'ordonnancement ne doit pas dépasser.The predetermined maximum overall execution time of the scheduling plan within the meaning of the invention corresponds to the execution time that a scheduling plan must not exceed.
Elle peut correspondre par exemple à la durée à ne pas dépasser de façon à ne pas entrainer un dysfonctionnement ou une finalisation tardive d'un plan d'ordonnancement. It may correspond, for example, to the time not to be exceeded so as not to cause a malfunction or a late finalization of a scheduling plan.
[0029] L'expression <, infrastructure informatique » au sens de l'invention correspond à un ensemble de structures informatiques (i.e. dispositifs informatiques) apte à faire fonctionner une application ou une chaine applicative.The expression "IT infrastructure" within the meaning of the invention corresponds to a set of IT structures (i.e. IT devices) capable of operating an application or an application chain.
La structure informatique peut être 10 un ou plusieurs serveurs, elle peut par exemple être composée d'un serveur de présentation, d'un serveur métier et d'un serveur de données.The computer structure can be one or more servers, it can for example be composed of a presentation server, a business server and a data server.
L'infrastructure informatique peut également être un serveur « test » avec les mêmes ressources qu'un serveur de production ou bien un clone d'un serveur virtuel de production.The IT infrastructure can also be a “test” server with the same resources as a production server or a clone of a production virtual server.
De façon préférée, une structure informatique est un serveur. 15 Preferably, a computer structure is a server. 15
[0030] L'expression « plan de dimensionnement » au sens de l'invention correspond aux quantités de ressources accordées à, ou détenues par, une infrastructure informatique notamment dans le cadre de l'exécution d'un plan d'ordonnancement. The expression "dimensioning plan" within the meaning of the invention corresponds to the quantities of resources granted to, or held by, an IT infrastructure in particular within the framework of the execution of a scheduling plan.
[0031] Par « sonde » ou « sonde informatique », on entend au sens de l'invention un logiciel associé à un équipement qui permet d'effectuer, de gérer et de faire remonter vers 20 un équipement informatique des mesures des valeurs de paramètres de l'utilisation de ressources, de paramètres d'exécution de traitement par lots ou encore de l'état de fonctionnement des ressources. By "probe" or "computer probe" is meant within the meaning of the invention software associated with equipment which makes it possible to perform, manage and send back to computer equipment measurements of the values of parameters. the use of resources, batch processing execution parameters or the operating state of resources.
[0032] Le terme « ressource » au sens de l'invention correspond à des paramètres, des capacités ou des fonctions de dispositifs informatiques permettant le fonctionnement d'un 25 traitement par lot ou d'une application.[0032] The term “resource” within the meaning of the invention corresponds to parameters, capacities or functions of computer devices allowing the operation of a batch process or of an application.
Un même dispositif informatique est associé généralement à plusieurs ressources.A single computer device is generally associated with several resources.
De même, une même ressource peut être partagée entre plusieurs traitements par lot.Likewise, the same resource can be shared between several batch processes.
Une ressource est généralement associée à un identifiant unique permettant de l'identifier au sein d'une infrastructure informatique.A resource is generally associated with a unique identifier allowing it to be identified within an IT infrastructure.
Par exemple, le terme <, ressource » peut inclure : des disques réseaux caractérisés par exemple par leurs 30 entrées/sorties, la lecture/écriture sur des disques, le taux d'utilisation de la mémoire, un réseau caractérisé par sa bande passante, un processeur caractérisé par exemple par son utilisation (en pourcent) ou le taux d'occupation de ses caches, une mémoire vive caractérisée par la quantité allouée.For example, the term "resource" can include: network disks characterized for example by their inputs / outputs, reading / writing on disks, the rate of memory utilization, a network characterized by its bandwidth, a processor characterized for example by its use (in percent) or the occupancy rate of its caches, a random access memory characterized by the amount allocated.
On entend par « utilisation des ressources », la 14 consommation d'une ressource par un traitement par lot ou par une application métier.The term “resource use” is understood to mean the consumption of a resource by a batch processing or by a business application.
L'expression « ressource critique » au sens de l'invention correspond à la ou aux ressources dont l'utilisation dans des conditions nominales (i.e. usuelles) est la plus proche de son utilisation limite (seuil prédéterminé d'utilisation maximum) ou de sa saturation ou encore 5 une ressource identifiée comme telle par un utilisateur.The expression “critical resource” within the meaning of the invention corresponds to the resource (s) whose use under nominal (ie usual) conditions is closest to its limit use (predetermined maximum use threshold) or to its use. saturation or else a resource identified as such by a user.
Ainsi, la raréfaction d'une ressource critique fait que les conditions d'exécution de la brique applicative ne sont pas respectées (e.g. seuil de consommation des ressources non respectés ou temps de traitements non respectés).Thus, the scarcity of a critical resource means that the execution conditions of the application brick are not respected (e.g. resource consumption threshold not respected or processing times not respected).
Par exemple, dans une infrastructure informatique comportant un CPU et 8Gb de RAM où en conditions usuelles il y a consommation de 80% de CPU et 2 Gb de RAM 10 alors la ressource critique sera la ressource CPU.For example, in an IT infrastructure comprising a CPU and 8 Gb of RAM where under usual conditions there is consumption of 80% of CPU and 2 Gb of RAM 10 then the critical resource will be the CPU resource.
Le terme « empreinte » au sens de l'invention correspond à des données sur la consommation en ressources d'un traitement par lot ou la disponibilité en ressources d'une machine (pour l'empreinte à vide) pendant sa période d'exécution.The term “footprint” within the meaning of the invention corresponds to data on the resource consumption of a batch process or the resource availability of a machine (for the empty footprint) during its execution period.
Le « pas d'une ressource » peut être d'une part la quantité minimale de ressource pouvant être ajoutée ou soustraite lors d'une étape de modification et d'autre 15 part un multiple de la modification pouvant subir le niveau de ladite ressource.The “step of a resource” can be on the one hand the minimum quantity of resource that can be added or subtracted during a modification step and on the other hand a multiple of the modification that can be subjected to the level of said resource.
Certaines ressources présentent une granulométrie élevée (e.g. serveurs) alors que d'autre présentent une granulométrie faible (e.g. mémoire vive disponible). Some resources have a high particle size (e.g. servers) while others have a low particle size (e.g. available RAM).
[0033] L'expression « quantité de ressources initiale » au sens de l'invention correspond aux valeurs de quantité de ressources d'une infrastructure informatique avant 20 la mise en place d'une consommation contrôlée des ressources. The expression “initial quantity of resources” within the meaning of the invention corresponds to the values of quantity of resources of an IT infrastructure before the establishment of a controlled consumption of resources.
[0034] L'expression « quantité de ressources disponibles » au sens de l'invention correspond aux valeurs de quantité de ressources qui seront accessibles aux traitements par lots après la mise en place d'une consommation contrôlée. The expression “quantity of available resources” within the meaning of the invention corresponds to the values of quantity of resources which will be accessible to batch processing after the implementation of controlled consumption.
[0035] L'expression « quantité de ressources attribuées » au sens de l'invention 25 correspond aux valeurs de quantité de ressources calculées, selon le procédé de l'invention, comme étant suffisantes à l'infrastructure informatique pour mettre en oeuvre un plan d'ordonnancement s'exécutant sur une durée inférieure à une durée globale maximale prédéterminée. The expression "quantity of resources allocated" within the meaning of the invention corresponds to the values of quantity of resources calculated, according to the method of the invention, as being sufficient for the IT infrastructure to implement a plan. scheduling executing over a period of less than a predetermined maximum overall duration.
[0036] L'expression « consommation contrôlée d'au moins une ressource » au sens 30 de l'invention correspond à une réduction de la quantité de ressource pouvant être utilisée par un traitement par lots s'exécutant sur une infrastructure informatique par exemple via l'exécution de codes sur ladite infrastructure informatique faisant appels aux ressources concernées. 15 The expression "controlled consumption of at least one resource" within the meaning of the invention corresponds to a reduction in the quantity of resource that can be used by a batch processing running on an IT infrastructure, for example via the execution of codes on said computer infrastructure calling on the resources concerned. 15
[0037] On entend par « traiter », « calculer », « déterminer », « afficher », « extraire » « comparer » ou plus largement « opération exécutable », au sens de l'invention, une action effectuée par un dispositif ou un processeur sauf si le contexte indique autrement.The term "process", "calculate", "determine", "display", "extract" "compare" or more broadly "executable operation", within the meaning of the invention, means an action performed by a device or a processor unless the context indicates otherwise.
À cet égard, les opérations se rapportent à des actions et / ou des processus d'un système de traitement de données, par exemple un système informatique ou un dispositif informatique électronique, qui manipule et transforme les données représentées en tant que quantités physiques (électroniques) dans les mémoires du système informatique ou d'autres dispositifs de stockage, de transmission ou d'affichage de l'information.In this regard, operations refer to actions and / or processes of a data processing system, for example a computer system or an electronic computing device, which manipulates and transforms the data represented as physical (electronic ) in computer system memories or other information storage, transmission or display devices.
Ces opérations peuvent se baser sur des applications ou des logiciels. 10 These operations can be based on applications or software. 10
[0038] Les termes ou expressions « application », « logiciel », « code de programme », et « code exécutable » signifient toute expression, code ou notation, d'un ensemble d'instructions destinées à provoquer un traitement de données pour effectuer une fonction particulière directement ou indirectement (e.g. après une opération de conversion vers un autre code).The terms or expressions "application", "software", "program code", and "executable code" mean any expression, code or notation, of a set of instructions intended to cause data processing to perform a particular function directly or indirectly (eg after a conversion operation to another code).
Les exemples de code de programme peuvent inclure, sans s'y limiter, 15 un sous-programme, une fonction, une application exécutable, un code source, un code objet, une bibliothèque et/ou tout autre séquence d'instructions conçues pour l'exécution sur un système informatique. Examples of program code may include, but are not limited to, a routine, function, executable application, source code, object code, library, and / or any other sequence of instructions designed for the purpose. execution on a computer system.
[0039] On entend par « processeur », au sens de l'invention, au moins un circuit matériel configuré pour exécuter des opérations selon des instructions contenues dans un code.By "processor" is meant, within the meaning of the invention, at least one hardware circuit configured to perform operations according to instructions contained in a code.
Le 20 circuit matériel peut être un circuit intégré.The hardware circuit can be an integrated circuit.
Des exemples d'un processeur comprennent, sans s'y limiter, une unité de traitement central, un processeur graphique, un circuit intégré spécifique à l'application (ASIC) et un circuit logique programmable. Examples of a processor include, but are not limited to, a central processing unit, a graphics processor, an application specific integrated circuit (ASIC), and a programmable logic circuit.
[0040] On entend par « couplé », au sens de l'invention, connecté, directement ou indirectement avec un ou plusieurs éléments intermédiaires.By "coupled" is meant, within the meaning of the invention, connected, directly or indirectly with one or more intermediate elements.
Deux éléments peuvent être 25 couplés mécaniquement, électriquement ou liés par un canal de communication. Two elements can be mechanically coupled, electrically coupled, or linked by a communication channel.
[0041] L'expression « interface homme-machine » au sens de l'invention correspond à tout élément permettant à un être humain de communiquer avec un ordinateur en particulier et sans que cette liste soit exhaustive, un clavier et des moyens permettant en réponse aux ordres entrés au clavier d'effectuer des affichages et éventuellement de sélectionner à l'aide 30 de la souris ou d'un pavé tactile des éléments affichés sur l'écran.The expression "man-machine interface" within the meaning of the invention corresponds to any element allowing a human being to communicate with a particular computer and without this list being exhaustive, a keyboard and means allowing in response to the commands entered at the keyboard to carry out displays and possibly to select, using the mouse or a touchpad, elements displayed on the screen.
Un autre exemple de réalisation est un écran tactile permettant de sélectionner directement sur l'écran les éléments touchés par le doigt ou un objet et éventuellement avec la possibilité d'afficher un clavier virtuel. 16 Another exemplary embodiment is a touch screen making it possible to select directly on the screen the elements touched by the finger or an object and possibly with the possibility of displaying a virtual keyboard. 16
[0042] Dans la suite de la description, les mêmes références sont utilisées pour désigner les mêmes éléments. In the remainder of the description, the same references are used to designate the same elements.
[0043] Comme cela a été mentionné, la plupart des systèmes et procédés de l'art antérieur s'intéressent à l'optimisation de l'ordonnancement des traitements par lots ou bien à l'organisation du dimensionnement des infrastructures supportant ces traitements par lots de façon à assurer un niveau de service élevé. As has been mentioned, most of the systems and methods of the prior art are concerned with optimizing the scheduling of batch processing operations or else organizing the dimensioning of the infrastructures supporting these batch processing operations. in order to ensure a high level of service.
[0044] Au contraire, dans le cadre de la présente invention, les inventeurs ont développé un procédé et un dispositif permettant de mettre la priorité sur une utilisation des ressources avec une efficacité maximale.On the contrary, in the context of the present invention, the inventors have developed a method and a device making it possible to prioritize the use of resources with maximum efficiency.
Ainsi, les traitements par lots peuvent être exécutés dans un 10 temps imparti en mobilisant une quantité de ressources donnée de façon à avoir un impact le plus faible possible sur les autres processus à exécuter sur l'infrastructure informatique.Thus, the batch processes can be executed in a given time by mobilizing a given amount of resources so as to have the lowest possible impact on the other processes to be executed on the IT infrastructure.
Par exemple, l'exécution du traitement par lots se fera en priorité sur des ressources non essentielles à d'autres applications ou largement disponibles au sein de l'infrastructure informatique. 15 For example, running batch processing will be prioritized over resources that are not essential to other applications or that are widely available within the IT infrastructure. 15
[0045] Pour cela, les inventeurs proposent en particulier un procédé et un dispositif capables de calculer le dimensionnement de l'infrastructure informatique nécessaire à l'exécution efficace d'un plan d'ordonnancement.For this, the inventors propose in particular a method and a device capable of calculating the dimensioning of the IT infrastructure necessary for the efficient execution of a scheduling plan.
L'objectif est en particulier de déterminer le ou les dimensionnements permettant de maximiser l'efficacité d'utilisation des ressources et également de s'assurer que l'exécution du plan d'ordonnancement respecte une durée 20 maximale prédéterminée d'exécution de chaque traitement ou plus largement une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement, ainsi que de préférence des règles d'exécution dudit plan d'ordonnancement. The objective is in particular to determine the dimensioning (s) making it possible to maximize the efficiency of the use of resources and also to ensure that the execution of the scheduling plan respects a predetermined maximum duration of execution of each processing. or more broadly a predetermined maximum overall duration of execution of the scheduling plan, as well as preferably rules for executing said scheduling plan.
[0046] Comme cela est illustré à la figure 1, selon un premier aspect, l'invention porte sur un procédé de génération d'un plan de dimensionnement optimisé pour 25 l'amélioration de l'efficacité d'utilisation des ressources d'une infrastructure informatique impliquée dans l'exécution d'une pluralité de traitements par lots selon un plan d'ordonnancement, ledit procédé comportant une étape 100 d'acquisition de données comportant l'acquisition d'un premier plan de dimensionnement, une étape de calcul 200 d'une première valeur d'efficacité d'utilisation des ressources, une étape de 30 détermination 300 de durées d'exécution rallongées de la pluralité de traitements par lots en fonction de valeurs de quantités de ressources disponible, et une étape 400 de génération d'au moins un plan de dimensionnement optimisé. 17 As illustrated in FIG. 1, according to a first aspect, the invention relates to a method for generating a dimensioning plan optimized for improving the efficiency of use of the resources of a. IT infrastructure involved in the execution of a plurality of batch processing operations according to a scheduling plan, said method comprising a data acquisition step 100 comprising the acquisition of a first dimensioning plan, a calculation step 200 of a first value of resource utilization efficiency, a step of determining 300 extended execution times of the plurality of batch processes as a function of values of quantities of resources available, and a step 400 of generating d '' at least one optimized dimensioning plan. 17
[0047] En particulier, le procédé selon l'invention comporte une étape 100 d'acquisition de données pouvant être mise oeuvre par un module d'acquisition 10.In particular, the method according to the invention comprises a step 100 of data acquisition that can be implemented by an acquisition module 10.
Cette étape peut comporter notamment l'acquisition d'un premier plan de dimensionnement comportant des premières valeurs de quantité de ressources attribuées permettant l'exécution d'une pluralité de traitements par lots.This step may include in particular the acquisition of a first dimensioning plan comprising first values of quantity of resources allocated allowing the execution of a plurality of batch processes.
Ce premier plan de dimensionnement et ces premières valeurs de quantité de ressources attribuées peuvent correspondre à des valeurs de quantité de ressources maximales qu'il conviendra de réduire dans le cadre du procédé selon l'invention.This first dimensioning plan and these first values of quantity of resources allocated can correspond to values of maximum quantity of resources which should be reduced within the framework of the method according to the invention.
Classiquement, l'exécution de la pluralité de traitements par lots est menée selon un plan d'ordonnancement et se déroule sur une durée correspondant à une première 10 durée globale d'exécution du plan d'ordonnancement.Conventionally, the execution of the plurality of batch processes is carried out according to a scheduling plan and takes place over a duration corresponding to a first overall duration of execution of the scheduling plan.
Comme cela sera détaillé par la suite et contrairement à beaucoup d'innovations dans ce domaine, l'objet de l'invention n'est pas de réduire cette première durée globale d'exécution du plan d'ordonnancement mais au contraire de déterminer un dimensionnement d'une infrastructure informatique présentant des quantités de ressources ayant le moins d'impact sur le fonctionnement des autres 15 applications ou plus largement sur la gestion de l'infrastructure informatique. As will be detailed later and unlike many innovations in this field, the object of the invention is not to reduce this first overall execution time of the scheduling plan but on the contrary to determine a dimensioning an IT infrastructure with quantities of resources having the least impact on the operation of the other 15 applications or more generally on the management of the IT infrastructure.
[0048] En outre, de façon à permettre le choix des ressources les moins impactantes, cette étape 100 d'acquisition de données comporte notamment l'acquisition d'un coefficient de pondération prédéterminé pour chaque ressource d'une pluralité de ressource, de préférence d'une pluralité de ressource critiques, et de paramètres d'exécution 20 prédéterminés d'un plan d'ordonnancement.In addition, so as to allow the choice of the least impacting resources, this data acquisition step 100 comprises in particular the acquisition of a predetermined weighting coefficient for each resource of a plurality of resources, preferably a plurality of critical resources, and predetermined execution parameters of a scheduling plan.
Le coefficient de pondération prédéterminé pour chaque ressource peut être fonction de facteurs capables de modéliser les caractéristiques des ressources.The predetermined weighting coefficient for each resource may be a function of factors capable of modeling the characteristics of the resources.
Par exemple, un facteur d'activité de ressource peut être pris en compte dans le coefficient de pondération prédéterminé et correspondre à la situation actuelle de la ressource et à sa tendance d'évolution.For example, a resource activity factor can be taken into account in the predetermined weighting coefficient and correspond to the current situation of the resource and its trend of evolution.
Ce facteur d'activité peut 25 également concerner la gouvernance de la ressource et être représentatif de l'influence de la ressource sur la réalisation des traitements par lots et de la temporalité de cette ressource.This activity factor can also relate to the governance of the resource and be representative of the influence of the resource on the performance of the batch processing operations and of the temporality of this resource.
Le coefficient de pondération prédéterminé peut également prendre en compte un facteur propre à la gestion de la ressource, la réglementation de sa structuration comprenant par exemple, l'influence de la ressource au sein de la structure informatique, 30 son organisation et son d'hébergement au sein de la structure informatique.The predetermined weighting coefficient can also take into account a factor specific to the management of the resource, the regulation of its structure comprising, for example, the influence of the resource within the IT structure, its organization and its hosting. within the IT structure.
Un facteur de sécurité de la ressource prenant en compte la sécurité de chaque ressource et son risque de dysfonctionnement ou d'anomalie ainsi que son niveau de fiabilité peut également être modélisé par le coefficient de pondération prédéterminé.A resource safety factor taking into account the safety of each resource and its risk of malfunction or anomaly as well as its level of reliability can also be modeled by the predetermined weighting coefficient.
Enfin, le coefficient de pondération prédéterminé peut également être fonction d'un facteur de performance de la ressource 35 prenant en compte son niveau d'utilisation et/ou son stockage, ainsi que de son rendement. 18 Finally, the predetermined weighting coefficient can also be a function of a performance factor of the resource 35 taking into account its level of use and / or its storage, as well as its yield. 18
[0049] Comme illustré à la figure 2, le procédé selon l'invention peut comporter au préalable une mesure 101, par un module de collecte de métriques 40, d'une empreinte de chacun des traitements par lots et l'identification 102, par un module de gestion des ressources, des ressources critiques pour chacun des traitements par lots.As illustrated in Figure 2, the method according to the invention may include beforehand a measurement 101, by a metrics collection module 40, of an imprint of each of the batch processing operations and the identification 102, by a resource management module, critical resources for each of the batch processes.
En effet, le 5 procédé selon l'invention vise à optimiser le dimensionnement d'une infrastructure informatique et plus particulièrement à réduire au minimum la quantité de ressources utilisée dans le cadre d'un plan d'ordonnancement et à améliorer l'efficacité d'utilisation des ressources d'un plan de dimensionnement.Indeed, the method according to the invention aims to optimize the dimensioning of an IT infrastructure and more particularly to reduce to a minimum the quantity of resources used within the framework of a scheduling plan and to improve the efficiency of use of the resources of a dimensioning plan.
Il peut être avantageux de s'intéresser, dans le cadre de cette optimisation de dimensionnement, à seulement une partie des ressources 10 dites ressources critiques.It may be advantageous to focus, in the context of this sizing optimization, in only part of the resources referred to as critical resources.
Ainsi, les valeurs de quantités de ressources étudiées dans le cadre du procédé selon l'invention peuvent représenter seulement une partie des ressources d'une infrastructure informatique et sont de préférence les ressources critiques.Thus, the values of quantities of resources studied within the framework of the method according to the invention can represent only a part of the resources of an IT infrastructure and are preferably the critical resources.
Ainsi, de préférence, le premier plan d'ordonnancement peut consister en une liste des valeurs de quantité de ressources, par exemple critiques, à ne pas dépasser. 15 Thus, preferably, the first scheduling plan can consist of a list of the values of quantity of resources, for example critical, not to be exceeded. 15
[0050] Le procédé selon l'invention peut comporter également une étape de génération d'un plan de dimensionnement.The method according to the invention can also include a step of generating a dimensioning plan.
En effet, alors que le procédé peut de préférence être appliqué à partir d'un plan de dimensionnement déjà connu ou bien estimé, il est possible que le plan de dimensionnement permettant l'exécution du plan d'ordonnancement ne soit pas connu.Indeed, while the method can preferably be applied from a sizing plan already known or well estimated, it is possible that the sizing plan allowing the execution of the scheduling plan is not known.
L'étape de génération d'un plan de dimensionnement selon un mode de 20 réalisation de l'invention est illustrée à la figure 3.The step of generating a dimensioning plan according to one embodiment of the invention is illustrated in FIG. 3.
Elle peut notamment comporter une étape 110 d'acquisition de données, pouvant être mise en oeuvre par le module d'acquisition 10, comportant l'acquisition de règles d'exécution prédéterminées, et l'acquisition d'une empreinte de consommation de ressources sur une pluralité de ressources de chaque traitement par lots. 25 It may in particular include a step 110 of data acquisition, which can be implemented by the acquisition module 10, comprising the acquisition of predetermined execution rules, and the acquisition of a resource consumption footprint on a plurality of resources from each batch process. 25
[0051] L'étape de génération d'un plan de dimensionnement comporte également une étape 120 de calcul comportant, en fonction de l'empreinte de chaque traitement par lots et selon un plan d'ordonnancement respectant les règles d'exécution prédéterminées, le calcul de valeurs maximales de consommation de ressources par période par les traitements par lots.The step of generating a sizing plan also comprises a calculation step 120 comprising, as a function of the footprint of each batch process and according to a scheduling plan respecting the predetermined execution rules, the calculation of maximum values of resource consumption per period by batch processes.
Cette étape de calcul 120 peut par exemple être mise en couvre par un module de 30 dimensionnement 70. This calculation step 120 can for example be covered by a dimensioning module 70.
[0052] L'étape de génération d'un plan de dimensionnement peut comporter aussi une étape de définition 130 d'un premier plan de dimensionnement d'une infrastructure informatique 2 en fonction des valeurs maximales de consommation de ressources par 19 périodes calculées, ledit premier plan de dimensionnement comportant des premières valeurs de quantité de ressources attribuées.The step of generating a sizing plan may also include a step of defining 130 a first sizing plan of an IT infrastructure 2 as a function of the maximum values of resource consumption per 19 calculated periods, said first dimensioning plan comprising first values of quantity of allocated resources.
Cette étape de définition 130 d'un premier plan de dimensionnement peut aussi être mise en oeuvre par un module de dimensionnement 70. 5 This step of defining 130 a first dimensioning plan can also be implemented by a dimensioning module 70. 5
[0053] Le procédé de génération d'un plan de dimensionnement pour l'amélioration de l'efficacité d'utilisation des ressources d'un plan de dimensionnement d'une infrastructure informatique comporte également une étape de calcul 200 d'une première valeur d'efficacité d'utilisation des ressources, par un module d'optimisation 50, à partir des premières valeurs de quantité de ressources attribuées, des coefficients de 10 pondération prédéterminés et de la première durée globale d'exécution du plan d'ordonnancement.The method of generating a dimensioning plan for improving the efficiency of use of the resources of a dimensioning plan of an IT infrastructure also comprises a step of calculating 200 of a first value d efficiency of use of resources, by an optimization module 50, on the basis of the first values of quantity of resources allocated, of the predetermined weighting coefficients and of the first overall execution time of the scheduling plan.
Cette étape de calcul peut être réalisée pour chaque ressource.This calculation step can be performed for each resource.
En outre, cette étape permet d'obtenir une valeur d'efficacité d'utilisation des ressources en fonction de la quantité de ressource attribuée et des coefficients de pondération prédéterminés en prenant en compte la durée globale d'exécution du plan 15 d'ordonnancement.In addition, this step makes it possible to obtain an efficiency value for the use of resources as a function of the quantity of resource allocated and of the predetermined weighting coefficients by taking into account the overall duration of execution of the scheduling plan.
Ainsi, la première valeur d'efficacité d'utilisation des ressources permet de déterminer un premier dimensionnement pour l'exécution des traitements par lots selon une durée correspondant à une première durée globale d'exécution du plan d'ordonnancement.Thus, the first resource efficiency value makes it possible to determine a first dimensioning for the execution of the batch processes according to a duration corresponding to a first overall duration of execution of the scheduling plan.
En outre, certaines ressources sont plus disponibles que d'autres au niveau des infrastructures informatiques de par leur utilité, accessibilité, etc. et sont donc 20 soumises à différentes contraintes.In addition, some resources are more available than others in terms of IT infrastructures due to their usefulness, accessibility, etc. and are therefore subject to different constraints.
Il est donc nécessaire pour la bonne exécution des traitements par lots et pour leur optimisation d'exécution, que l'utilisation des ressources se fasse avec une efficacité maximale.It is therefore necessary for the proper execution of batch processes and for their execution optimization, that the use of resources be done with maximum efficiency.
La première valeur d'efficacité permet d'obtenir une valeur d'efficacité pour l'ensemble des ressources utilisées pour l'exécution des traitements par lots selon un plan d'ordonnancement.The first efficiency value makes it possible to obtain an efficiency value for all the resources used for the execution of the batch processes according to a scheduling plan.
Cela constitue une valeur de départ qu'il convient 25 d'améliorer grâce au procédé selon l'invention. This constitutes a starting value which should be improved by means of the method according to the invention.
[0054] Le procédé d'optimisation selon l'invention comporte également une étape de détermination 300 de durées d'exécution rallongées de la pluralité de traitements par lots en fonction de valeurs de quantités de ressources disponibles. The optimization method according to the invention also comprises a step of determining 300 of extended execution times of the plurality of batch processes as a function of values of quantities of available resources.
[0055] Un mode de réalisation de cette étape de détermination 300 est illustré à la figure 30 4.An embodiment of this determination step 300 is illustrated in FIG. 4.
Cette étape 300 peut être initiée par la sélection d'un traitement par lots puis, comme illustré, cette étape comporte la sélection 305 d'au moins une ressource, de préférence critique, par laquelle sera initié le processus de calcul des durées d'exécution rallongées.This step 300 can be initiated by the selection of a batch process then, as illustrated, this step comprises the selection 305 of at least one resource, preferably critical, by which the process of calculating the execution times will be initiated. extended.
Ensuite, il y a génération 310 sur une infrastructure informatique 2 d'une consommation 20 contrôlée d'au moins une ressource selon des règles de raréfaction préalablement mémorisées de façon à laisser à disposition du traitement par lots sélectionné une quantité de ressources disponible inférieure à une quantité de ressources initiale.Then, there is generation 310 on a computer infrastructure 2 of a controlled consumption of at least one resource according to rarefaction rules previously stored so as to leave available to the selected batch processing a quantity of available resources less than one. initial amount of resources.
Comme cela sera détaillé par la suite, cette consommation contrôlée, ou raréfaction, peut être mise en oeuvre par un module de raréfaction de ressources 20.As will be detailed below, this controlled consumption, or rarefaction, can be implemented by a module for rarefaction of resources 20.
Cette consommation contrôlée tient généralement compte de la granulométrie des ressources et prend donc en considération le pas de chacune des ressources. This controlled consumption generally takes into account the granulometry of the resources and therefore takes into account the pitch of each of the resources.
[0056] De préférence, suite à la mise en place de la raréfaction ou avant la mise en place de la raréfaction (i.e. l'essentiel est que les étapes sont au moins concomitantes), cette 10 étape comporte l'exécution 320 sur l'infrastructure informatique 2 du traitement par lots sélectionné parmi la pluralité de traitements par lots.Preferably, following the establishment of the rarefaction or before the establishment of the rarefaction (ie the main thing is that the steps are at least concomitant), this step comprises the execution 320 on the. IT infrastructure 2 of the batch processing selected from among the plurality of batch processing operations.
L'exécution peut être classiquement réalisée par un module d'exécution de traitement par lots 30.The execution can conventionally be carried out by a batch processing execution module 30.
Puis, il y a une mesure 330 de durées d'exécution rallongées en fonction de valeurs de quantité de ressources disponibles.Then, there is a measure 330 of extended execution times as a function of values of quantity of available resources.
La mesure peut notamment être réalisée par un module de collecte de métriques 40 qui 15 sera décrit par la suite.The measurement can in particular be carried out by a metrics collection module 40 which will be described below.
Il peut y avoir autant de mesure de durée d'exécution rallongées qu'il y aura eu de « pas » de raréfaction de ressources.There can be as many measures of lengthened execution times as there have been “steps” of scarce resources.
Il peut par exemple y avoir trois mesures comme présenté dans le tableau 1 (la première mesure correspond à l'absence de consommation contrôlée).There may for example be three measures as presented in Table 1 (the first measure corresponds to the absence of controlled consumption).
Etant donné que la quantité de ressource disponible pour le traitement par lots est réduite (i.e. du fait de la raréfaction), la durée d'exécution du 20 traitement par lot est rallongée.Since the amount of resource available for the batch processing is reduced (i.e. due to scarcity), the execution time of the batch processing is lengthened.
En effet, en présence d'une diminution de ressources disponible, les durées des traitements par lots ont tendance à se rallonger.Indeed, in the presence of a reduction in available resources, the durations of the batch processing tend to lengthen.
Ces données mesurées peuvent faire l'objet d'un enregistrement dans un ou plusieurs fichiers de sauvegarde tels que des fichiers plats de type tableur, ou base de données permettant d'enregistrer une correspondance entre la durée d'exécution d'un traitement par lots en 25 fonction d'une valeur de ressources disponibles.These measured data can be recorded in one or more backup files such as flat files of spreadsheet type, or database making it possible to record a correspondence between the execution time of a batch process. depending on a value of available resources.
Le tableau 1 représente un exemple d'enregistrement des durées (en secondes - s) d'exécution des traitements par lots T1, T2, et T3 en fonction des valeurs de ressources R1 (CPU) et R2 (mémoire vive) disponibles à savoir 100 %, 75 %, 50 % et 25 % (pourcentage de la quantité de ressource initiale).Table 1 represents an example of recording the durations (in seconds - s) of execution of the batch processes T1, T2, and T3 according to the values of resources R1 (CPU) and R2 (random access memory), namely 100 %, 75%, 50% and 25% (percentage of the initial resource quantity).
En outre, une première valeur d'efficacité d'utilisation des ressources peut être calculée pour 30 chaque ressource indépendamment.Further, a first resource efficiency value can be calculated for each resource independently.
Tableau 1 Traitement Ri - Ri - R2 - R2 - par lots Quantité Durée Quantité Durée T1 100 % 9256 s 100 % 9256 s 21 T1 75% 9865s 75% 12320s T1 50 % 12327 s 50 % 18635 s T1 25 % 16256 s 25 % 22845 s T2 100 % 1820 s 100 % 1820 s T2 75 % 1981 s 75 % 1956 s T2 50% 2406s 50% 2142s T2 25 % 3561 s 25 % 2365 s T3 100% 4120s 100% 4120s T3 75 % 6245 s 75 % 5641 s T3 50 % 8456 s 50 % 6742 s T3 25 % 10578 s 25 % 8102 s Table 1 Treatment Ri - Ri - R2 - R2 - in batches Quantity Duration Quantity Duration T1 100% 9256 s 100% 9256 s 21 T1 75% 9865s 75% 12320s T1 50% 12327 s 50% 18635 s T1 25% 16256 s 25% 22845 s T2 100% 1820 s 100% 1820 s T2 75% 1981 s 75% 1956 s T2 50% 2406s 50% 2142s T2 25% 3561 s 25% 2365 s T3 100% 4120s 100% 4120s T3 75% 6245 s 75% 5641 s T3 50% 8456 s 50% 6742 s T3 25% 10578 s 25% 8102 s
[0057] Cette étape de détermination peut également comporter l'enregistrement de l'empreinte de la consommation de ressource du traitement par lots lors de son exécution en présence d'une raréfaction d'une ressource par exemple critique.This determination step can also include the recording of the imprint of the resource consumption of the batch processing during its execution in the presence of a rarefaction of a resource, for example critical.
En effet, l'exécution d'un traitement par lots en présence d'une raréfaction de ressources peut avoir un impact 5 sur d'autres ressources étant donné l'interdépendance de certaines ressources.Indeed, the execution of a batch process in the presence of a scarcity of resources can have an impact on other resources given the interdependence of certain resources.
Par exemple, l'exécution d'un traitement par lots en présence d'une réduction de mémoire vive pourra entrainer une hausse non désirée des accès I/O. For example, running a batch process in the presence of a reduction in RAM may result in an unwanted increase in I / O accesses.
[0058] Comme présenté sur la figure 4, une fois les valeurs de durée d'exécution rallongées mesurées et enregistrées, l'étape de détermination 300 peut comporter une 10 comparaison 350 des durées d'exécution rallongées avec une durée d'exécution maximale du traitement par lots.As shown in Figure 4, once the lengthened runtime values have been measured and recorded, the determining step 300 may include a comparison 350 of the extended runtimes with a maximum runtime of the. batch processing.
Par exemple, dans le cas présenté en tableau 1, il a été prédéterminé que le traitement T1 doit être réalisé en au maximum 15 000 secondes.For example, in the case presented in Table 1, it has been predetermined that the processing T1 must be carried out in a maximum of 15,000 seconds.
Ainsi, sur la figure 4, la réduction à 75 % de la ressource R1 est acceptable (OK) et donc il peut y avoir une augmentation 355 de la consommation contrôlée de ressource jusqu'à atteindre une 15 réduction à 25 % de la ressource R1 qui elle entraine un dépassement de la durée d'exécution maximum (NOK).Thus, in Fig. 4, the reduction to 75% of the resource R1 is acceptable (OK) and therefore there may be an increase 355 in the controlled consumption of the resource until a reduction to 25% of the resource R1 is reached. which causes the maximum execution time (NOK) to be exceeded.
La consommation contrôlée sur la ressource R1 est alors stoppée et le procédé comporte alors une étape de mémorisation des données générées. The consumption controlled on the resource R1 is then stopped and the method then comprises a step of storing the data generated.
[0059] Ensuite, il peut comporter une comparaison 360 des ressources, de préférence critiques, qui ont été testées par rapport aux ressources à tester et un changement 365 de 20 ressource à tester.[0059] Then, it can comprise a comparison 360 of the resources, preferably critical, which have been tested in relation to the resources to be tested and a change 365 of the resource to be tested.
Toujours selon le tableau 1, lors de la comparaison 350, la ressource R2 entraine dès 75 % un dépassement de la durée d'exécution maximum (NOK) et étant la 22 dernière ressource, de préférence critique, à tester 360 (0K), le procédé peut comporter un changement 370 de traitement par lot à étudier. Still according to Table 1, during the comparison 350, the resource R2 leads from 75% to exceeding the maximum execution time (NOK) and being the 22 last resource, preferably critical, to test 360 (0K), the process may include a change 370 in the batch process to be investigated.
[0060] Ainsi, au fur et à mesure que les traitements par lots impliqués dans le plan d'ordonnancement sont testés, il est possible de recueillir pour chacun d'eux une durée d'exécution rallongée en fonction des ressources disponibles. Thus, as the batch processes involved in the scheduling plan are tested, it is possible to collect for each of them an extended execution time as a function of the available resources.
[0061] Le procédé selon l'invention comporte également une étape de génération 400 d'au moins un plan de dimensionnement optimisé.The method according to the invention also includes a step 400 for generating at least one optimized dimensioning plan.
Comme cela sera décrit par la suite, cette étape de génération 400 peut être mise en oeuvre par un module d'optimisation 50. As will be described below, this generation step 400 can be implemented by an optimization module 50.
[0062] Comme illustré à la figure 5A, l'étape de génération 400 d'au moins un plan de 10 dimensionnement optimisé peut comporter une étape de définition 410 de valeurs de quantité de ressources, inférieures aux premières valeurs de quantité de ressources attribuées.As illustrated in FIG. 5A, the step 400 of generating at least one optimized sizing plan may include a step of defining 410 values of quantity of resources, less than the first values of quantity of resources allocated.
Ainsi, il est possible de générer par exemple aléatoirement, ou de préférence à partir de données sur les durées d'exécution, un ensemble de valeurs de quantité de ressources au sein duquel sera sélectionné les valeurs de quantité de ressource du plan de 15 dimensionnement optimisé. Thus, it is possible to generate for example randomly, or preferably from data on the execution times, a set of resource quantity values within which the resource quantity values of the optimized sizing plan will be selected. .
[0063] La définition 410 de valeurs de quantité de ressources inférieures aux premières valeurs de quantité de ressources attribuées peut être suivie d'une étape de calcul 420, pour chaque valeur de quantité de ressources, d'une nouvelle valeur d'efficacité d'utilisation des ressources.The definition 410 of resource quantity values less than the first allocated resource quantity values can be followed by a step of calculating 420, for each resource quantity value, of a new efficiency value of. resource use.
En outre, ce calcul est fonction des valeurs de quantité de ressources, des 20 coefficients de pondérations prédéterminés et des durées d'exécution rallongées mesurées des traitements par lots du plan d'ordonnancement.In addition, this calculation is a function of the resource quantity values, the predetermined weighting coefficients and the measured extended execution times of the batch processes of the scheduling plan.
Ainsi, il est possible d'obtenir des nouvelles valeurs d'efficacité d'utilisation des ressources en relation avec les paramètres d'exécution du plan d'ordonnancement et notamment avec des durées d'exécution rallongées mesurées des traitements par lots.Thus, it is possible to obtain new values of efficiency of use of resources in relation to the execution parameters of the scheduling plan and in particular with measured extended execution times of the batch processing operations.
25 Tableau 2 Valeurs de Ri - R2 - R3 - Valeur Durée quantités de Quantité Quantité Quantité d'efficacité d'exécution ressource globale V1 100 % 100 % 100 % 100 16256 s V2 75 % 75 % 100 % 150 20248 s V3 75 % 50 % 100 % 190 27748 s V4 50 % 75 % 90 % 180 24651 s 23 V5 50 % 50 % 90 % 210 32157 s 25 Table 2 Values of Ri - R2 - R3 - Value Duration quantities of Quantity Quantity Quantity of overall resource execution efficiency V1 100% 100% 100% 100 16256 s V2 75% 75% 100% 150 20 248 s V3 75% 50 % 100% 190 27748 s V4 50% 75% 90% 180 24651 s 23 V5 50% 50% 90% 210 32157 s
[0064] Le tableau 2 présente par exemple un exemple fictif de premières valeurs de quantité de ressources attribuées (V1) et de plusieurs valeurs de quantité de ressources définies lors d'une étape 410 (V2, V3, V4, V5).Table 2 presents for example a fictitious example of first values of quantity of allocated resources (V1) and of several values of quantity of resources defined during a step 410 (V2, V3, V4, V5).
Pour chacune de ces valeurs, le tableau 1 présente les nouvelles valeurs d'efficacité d'utilisation des ressources par exemple 5 calculées lors de l'étape 420. For each of these values, Table 1 shows the new resource use efficiency values, for example 5, calculated during step 420.
[0065] L'étape de sélection de nouvelles valeurs de quantité de ressources attribuées peut comporter en outre, un calcul de paramètre d'exécution du plan d'ordonnancement en fonction de nouvelles valeurs d'efficacité d'utilisation des ressources et une comparaison des paramètres d'exécution calculés à des paramètres d'exécution prédéterminés.The step of selecting new values of the quantity of resources allocated may further comprise a calculation of the execution parameter of the scheduling plan as a function of new values of resource use efficiency and a comparison of the values. run parameters calculated at predetermined run parameters.
Ainsi, la 10 génération d'un plan de dimensionnement optimisé peut comporter la sélection de valeurs de quantité de ressources pour lesquelles des valeurs de paramètres d'exécution calculées ou mesurées sont inférieures à des valeurs de paramètres d'exécution prédéterminés.Thus, the generation of an optimized sizing plan may include the selection of resource quantity values for which calculated or measured execution parameter values are less than predetermined execution parameter values.
Par exemple dans le tableau 2, la dernière colonne comporte les durées globales d'exécution calculées du plan d'ordonnancement.For example in table 2, the last column comprises the overall calculated execution times of the scheduling plan.
Il est possible de voir que les valeurs V5 dépasse une 15 limite de 28800 s correspondant à une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement.It can be seen that the V5 values exceed a limit of 28800 s corresponding to a predetermined maximum overall duration of execution of the scheduling plan.
Ainsi ces valeurs sont écartées dans le cadre du procédé selon l'invention. Thus these values are discarded in the context of the method according to the invention.
[0066] L'étape de génération 400 comporte ensuite la sélection 430 de nouvelles valeurs de quantité de ressources attribuées à l'au moins un plan de dimensionnement optimisé.The generation step 400 then comprises the selection 430 of new values of quantity of resources allocated to the at least one optimized sizing plan.
20 Ces nouvelles valeurs de quantité de ressources attribuées sont sélectionnées parmi les valeurs définies lors de l'étape 410 et correspondent aux valeurs pour lesquelles la nouvelle valeur d'efficacité d'utilisation des ressources est améliorée par rapport à la première valeur d'efficacité d'utilisation des ressources.These new values of quantity of allocated resources are selected from among the values defined during step 410 and correspond to the values for which the new value of efficiency of use of resources is improved compared to the first value of efficiency d. use of resources.
Alternativement, l'administrateur SI peut sélectionner les valeurs de quantité de ressources adaptées.Alternatively, the IS administrator can select the appropriate resource quantity values.
L'amélioration de la nouvelle 25 valeur d'efficacité d'utilisation des ressources correspond à une valeur maximisée par rapport à la première valeur d'efficacité des ressources.The improvement of the new resource efficiency value corresponds to a maximized value relative to the first resource efficiency value.
En référence au tableau 2, ce sont les valeurs de quantité de ressources V3 qui présente la valeur d'efficacité maximale.With reference to Table 2, it is the values of quantity of resources V3 which present the maximum efficiency value.
En effet, bien que les valeurs de quantité de ressources V4 soient globalement inférieures, elles ne sont pas celles qui permettront de maximiser l'efficacité d'utilisation des ressources dans 30 le cadre de ce plan d'ordonnancement. Indeed, although the values of quantity of resources V4 are generally lower, they are not those which will make it possible to maximize the efficiency of use of the resources within the framework of this scheduling plan.
[0067] Selon un autre mode de réalisation de l'étape de génération 400, illustré à la figure 5B, cette étape peut également comporter une étape de calcul 450 pour chaque valeurs de 24 quantité générée de ressources, d'une nouvelle durée globale d'exécution du plan d'ordonnancement en fonction des durées d'exécution rallongées mesurées des traitements par lots.According to another embodiment of the generation step 400, illustrated in FIG. 5B, this step can also include a calculation step 450 for each value of the generated quantity of resources, of a new overall duration d '' execution of the scheduling plan according to the measured extended execution times of the batch processes.
Ce calcul peut être réalisé pour chaque valeur de quantité de ressources générées lors de l'étape 410.This calculation can be carried out for each value of quantity of resources generated during step 410.
Afin de générer le plan de dimensionnement optimisé, une étape de sélection 460 est mise en oeuvre.In order to generate the optimized sizing plan, a selection step 460 is implemented.
Cette étape comporte la sélection de nouvelles valeurs de quantité de ressources attribuées pour le plan de dimensionnement optimisé, pour lesquelles la nouvelle durée globale d'exécution du plan d'ordonnancement correspondant est inférieure à une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement. 10 This step comprises the selection of new values of quantity of resources allocated for the optimized sizing plan, for which the new overall execution time of the corresponding scheduling plan is less than a predetermined maximum overall execution time of the plan of scheduling. 10
[0068] En outre, comme cela est présenté à la figure 5B, le procédé selon l'invention peut comporter la génération 440 d'une pluralité de plans de dimensionnement optimisés.In addition, as presented in FIG. 5B, the method according to the invention can comprise the generation 440 of a plurality of optimized dimensioning plans.
La génération 440 d'une pluralité de plans de dimensionnement optimisés permet à un administrateur SI de sélectionner celui dont les ressources disponibles correspondent aux ressources nécessaires et à la valeur d'efficacité d'utilisation des ressources améliorée.Generation 440 of a plurality of optimized sizing plans allows an IS administrator to select the one whose available resources match the required resources and the improved resource utilization efficiency value.
15 Ainsi, dans le cas d'une génération 440 d'une pluralité de plans de dimensionnement optimisés la sélection d'un plan de dimensionnement à appliquer peut-être laissée à un utilisateur.Thus, in the case of a generation 440 of a plurality of optimized sizing plans the selection of a sizing plan to be applied may be left to a user.
Néanmoins, avantageusement, le procédé selon l'invention peut comporter une étape de sélection automatisée 500 d'un plan de dimensionnement optimisé. Nevertheless, advantageously, the method according to the invention can comprise a step of automated selection 500 of an optimized sizing plan.
[0069] Suite à l'étape de génération 400 d'au moins un plan de dimensionnement optimisé 20 ou suite à l'éventuelle sélection 500 d'un plan de dimensionnement optimisé, le procédé selon l'invention peut comporter en outre une étape de vérification 600 du respect du plan d'ordonnancement par exemple lors de sa mise en oeuvre sur une infrastructure informatique correspondant au nouveau plan de dimensionnement optimisé.Following the step of generating 400 at least one optimized sizing plan 20 or following the possible selection 500 of an optimized sizing plan, the method according to the invention may further comprise a step of verification 600 of compliance with the scheduling plan, for example during its implementation on an IT infrastructure corresponding to the new optimized sizing plan.
Comme cela sera décrit par la suite, cette étape de vérification 600 peut être mise en oeuvre par un 25 module de vérification 60.As will be described below, this verification step 600 can be implemented by a verification module 60.
Bien que le plan de dimensionnement ait été généré à partir de données mesurées sur la pluralité de traitements par lots impliqués dans le plan d'ordonnancement, il peut exister des déviations entre les valeurs calculées et les valeurs réelles de durée d'exécution.Although the sizing plan was generated from data measured over the plurality of batch processes involved in the scheduling plan, there may be deviations between the calculated values and the actual runtime values.
En effet, il peut exister des effets de bords entre les ressources et ainsi, la diminution d'une ressource pourra avoir un impact sur une autre ressource 30 impactant à son tour la durée d'exécution des traitements par lots. In fact, there may be edge effects between the resources and thus, the decrease in one resource may have an impact on another resource, in turn impacting the duration of execution of the batch processes.
[0070] La figure 6 illustre une telle étape 600 de vérification selon un premier mode de réalisation de l'invention.FIG. 6 illustrates such a verification step 600 according to a first embodiment of the invention.
Cette étape nécessite dans un premier temps de disposer d'une infrastructure informatique correspondant au plan de dimensionnement optimisé.This step first requires having an IT infrastructure corresponding to the optimized sizing plan.
25 L'utilisateur peut mettre en place un serveur virtuel présentant des caractéristiques en accord avec le nouveau plan de dimensionnement optimisé, d'une part ou il peut alternativement disposer d'une infrastructure informatique de type serveur présentant un dimensionnement identique ou similaire au plan de dimensionnement optimisé, d'autre part.The user can set up a virtual server having characteristics in accordance with the new optimized dimensioning plan, on the one hand or he can alternatively have an IT infrastructure of server type having identical or similar dimensioning to the design plan. optimized sizing, on the other hand.
5 Alternativement, aux fins de vérifications, il peut utiliser une infrastructure informatique présentant un dimensionnement supérieur au nouveau plan de dimensionnement optimisé et mettre en oeuvre une étape 610 de génération d'une consommation contrôlée d'une ou de plusieurs ressources de façon à faire correspondre le dimensionnement au nouveau plan de dimensionnement optimisé.Alternatively, for verification purposes, it can use an IT infrastructure having a dimensioning greater than the new optimized dimensioning plan and implement a step 610 of generating a controlled consumption of one or more resources so as to match sizing to the new optimized sizing plan.
Cette génération d'une consommation contrôlée peut être 10 mise en oeuvre par un module de raréfaction de ressources 20. This generation of controlled consumption can be implemented by a resource scarcity module 20.
[0071] L'étape 600 de vérification comporte l'exécution 620 sur l'infrastructure informatique, par exemple par un module d'exécution de traitement par lots 30, du plan d'ordonnancement de la pluralité de traitements par lots.Verification step 600 comprises the execution 620 on the IT infrastructure, for example by a batch processing execution module 30, of the scheduling plan for the plurality of batch processing operations.
Avantageusement, l'infrastructure informatique présente des quantités de ressources correspondant au plan de 15 dimensionnement.Advantageously, the IT infrastructure has quantities of resources corresponding to the dimensioning plan.
Lors de cette exécution, le procédé comporte la mesure 630, par exemple par un module de collecte de métriques 40, de paramètres d'exécution du plan d'ordonnancement.During this execution, the method comprises the measurement 630, for example by a metrics collection module 40, of execution parameters of the scheduling plan.
Les paramètres d'exécution du plan d'ordonnancement mesurés sont par exemple sélectionnés parmi : les durées d'exécution des traitements par lots et la durée globale d'exécution du plan d'ordonnancement. 20 The execution parameters of the measured scheduling plan are for example selected from: the execution times of the batch processes and the overall execution time of the scheduling plan. 20
[0072] Une fois l'exécution du plan d'ordonnancement finalisée, l'étape de vérification 600 comporte la comparaison 640, par exemple par un module de vérification 60, des paramètres d'exécution mesurés du plan d'ordonnancement avec des paramètres d'exécution prédéterminés du plan d'ordonnancement.Once the execution of the scheduling plan is finalized, the verification step 600 comprises the comparison 640, for example by a verification module 60, of the measured execution parameters of the scheduling plan with parameters d 'predetermined execution of the scheduling plan.
Les paramètres d'exécution prédéterminés du plan d'ordonnancement peuvent par exemple être sélectionnées parmi : 25 des règles d'exécution, des durées maximales prédéterminées d'exécution des traitements par lot ou une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement. The predetermined execution parameters of the scheduling plan can for example be selected from: execution rules, predetermined maximum execution times for batch processing or a predetermined maximum overall execution time of the scheduling plan .
[0073] Comme cela a été décrit, lors de l'étape de vérification 600, le plan d'ordonnancement est exécuté sur une infrastructure informatique dont les ressources 30 disponibles correspondent au nouveau plan de dimensionnement optimisé que cela soit dû ou non à la présence d'une consommation contrôlée des ressources, de préférence critiques, sur l'infrastructure informatique.As has been described, during the verification step 600, the scheduling plan is executed on an IT infrastructure whose available resources correspond to the new optimized sizing plan whether or not this is due to the presence controlled consumption of resources, preferably critical, on the IT infrastructure.
Selon le mode de réalisation décrit à la figure 7, l'étape de vérification 600 du respect du plan d'ordonnancement peut comporter la mise en 26 place 611 d'une consommation contrôlée des ressources de façon à ce que la quantité de ressource disponible pour le plan d'ordonnancement corresponde au nouveau plan de dimensionnement optimisé.According to the embodiment described in FIG. 7, the step 600 of verifying compliance with the scheduling plan may comprise the setting up 611 of a controlled consumption of resources so that the quantity of resource available for the scheduling plan corresponds to the new optimized dimensioning plan.
Alternativement, c'est une infrastructure informatique (e.g. machine virtuelle) dont la quantité de ressources correspond au plan de dimensionnement 5 optimisé qui est utilisée.Alternatively, it is an IT infrastructure (e.g. virtual machine) whose quantity of resources corresponds to the optimized sizing plan 5 which is used.
Suite à l'exécution 620 du plan d'ordonnancement et à la mesure 631 de la durée globale d'exécution du plan d'ordonnancement et/ou à la mesure des durées d'exécution de chacun des traitements par lots, il y a une comparaison 641 de la durée globale mesurée d'exécution du plan d'ordonnancement à une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement et/ou à la comparaison des durées 10 d'exécution mesurées de chacun des traitements par lots à des durées maximales prédéterminées d'exécution de ces traitements par lots. Following the execution 620 of the scheduling plan and the measurement 631 of the overall execution time of the scheduling plan and / or the measurement of the execution times of each of the batch processes, there is a comparison 641 of the overall measured execution time of the scheduling plan to a predetermined maximum overall time of execution of the scheduling plan and / or to the comparison of the measured execution times of each of the batch processes to predetermined maximum times for executing these batch processes.
[0074] En cas de dépassement (NOK), l'étape de vérification peut être suivie d'une étape 900 d'augmentation de la quantité de ressources attribuées qui sera détaillée par la suite.In the event of an overrun (NOK), the verification step can be followed by a step 900 of increasing the quantity of allocated resources which will be detailed below.
En absence de dépassement (OK), l'étape de vérification peut être suivie d'une étape 642 15 de calcul de la différence (i.e. de la marge) entre la durée globale d'exécution du plan d'ordonnancement et la durée globale maximale prédéterminée d'exécution du plan d'ordonnancement, puis d'une étape de comparaison de cette différence à un seuil de performance prédéterminé de façon à déterminer si le nouveau plan de dimensionnement peut être validé 650 ou si une étape de réduction 800 de la quantité de ressources attribuée 20 doit être exécutée dans le cas où le seuil prédéterminé de performance est dépassé (NOK).In the absence of an overrun (OK), the verification step can be followed by a step 642 15 for calculating the difference (ie the margin) between the overall execution time of the scheduling plan and the maximum overall time predetermined execution of the scheduling plan, then a step of comparing this difference to a predetermined performance threshold so as to determine whether the new sizing plan can be validated 650 or whether a step 800 of reducing the quantity of allocated resources 20 must be executed in the event that the predetermined performance threshold is exceeded (NOK).
La validation 650 peut par exemple comporter la génération d'un rapport comportant les valeurs de quantité de ressource du nouveau plan de dimensionnement optimisé et validé. The validation 650 can for example comprise the generation of a report comprising the resource quantity values of the new optimized and validated sizing plan.
[0075] Par exemple, l'étape de comparaison de cette différence peut consister à déterminer si la différence n'est pas significative (NOK), c'est-à-dire qu'elle est par exemple 25 inférieure à 10 % de la valeur de la durée globale maximale prédéterminée d'exécution du plan d'ordonnancement.For example, the step of comparing this difference may consist in determining whether the difference is not significant (NOK), that is to say that it is for example less than 10% of the value of the predetermined maximum overall duration of execution of the scheduling plan.
Alors il peut y avoir une validation 650 du plan de dimensionnement optimisé.Then there can be a 650 validation of the optimized sizing plan.
Lorsque la différence est significative (OK), c'est-à-dire qu'elle est supérieure à un seuil prédéterminé comme par exemple supérieure à, par exemple, 10 % de la valeur de la durée globale maximale prédéterminée d'exécution du plan d'ordonnancement, de façon 30 préférée supérieure à 20 % et de façon plus préférée supérieure à 30 % alors l'étape de vérification peut être suivie par une étape 700 de modification du plan de dimensionnement optimisé de façon à réduire la quantité de ressources attribuée. 27 When the difference is significant (OK), that is to say that it is greater than a predetermined threshold such as for example greater than, for example, 10% of the value of the predetermined maximum overall duration of execution of the plan scheduling, preferably greater than 20% and more preferably greater than 30% then the verification step can be followed by a step 700 of modifying the optimized sizing plan so as to reduce the amount of resources allocated . 27
[0076] Ainsi, avantageusement, le procédé selon l'invention peut comporter une étape de modification 700 supplémentaire de la quantité de ressources attribuée.Thus, advantageously, the method according to the invention can include a step 700 of additional modification of the quantity of resources allocated.
Une telle étape est illustrée à la figure 8.Such a step is illustrated in Figure 8.
Cette modification 700 supplémentaire peut avantageusement intervenir dans deux situations : lorsque les quantités de ressources attribuées étaient insuffisantes (e.g. la durée globale maximale d'exécution du plan d'ordonnancement a été dépassée) et donc qu'il est nécessaire d'augmenter la quantité de ressources attribuée, et lorsque les quantités de ressources attribuées étaient trop élevées et que cela entraine un risque de gaspillage des ressources (e.g. entre la durée globale 10 d'exécution du plan d'ordonnancement et la durée globale maximale prédéterminée d'exécution du plan d'ordonnancement a dépassé un seuil prédéterminé de performance) et donc qu'il est nécessaire réduire la quantité de ressources attribuée. This additional modification 700 can advantageously occur in two situations: when the quantities of resources allocated were insufficient (eg the maximum overall execution time of the scheduling plan has been exceeded) and therefore it is necessary to increase the quantity of resources. allocated resources, and when the quantities of allocated resources were too high and this leads to a risk of wasting resources (eg between the overall duration of execution of the scheduling plan and the predetermined maximum overall duration of execution of the scheduling plan. scheduling has exceeded a predetermined performance threshold) and therefore it is necessary to reduce the amount of resources allocated.
[0077] Cette étape comporte notamment la génération 710 de nouvelles valeurs de quantité de ressources attribuées qui peuvent être inférieures ou supérieure aux valeurs de 15 quantité de ressources précédemment attribuées.This step includes in particular the generation 710 of new allocated resource quantity values which may be lower or higher than the previously allocated resource quantity values.
Cette génération 710 tient compte de préférence des « pas » de chacune des ressources concernées.This generation 710 preferably takes into account the “steps” of each of the resources concerned.
Cette génération 710 est alors suivie d'une étape de calcul 720 de nouvelles valeurs d'efficacité d'utilisation des ressources.This generation 710 is then followed by a step 720 for calculating new values of efficiency in the use of resources.
Cette étape de calcul 720 est fonction des durées d'exécution rallongées des traitements par lots, des coefficients de pondération et en particulier de la marge calculée 20 lors de l'étape 642 (i.e. la différence entre la durée globale d'exécution du plan d'ordonnancement et la durée globale maximale prédéterminée d'exécution du plan d'ordonnancement).This calculation step 720 is a function of the extended execution times of the batch processing operations, of the weighting coefficients and in particular of the margin calculated during step 642 (ie the difference between the overall execution time of the plan d scheduling and the predetermined maximum overall duration of execution of the scheduling plan).
En effet, il peut exister des effets de bords lors de la réduction de la quantité de ressources pouvant être utilisée par les traitements par lots et il convient de le prendre en compte lors de la modification supplémentaire.This is because there may be side effects when reducing the amount of resources that can be used by batch processes and this should be taken into account when making the additional modification.
A cause de cet effet de bord, les 25 durées d'exécution mesurées (i.e. réelles) des traitements par lots et du plan d'ordonnancement peuvent différer des durées d'exécution calculées et donc le calcul de nouvelles valeurs d'efficacité d'utilisation des ressources doit de préférence prendre en compte cette différence (i.e. marge) de façon à fournir des résultats plus précis. Because of this side effect, the measured (ie actual) execution times of the batch processes and the scheduling plan may differ from the calculated execution times and therefore the calculation of new use efficiency values. resources should preferably take this difference (ie margin) into account in order to provide more precise results.
[0078] II y a alors sélection 730 des nouvelles valeurs de quantité de ressources attribuées 30 puis génération 740 d'un nouveau plan de dimensionnement optimisé.There is then selection 730 of the new values of quantity of resources allocated 30 and then generation 740 of a new optimized sizing plan.
Ces nouvelles valeurs de quantités de ressources attribuées sont celles pour lesquelles la valeur de durée d'exécution globale du plan d'ordonnancement est inférieure à la durée globale maximale 28 prédéterminée du plan d'ordonnancement.These new values of allocated resource quantities are those for which the overall execution time value of the scheduling plan is less than the predetermined maximum overall duration 28 of the scheduling plan.
Enfin, cette étape 700 peut se terminer par la génération 740 d'un nouveau plan de dimensionnement optimisé. Finally, this step 700 can end with the generation 740 of a new optimized sizing plan.
[0079] Selon un autre aspect, l'invention porte sur un dispositif 1 d'optimisation du dimensionnement d'une infrastructure informatique 2 pour l'exécution d'un plan d'ordonnancement.According to another aspect, the invention relates to a device 1 for optimizing the dimensioning of an IT infrastructure 2 for the execution of a scheduling plan.
Ce dispositif est en particulier susceptible de mettre en oeuvre un procédé d'optimisation du dimensionnement selon l'invention décrit précédemment. This device is in particular capable of implementing a sizing optimization method according to the invention described above.
[0080] Un mode de réalisation d'un tel dispositif est illustré à la figure 9.One embodiment of such a device is illustrated in Figure 9.
Comme illustré, ce dispositif comporte notamment un module d'acquisition 10, un module de raréfaction de ressources 20, un module d'exécution de traitement par lots 30, un module de collecte de 10 métriques 40, et un module d'optimisation 50.As illustrated, this device comprises in particular an acquisition module 10, a resource rarefaction module 20, a batch processing execution module 30, a metric collection module 40, and an optimization module 50.
Il peut en outre comporter un module de vérification 60, un module de dimensionnement 70, un module de communication 80, et un module de mémorisation 90. It can also include a verification module 60, a sizing module 70, a communication module 80, and a storage module 90.
[0081] Le module d'acquisition 10 selon l'invention est en particulier configuré pour acquérir un premier plan de dimensionnement.The acquisition module 10 according to the invention is in particular configured to acquire a first dimensioning plane.
Le premier plan de dimensionnement 15 comporte des premières valeurs de quantité de ressources attribuées permettant l'exécution d'une pluralité de traitements par lots selon un plan d'ordonnancement.The first dimensioning plan 15 comprises first values of quantity of allocated resources allowing the execution of a plurality of batch processes according to a scheduling plan.
En outre, il peut être configuré pour acquérir une première durée globale d'exécution du plan d'ordonnancement, des paramètres d'exécution prédéterminés d'un plan d'ordonnancement, un coefficient de pondération prédéterminé pour chaque ressource d'une pluralité de ressource, de 20 préférence d'une pluralité de ressources critiques. In addition, it can be configured to acquire a first overall execution time of the scheduling plan, predetermined execution parameters of a scheduling plan, a predetermined weighting coefficient for each resource of a plurality of resources , preferably a plurality of critical resources.
[0082] Le module de raréfaction de ressources 20 selon l'invention est en particulier configure pour générer une consommation contrôlée d'au moins une ressource sur une infrastructure informatique 2.The resource scarcity module 20 according to the invention is in particular configured to generate a controlled consumption of at least one resource on an IT infrastructure 2.
Cette consommation est de préférence fonction de règles de raréfaction préalablement mémorisées de façon à laisser à disposition d'un traitement par 25 lots une quantité de ressources disponible inférieure à une quantité de ressources initiale. This consumption is preferably a function of rarefaction rules previously stored so as to leave available for a batch processing a quantity of available resources less than an initial quantity of resources.
[0083] Avantageusement, le module 20 de raréfaction de ressource présente pour fonction de réduire progressivement la disponibilité d'une ressource critique.Advantageously, the resource scarcity module 20 has the function of gradually reducing the availability of a critical resource.
Ainsi, il est possible d'augmenter progressivement la raréfaction de la ressource critique jusqu'à provoquer un dépassement d'une durée maximale prédéterminé d'exécution pour le traitement par lot 30 étudié.Thus, it is possible to progressively increase the scarcity of the critical resource until a predetermined maximum execution time is exceeded for the batch processing studied.
Le module 20 de raréfaction peut donc être considéré comme créant un environnement dégradé pour le ou les traitements par lots étudiés car les règles de 29 raréfaction peuvent contrôler à quelle quantité de ressources de l'infrastructure informatique 2 les traitements par lots étudiés accèdent. The rarefaction module 20 can therefore be considered as creating a degraded environment for the studied batch process (s) because the rarefaction rules can control to what quantity of resources of the IT infrastructure 2 the studied batch processes access.
[0084] De façon préférée, le module 20 de raréfaction de ressources est configuré pour générer une consommation contrôlée d'au moins une ressource critique selon les règles de 5 raréfaction préalablement mémorisées sur un référentiel 21 de raréfaction.Preferably, the resource rarefaction module 20 is configured to generate a controlled consumption of at least one critical resource according to the rarefaction rules previously stored on a rarefaction repository 21.
Il peut y avoir une consommation d'une ressource critique ou bien une consommation simultanée de plusieurs ressources critiques.There may be a consumption of a critical resource or a simultaneous consumption of several critical resources.
Par exemple, la raréfaction d'une ressource peut reposer sur tout ou partie des données suivantes : - un identifiant du composant ou de la ressource à perturber : par exemple une 10 adresse réseau ; - une valeur de date de début de la raréfaction, il peut par exemple s'agir d'une date absolue évaluée relativement à une horloge interne du dispositif produisant la raréfaction ; - une valeur de durée de la raréfaction (e.g. nombre de secondes) ou une valeur de 15 date de fin de la raréfaction ; - un niveau de consommation de ressource de départ, correspondant par exemple à la plus faible quantité de ressource à consommer ; - un niveau final de consommation de ressource, correspondant par exemple à la plus forte quantité de ressource à consommer 20 - un pas d'augmentation de la consommation, correspondant par exemple à la différence entre une première quantité de ressource à consommer et une quantité suivante, et - une durée prédéterminée entre chaque pas d'augmentation ; et - un ordre des différentes raréfactions à réaliser. 25 For example, the rarefaction of a resource can be based on all or part of the following data: an identifier of the component or of the resource to be disturbed: for example a network address; a value for the start date of the rarefaction, it may for example be an absolute date evaluated relative to an internal clock of the device producing the rarefaction; - a rarefaction duration value (e.g. number of seconds) or a value of 15 the rarefaction end date; a level of consumption of the starting resource, corresponding for example to the smallest quantity of resource to be consumed; - a final level of resource consumption, corresponding for example to the highest quantity of resource to be consumed 20 - a step of increase in consumption, corresponding for example to the difference between a first quantity of resource to be consumed and a following quantity , and - a predetermined duration between each increment step; and - an order of the different rarefactions to be carried out. 25
[0085] Ces valeurs pourront par exemple être acquises par le module 20 de raréfaction de ressource via un appel à un ou plusieurs fichiers de configuration de raréfaction de ressources du référentiel 21 de raréfaction ou bien à des instructions transmises à partir d'une interface (e.g. graphique).These values could for example be acquired by the resource rarefaction module 20 via a call to one or more resource rarefaction configuration files of the rarefaction repository 21 or else to instructions transmitted from an interface ( eg graphic).
Ainsi, le module 20 de raréfaction peut être configuré pour recevoir et prendre en compte des règles de raréfaction.Thus, the rarefaction module 20 can be configured to receive and take into account rarefaction rules.
Ces règles de raréfaction sont par 30 exemple renseignées via une interface graphique et mémorisées sur une mémoire par exemple une mémoire vive.These rarefaction rules are for example entered via a graphical interface and stored in a memory, for example a random access memory.
Certaines données de règles de raréfaction des ressources critiques sont avantageusement renseignées lors de la mise en oeuvre du procédé d'optimisation du dimensionnement selon l'invention.Certain critical resource scarcity rule data are advantageously entered during the implementation of the dimensioning optimization method according to the invention.
C'est par exemple le cas de la date de début de la raréfaction et l'identifiant de la ressource critique à raréfier. 30 This is for example the case of the start date of the rarefaction and the identifier of the critical resource to be rarefied. 30
[0086] Lorsque ces données sont enregistrées, elles le sont par exemple dans un fichier de configuration de raréfaction de ressources étant, par exemple, un fichier XML, un fichier CSV, un fichier INI, ou un fichier JSON.When this data is recorded, it is for example in a resource scarcity configuration file being, for example, an XML file, a CSV file, an INI file, or a JSON file.
Un fichier de configurations comporte un ou plusieurs enregistrements de configuration.A configuration file has one or more configuration records.
Dans une variante, le fichier de configuration de raréfaction est enregistré dans une base de données. Alternatively, the rarefaction configuration file is saved in a database.
[0087] Le référentiel 21 de raréfaction couplé au module 20 de raréfaction permet la génération de codes dont l'exécution entraine la mise en oeuvre de la raréfaction (i.e. la consommation de ressources).The rarefaction repository 21 coupled to the rarefaction module 20 allows the generation of codes, the execution of which leads to the implementation of the rarefaction (i.e. the consumption of resources).
Ces codes sont soit des codes objets, par exemple pour la raréfaction de la mémoire, soit des scripts dits n shell » ou scripts shell.These codes are either object codes, for example for the depletion of memory, or so-called "shell" scripts or shell scripts.
Les codes peuvent 10 également être des codes compilables, la compilation étant réalisée au moment de la mise en place de la raréfaction.The codes can also be compilable codes, the compilation being carried out at the time of the setting up of the rarefaction.
Comme cela sera détaillé ci-après, le dispositif est configuré pour réaliser la raréfaction de ressource(s) en parallèle de l'exécution d'un traitement par lots à étudier (ou de plusieurs). As will be detailed below, the device is configured to carry out the scarcity of resource (s) in parallel with the execution of a batch process to be studied (or of several).
[0088] Le référentiel 21 de raréfaction est configuré pour mémoriser des règles de 15 raréfaction des ressources critiques pouvant être utilisées pour une raréfaction progressive des ressources critiques.The rarefaction repository 21 is configured to store rules for the rarefaction of critical resources that can be used for a progressive rarefaction of critical resources.
Ainsi, ce référentiel 21 de raréfaction est configuré pour mémoriser des instructions permettant la consommation et donc la raréfaction des ressources disponibles pour le ou les traitements par lots.Thus, this rarefaction repository 21 is configured to store instructions allowing the consumption and therefore the rarefaction of the resources available for the batch process (s).
Une telle consommation des ressources peut être réalisée selon la méthode de génération de bruit décrite dans le document EP2975526. 20 Such resource consumption can be achieved according to the noise generation method described in document EP2975526. 20
[0089] Les ressources critiques consommées via la mise en oeuvre des règles de consommation peuvent inclure (mais ne sont pas limitées à) un type de réseau, des conditions associées au réseau, une bande passante de transmission et / ou de réception disponible, une puissance / énergie disponible, une puissance de processeur disponible (par exemple vitesse d'horloge, nombre de coeurs, cache, etc.) et une quantité disponible de la 25 mémoire.The critical resources consumed via the implementation of the consumption rules can include (but are not limited to) a type of network, conditions associated with the network, an available transmission and / or reception bandwidth, a available power / energy, available processor power (eg, clock speed, number of cores, cache, etc.) and available amount of memory.
Comme mentionné, la raréfaction est générée via une consommation des ressources dont la partie consommée (i.e. utilisée ou occupée) n'est alors plus disponible pour le traitement par lot dont la durée d'exécution est mesurée.As mentioned, the scarcity is generated via a consumption of resources whose consumed part (i.e. used or occupied) is then no longer available for the batch processing whose execution time is measured.
Le référentiel 21 de raréfaction permet aussi de définir des règles de consommation pour une modification progressive de la raréfaction des ressources de différentes machines virtuelles. 30 The rarefaction repository 21 also makes it possible to define consumption rules for a progressive modification of the rarefaction of the resources of different virtual machines. 30
[0090] Le module d'exécution de traitement par lots 30 selon l'invention est en particulier configuré pour exécuter chacun des traitements par lots de la pluralité de traitements par lots sur l'infrastructure informatique 2.The batch processing execution module 30 according to the invention is in particular configured to execute each of the batch processing operations of the plurality of batch processing operations on the IT infrastructure 2.
Il peut s'agir de tout agencement matériel et logiciel apte à permettre l'exécution de traitement par lots sur l'infrastructure 31 informatique 2.It can be any hardware and software arrangement capable of allowing the execution of batch processing on the IT infrastructure 31 2.
Le module d'exécution de traitement par lots 30 est en particulier configuré pour exécuter les traitements par lots les uns après les autres par exemple lors du calcul des durées d'exécution rallongées ou selon un plan d'ordonnancement (e.g. avec des traitements par lots simultanés) par exemple lors de l'étape de vérification. 5 The batch processing execution module 30 is in particular configured to execute the batch processing operations one after the other, for example during the calculation of the extended execution times or according to a scheduling plan (eg with batch processing operations). simultaneous) for example during the verification step. 5
[0091] Le module de collecte de métriques 40 selon l'invention est en particulier configuré pour mesurer des durées d'exécution rallongées en fonction de valeurs de quantité de ressources disponibles pour chacun des traitements par lots de façon à déterminer des durées d'exécution rallongées pour la pluralité de traitements par lots, en fonction de valeurs de quantités de ressources disponibles.The metrics collection module 40 according to the invention is in particular configured to measure extended execution times as a function of values of quantity of resources available for each of the batch processes so as to determine execution times. lengthened for the plurality of batch processes, based on values of quantities of available resources.
De façon préférée, le module 10 40 de collecte de métriques est en outre configuré pour mesurer des empreintes de la consommation des ressources par les traitements par lots. Preferably, the metrics collection module 40 is further configured to measure footprints of the consumption of resources by the batch processing operations.
[0092] Pour cela, le module 40 de collecte de métriques peut faire appel à une sonde 41 ou à une pluralité de sondes 41.For this, the module 40 for collecting metrics can use a probe 41 or a plurality of probes 41.
La ou les sondes 41 permettent de collecter des données sur les durées d'exécution des traitements par lots et/ou la consommation des ressources 15 de l'infrastructure informatique 2.The probe (s) 41 make it possible to collect data on the execution times of the batch processing operations and / or the consumption of the resources 15 of the IT infrastructure 2.
Le module 40 de collecte peut faire appel à un fichier de surveillance comportant des règles de collecte de métriques.The collection module 40 can call on a monitoring file comprising metrics collection rules.
Ces règles de collecte de métriques peuvent spécifier des données qui doivent être enregistrées lors de l'exécution de la brique applicative. These metrics collection rules can specify data that must be recorded during the execution of the application brick.
[0093] Ces mesures peuvent par exemple être réalisées à partir d'une sonde de type 20 « Nigel's Monitor » (Nmon) ou « Performance Monitor » (Perfmon).These measurements can for example be carried out using a “Nigel's Monitor” (Nmon) or “Performance Monitor” (Perfmon) type probe.
Les sondes Nmon permettent par exemple d'afficher les données de CPU, mémoire, swap, réseau, des informations sur les utilisateurs, les groupes, les supports de stockages, sur l'utilisation du kernel, ou les processus les plus consommateurs.Nmon probes can be used, for example, to display CPU, memory, swap, network data, information on users, groups, storage media, kernel use, or the most consuming processes.
Les sondes de type Perfmon permettent de mesurer les performances d'une infrastructure informatique.Perfmon type probes are used to measure the performance of an IT infrastructure.
Les informations collectées 25 peuvent par exemple correspondre à des pourcentages d'utilisation de ressources, des temps de réponse, des temps de traitement mais également le statut des ports, le nombre de files de message JDBC ou JMS, le taux d'occupation du système de fichiers, le taux de fonctionnement du ramasse miettes ou récupérateur de mémoires (pour « garbage collector » en anglais) pour les applications J2EE (pour « Java Enterprise Edition » en anglais). 30 The information collected 25 may for example correspond to the percentages of resource use, response times, processing times but also the status of the ports, the number of JDBC or JMS message queues, the occupancy rate of the system. of files, the operating rate of the garbage collector (for "garbage collector" in English) for J2EE applications (for "Java Enterprise Edition" in English). 30
[0094] Ces sondes peuvent être associées à chaque paramètre (e.g. durée d'exécution, ressource ou fonctionnalités) pour remonter les informations de mesure ou métriques, représentant par exemple l'exécution du traitement par lot et le fonctionnement de l'infrastructure informatique.These probes can be associated with each parameter (e.g. execution time, resource or functionalities) to return measurement or metric information, representing for example the execution of the batch processing and the operation of the IT infrastructure.
Pour chaque paramètre, la ou les sondes définissent un 32 identifiant de paramètre et une valeur de paramètre.For each parameter, the probe (s) define a parameter identifier and a parameter value.
Les valeurs des paramètres peuvent être suivies en continu ou à des intervalles configurables de façon à obtenir des informations pour chaque paramètre en fonction du temps.Parameter values can be monitored continuously or at configurable intervals to obtain information for each parameter over time.
Ces informations peuvent être stockées dans une mémoire.This information can be stored in a memory.
Dans certains modes de réalisation, le dispositif comporte une interface homme-machine permettant de définir les sondes sur chaque machine qui remontent les métriques provenant de l'utilisation des ressources de la machine. In certain embodiments, the device comprises a man-machine interface making it possible to define the probes on each machine which feed back the metrics originating from the use of the resources of the machine.
[0095] Le module d'optimisation 50 selon l'invention est en particulier configuré pour sélectionner de nouvelles valeurs de quantité de ressources attribuées pour l'au moins un 10 plan de dimensionnement optimisé, pour lesquelles la nouvelle valeur d'efficacité d'utilisation des ressources est améliorée par rapport à la première valeur d'efficacité d'utilisation des ressources.The optimization module 50 according to the invention is in particular configured to select new values of quantity of resources allocated for at least one optimized sizing plan, for which the new value of use efficiency resource efficiency is improved relative to the first resource use efficiency value.
Il peut s'agir de tout agencement matériel et logiciel apte à permettre la sélection de nouvelles valeurs de quantité de ressources attribuées pour le nouveau plan de dimensionnement optimisé.It can be any hardware and software arrangement capable of allowing the selection of new values of quantity of resources allocated for the new optimized sizing plan.
Ces valeurs peuvent être intégrées dans un 15 fichier pouvant ensuite être envoyé à un client.These values can be integrated into a file which can then be sent to a client.
En outre, ce module d'optimisation 50 est également configuré pour le calcul d'une première valeur d'efficacité d'utilisation des ressources à partir des premières valeurs de quantité de ressources attribuées, des coefficients de pondération prédéterminés et de la première durée globale d'exécution du plan d'ordonnancement.Further, this optimization module 50 is also configured for calculating a first resource utilization efficiency value from the first allocated resource quantity values, predetermined weighting coefficients and the first overall duration. execution of the scheduling plan.
Le module d'optimisation 50, est également configuré pour définir 20 des valeurs de quantité de ressources inférieures aux premières valeurs de quantité de ressources attribuées.The optimization module 50 is also configured to define resource quantity values less than the first allocated resource quantity values.
Par ailleurs, ce module d'optimisation 50 est configuré pour calculer, pour chaque valeur de quantité de ressources, une nouvelle valeur d'efficacité d'utilisation des ressources, ledit calcul étant fonction des valeurs de quantité de ressources, des coefficients de pondération prédéterminés et des durées d'exécution rallongées mesurées 25 des traitements par lots.Moreover, this optimization module 50 is configured to calculate, for each value of quantity of resources, a new value of efficiency of use of resources, said calculation being a function of the values of quantity of resources, predetermined weighting coefficients. and measured extended run times of batch jobs.
Enfin, ce module d'optimisation 50 est également configuré pour sélectionner de nouvelles valeurs de quantité de ressources attribuées à l'au moins un plan de dimensionnement optimisé, lesdites nouvelles valeurs de quantité de ressources attribuées étant sélectionnées parmi les valeurs de quantité de ressources dont la nouvelle valeur d'efficacité d'utilisation des ressources est améliorée par rapport à la première valeur 30 d'efficacité d'utilisation des ressources. Finally, this optimization module 50 is also configured to select new values of quantity of resources allocated to at least one optimized dimensioning plan, said new values of quantity of allocated resources being selected from among the values of quantity of resources of which the new resource use efficiency value is improved over the first resource use efficiency value.
[0096] Le module de vérification 60 selon l'invention est en particulier configuré pour comparer des paramètres d'exécution mesurés du plan d'ordonnancement avec des paramètres d'exécution prédéterminés du plan d'ordonnancement.The verification module 60 according to the invention is in particular configured to compare measured execution parameters of the scheduling plan with predetermined execution parameters of the scheduling plan.
Ce module de vérification 60 permet ainsi de s'assurer du respecter des durées maximales prédéterminées 33 d'exécution des traitements par lot ou une durée globale maximale prédéterminée d'exécution du plan d'ordonnancement.This verification module 60 thus makes it possible to ensure that the predetermined maximum durations 33 of execution of the batch processing operations or a predetermined maximum overall execution time of the scheduling plan are respected.
Ce module permet également le respect du bon déroulement de l'exécution des traitements par lots sur une infrastructure dont les ressources correspondent au plan de dimensionnement optimisé pour la réalisation du plan 5 d'ordonnancement (e.g. respect des règles d'exécution).This module also makes it possible to respect the good progress of the execution of the batch processing operations on an infrastructure whose resources correspond to the dimensioning plan optimized for the realization of the scheduling plan (e.g. compliance with the execution rules).
En outre, afin de mettre en oeuvre la comparaison des durées d'exécution, le module de vérification peut comporter tout matériel physique ou logiciel apte à permettre la réalisation ou le calcul d'un rapport de supériorité, infériorité ou égalité ou encore toutes différences entre les paramètres d'exécutions, entre une durée globale maximale prédéterminée d'exécution du plan 10 d'ordonnancement et une durée globale mesurée d'exécution du plan d'ordonnancement.In addition, in order to implement the comparison of the execution times, the verification module may include any physical hardware or software capable of enabling the production or the calculation of a superiority, inferiority or equality ratio or even any differences between the execution parameters, between a predetermined maximum overall execution time of the scheduling plan and a measured global execution time of the scheduling plan.
A cette fin, le module de vérification peut également être configuré pour calculer une différence ou un rapport avec un seuil prédéterminé de performance.To this end, the verification module can also be configured to calculate a difference or a ratio with a predetermined performance threshold.
En outre, selon certains modes de réalisation, un utilisateur peut interagir avec le module de vérification afin de paramétrer et d'indiquer au module de vérification des règles d'exécutions et des durées d'exécution 15 maximum ou un seuil prédéterminé de performance.Furthermore, according to certain embodiments, a user can interact with the verification module in order to configure and indicate to the verification module execution rules and maximum execution times or a predetermined performance threshold.
Cette vérification est également possible sans générer une consommation contrôlée et en prenant directement une infrastructure à la taille désirée (cela est facile lors de l'utilisation d'une VML par exemple) This verification is also possible without generating a controlled consumption and by directly taking an infrastructure of the desired size (this is easy when using a VML for example)
[0097] Le module de dimensionnement 70 selon l'invention est en particulier configuré pour générer un plan de dimensionnement.The sizing module 70 according to the invention is in particular configured to generate a sizing plan.
Le plan de dimensionnement défini par le 20 module de dimensionnement est fonction de l'empreinte de chaque traitement par lots, des règles d'exécution prédéterminées et des valeurs de quantité de ressources attribuées.The sizing plan defined by the sizing module is a function of the footprint of each batch process, the predetermined execution rules and the assigned resource quantity values.
Il peut s'agir de tout agencement matériel et logiciel apte à permettre la génération d'un tel plan de dimensionnement. It may be any hardware and software arrangement capable of allowing the generation of such a dimensioning plan.
[0098] Le module de communication 80 selon l'invention est en particulier configuré 25 pour échanger des données avec des dispositifs tiers.The communication module 80 according to the invention is in particular configured to exchange data with third party devices.
Le dispositif 1 communique avec d'autres dispositifs informatiques grâce à ce module de communication 80.The device 1 communicates with other computer devices thanks to this communication module 80.
Le module de communication permet en outre, de transmettre les données sur au moins un réseau de communication et peut comprendre une communication filaire ou sans fil.The communication module also allows data to be transmitted over at least one communication network and may include wired or wireless communication.
De préférence, la communication est opérée par l'intermédiaire d'un protocole sans fils tel que wifi, 3G, 4G, 30 et/ou Bluetooth.Preferably, the communication is operated by means of a wireless protocol such as wifi, 3G, 4G, 30 and / or Bluetooth.
Ces échanges de données peuvent prendre la forme d'envoi et de réception de fichiers.These data exchanges can take the form of sending and receiving files.
Par exemple, le module de communication peut être configuré pour transmettre un rapport comportant pour une période une liste des valeurs de quantité de ressource du nouveau plan de dimensionnement optimisé et validé. 34 For example, the communication module can be configured to transmit a report comprising for a period a list of the resource quantity values of the new optimized and validated sizing plan. 34
[0099] Le module de communication 80 est en outre configuré pour permettre la communication avec un terminal distant, dont un client 3.The communication module 80 is further configured to allow communication with a remote terminal, including a client 3.
Le client est généralement, tout matériel et/ou logiciel.The client is generally any hardware and / or software.
Le module de communication 80 peut également être configuré pour communiquer avec une interface homme-machine. 5 The communication module 80 can also be configured to communicate with a man-machine interface. 5
[00100] En outre, le dispositif selon l'invention peut comporter un module 90 de mémorisation apte à, de préférence configuré pour, mémoriser une pluralité de référentiels ou de données mesurées.[00100] In addition, the device according to the invention may include a storage module 90 capable of, preferably configured for, storing a plurality of frames of reference or of measured data.
Par exemple, le module 90 de mémorisation est de préférence configuré pour mémoriser les coefficients de pondération de chacune des ressources considérées.For example, the storage module 90 is preferably configured to store the weighting coefficients of each of the resources considered.
Pour cela, le module 90 de mémorisation peut comprendre n'importe quel 10 support lisible par ordinateur connu dans l'art comprenant, par exemple, une mémoire volatile, telle qu'une mémoire vive statique (SRAM) et une mémoire vive dynamique (DRAM), et / ou une mémoire non volatile, telle que mémoire morte, mémoires flash, disques durs, disques optiques et bandes magnétiques.For this, the storage module 90 can comprise any computer readable medium known in the art comprising, for example, a volatile memory, such as a static random access memory (SRAM) and a dynamic random access memory (DRAM). ), and / or non-volatile memory, such as read only memory, flash memories, hard disks, optical disks and magnetic tapes.
Le module 90 de mémorisation peut comprendre une pluralité d'instructions ou de modules ou d'applications pour effectuer 15 diverses fonctionnalités.The storage module 90 may include a plurality of instructions or modules or applications to perform various functionalities.
Ainsi, le module 90 de mémorisation peut mettre en oeuvre des routines, des programmes, ou des structures de données de type matricielle.Thus, the storage module 90 can implement routines, programs, or matrix type data structures.
De façon préférée, le module 90 de mémorisation peut comprendre un support lisible par un système informatique sous la forme d'une mémoire volatile, telle qu'une mémoire vive (RAM) et / ou une mémoire cache.Preferably, the storage module 90 can comprise a medium readable by a computer system in the form of a volatile memory, such as a random access memory (RAM) and / or a cache memory.
Le module 90 de mémorisation, comme les autres modules, peut par 20 exemple être connecté avec les autres composants du dispositif 1 via un bus et une ou plusieurs interfaces de support de données. The storage module 90, like the other modules, can for example be connected with the other components of the device 1 via a bus and one or more data medium interfaces.
[00101] Le module 90 de mémorisation peut être notamment configuré pour mémoriser une des données d'identification de ressources critiques utilisées par les traitements par lots.[00101] The storage module 90 can in particular be configured to store one of the identification data of critical resources used by the batch processing operations.
Dans ce contexte, le module 90 de mémorisation peut par exemple être configuré pour 25 mémoriser des données d'identification des différentes machines virtuelles ou partitions supportant le ou les traitements par lots étudiés.In this context, the storage module 90 can for example be configured to store identification data of the different virtual machines or partitions supporting the studied batch process (s).
La ressource critique peut par exemple être une mémoire vive mais de nombreuses autres ressources peuvent être considérées telles que la lecture/écriture d'un disque, la lecture/écriture d'un réseau, ou le taux d'utilisation d'une mémoire.The critical resource can for example be a random access memory but many other resources can be considered such as the reading / writing of a disk, the reading / writing of a network, or the rate of use of a memory.
En outre, le référentiel de ressources peut être configuré pour mémoriser la 30 quantité disponible de ressources critiques (e.g.Additionally, the resource repository can be configured to store the available amount of critical resources (e.g.
CPU nombre et puissance, quantité de mémoire).CPU number and power, amount of memory).
Plus particulièrement, une ressource critique peut être une ressource dont la consommation moyenne est supérieure à 60 % ou bien une ressource dont la consommation présente un ou plusieurs pics de consommation supérieurs à 70 % ou encore une ressource dont une perte de 20 % ou plus de disponibilité entraine une défaillance sur 35 l'exécution du plan d'ordonnancement étudié.More particularly, a critical resource can be a resource whose average consumption is greater than 60% or a resource whose consumption has one or more peaks of consumption greater than 70% or a resource whose loss of 20% or more. availability causes a failure on the execution of the studied scheduling plan.
Le dispositif 1 selon l'invention peut aussi être en mesure d'identifier quelles sont les ressources d'importances pour l'exécution du plan d'ordonnancement. The device 1 according to the invention may also be able to identify which resources are of importance for the execution of the scheduling plan.
[00102] Le module 90 de mémorisation peut être également configuré pour mémoriser un 5 référentiel de règles d'exécution.The storage module 90 can also be configured to store a repository of execution rules.
Le référentiel de règles d'exécution est configuré pour mémoriser des données correspondant aux règles applicables lors de l'exécution de l'ordonnancement des traitements par lots.The execution rules repository is configured to store data corresponding to the rules applicable during the execution of the scheduling of batch processes.
Ainsi, un utilisateur a la possibilité d'enregistrer sur une mémoire des règles d'exécution que le plan ordonnancement doit respecter.Thus, a user has the possibility of recording in a memory execution rules that the scheduling plan must comply with.
Les règles peuvent par exemple porter sur des ordres d'enchainement à respecter (e.g. le 10 traitement A doit s'exécuter avant le traitement B), des horaires à respecter (e.g. le traitement C doit démarrer avant 23h ou le traitement D doit être terminé avant 2h), des seuils de consommation en ressources à respecter (e.g. la consommation de la ressource 1.1.1 ne peut dépasser 80 %), des etc.The rules can for example relate to sequencing orders to be respected (eg processing A must be executed before processing B), schedules to be respected (eg processing C must start before 11 p.m. or processing D must be terminated. before 2h), resource consumption thresholds to be respected (eg the consumption of resource 1.1.1 cannot exceed 80%), etc.
De telles règles peuvent être mémorisées dans au moins un tableau matriciel mémorisé correspondant à chaque traitement Ti.Such rules can be stored in at least one stored matrix table corresponding to each processing Ti.
Par exemple, 15 afin d'éviter l'exécution simultanée, ou chevauchement, de deux traitements par lots, une ligne peut être ajoutée à chaque matrice de traitement, ladite ligne ne contenant plus la consommation d'une ressource pour les plages horaires mais une valeur identique (par exemple 99) dans la première colonne pour les deux ou plusieurs traitements concernés.For example, in order to avoid the simultaneous execution, or overlap, of two batch processes, a row can be added to each processing matrix, said row no longer containing the consumption of a resource for the time slots but a row. identical value (for example 99) in the first column for the two or more processes concerned.
Cela permet d'indiquer au module de vérification 60 que par exemple, le chevauchement 20 des traitements T1 et T2 est interdit. This makes it possible to indicate to the verification module 60 that, for example, the overlap 20 of the processing T1 and T2 is prohibited.
[00103] Les différents modules ou référentiels sont distincts sur la figure 9 mais l'invention peut prévoir divers types d'agencement comme par exemple un seul module cumulant l'ensemble des fonctions décrites ici.[00103] The different modules or frames of reference are distinct in FIG. 9 but the invention can provide various types of arrangement such as for example a single module combining all the functions described here.
De même, ces moyens peuvent être divisés en plusieurs cartes électroniques ou bien rassemblés sur une seule carte électronique. 25 Likewise, these means can be divided into several electronic cards or else grouped together on a single electronic card. 25
[00104] Le dispositif 1 selon l'invention peut être intégré dans un système informatique et ainsi être apte à communiquer avec un ou plusieurs dispositifs externes tels qu'un clavier, un dispositif de pointage, un affichage, ou tout dispositif permettant à un utilisateur d'interagir avec le dispositif 1.The device 1 according to the invention can be integrated into a computer system and thus be able to communicate with one or more external devices such as a keyboard, a pointing device, a display, or any device allowing a user interact with the device 1.
Il faut comprendre que bien que non représenté, d'autres composants matériels et / ou logiciels pourraient être utilisé en conjonction avec un dispositif 1.It should be understood that although not shown, other hardware and / or software components could be used in conjunction with a device 1.
Ainsi, 30 dans un mode de réalisation de la présente invention, le dispositif 1 peut être couplé à une interface homme machine (IHM).Thus, in one embodiment of the present invention, the device 1 can be coupled to a human machine interface (HMI).
L'IHM, comme déjà abordé, peut être utilisée pour permettre la transmission de paramètres aux dispositifs ou à l'inverse mettre à disposition de l'utilisateur les valeurs des données mesurées ou calculées par le dispositif.The HMI, as already discussed, can be used to allow the transmission of parameters to the devices or, conversely, to provide the user with the data values measured or calculated by the device.
De façon 36 générale, l'IHM est couplée de manière communicative avec un processeur et elle comprend une interface de sortie utilisateur et une interface d'entrée utilisateur.Generally, the HMI is communicatively coupled with a processor and includes a user output interface and a user input interface.
L'interface de sortie utilisateur peut comprendre une interface d'affichage et de sortie audio et divers indicateurs tels que des indicateurs visuels, des indicateurs audibles et des indicateurs haptiques.The user output interface may include an audio display and output interface and various indicators such as visual indicators, audible indicators, and haptic indicators.
L'interface d'entrée utilisateur peut comprendre un clavier, une souris ou un autre module de navigation curseur tel qu'un écran tactile, un pavé tactile, une interface d'entrée de stylet et un microphone pour l'entrée de signaux audibles tels qu'un discours d'utilisateur, des données et des commandes qui peuvent être reconnues par le processeur. The user input interface may include a keyboard, mouse, or other cursor navigation module such as a touchscreen, a touchpad, a stylus input interface, and a microphone for inputting audible signals such as as user speech, data and commands that can be recognized by the processor.
[00105] Dans un mode de réalisation de la présente invention, le dispositif 1 peut être 10 couplé à une interface de communication, par exemple une interface réseau de type Ethernet, FiberChannel, Int iniBand ou n'importe quels dispositifs permettant au dispositif 1 de communiquer avec un ou plusieurs autres dispositifs informatiques. [00105] In one embodiment of the present invention, the device 1 can be coupled to a communication interface, for example a network interface of the Ethernet, FiberChannel, Int iniBand type or any other device allowing the device 1 to communicate with one or more other computing devices.
[00106] En outre, comme cela sera apprécié par l'homme de l'art, des aspects de la présente invention peuvent être réalisés en tant que système, procédé ou produit de 15 programme d'ordinateur.[00106] Further, as will be appreciated by those skilled in the art, aspects of the present invention can be realized as a system, method or computer program product.
En conséquence, des aspects de la présente invention peuvent prendre la forme d'un mode de réalisation entièrement matériel, d'un mode de réalisation entièrement logiciel (comprenant un micrologiciel, un logiciel résident, un microcode, etc.) ou d'un mode de réalisation particulier tel que comme un "circuit", "module" ou "système".Accordingly, aspects of the present invention may take the form of an all-hardware embodiment, an all-software embodiment (including firmware, resident software, microcode, etc.), or a mode. of particular embodiment such as a "circuit", "module" or "system".
En outre, des aspects de la présente invention peuvent prendre la forme d'un produit de 20 programme d'ordinateur incorporé dans un ou plusieurs supports lisibles par ordinateur ayant un code de programme lisible par ordinateur incorporé sur celui-ci. Further, aspects of the present invention may take the form of a computer program product embedded in one or more computer readable media having computer readable program code embedded thereon.
[00107] Toute combinaison d'un ou plusieurs supports lisibles par ordinateur peut être utilisée.Any combination of one or more computer readable media can be used.
Dans le contexte de ce document, un support lisible par ordinateur peut être n'importe quel support tangible qui peut contenir, ou stocker un programme à utiliser par ou 25 en relation avec un système d'exécution d'instructions, appareil ou dispositif.In the context of this document, a computer readable medium can be any tangible medium which can contain, or store a program for use by or in connection with an instruction execution system, apparatus or device.
Un support lisible par ordinateur peut être, par exemple, mais sans s'y limiter, un système, appareil ou dispositif électronique, magnétique, optique, électromagnétique, infrarouge ou semiconducteur, ou toute combinaison appropriée de ce qui précède.A computer readable medium can be, for example, but not limited to an electronic, magnetic, optical, electromagnetic, infrared or semiconductor system, apparatus or device, or any suitable combination of the foregoing.
Des exemples plus spécifiques (une liste non exhaustive) du support de stockage lisible par ordinateur 30 comprendraient : un disque dur, une mémoire vive (RAM). More specific examples (a non-exhaustive list) of the computer readable storage medium 30 would include: hard disk, random access memory (RAM).
[00108] Un code de programme informatique pour effectuer des opérations pour des aspects de la présente invention peut être écrit dans n'importe quelle combinaison d'un ou plusieurs langages de programmation, y compris un langage de programmation orienté 37 objet tel que Java, C ++ ou similaire, le langage de programmation "C" ou des langages de programmation similaires, un langage de script tel que Perl, ou des langages similaires, et/ou des langages fonctionnels tels que Meta Langage.Computer program code for performing operations for aspects of the present invention can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C ++ or the like, the "C" programming language or similar programming languages, a scripting language such as Perl, or similar languages, and / or functional languages such as Meta Language.
Le code de programme peut s'exécuter entièrement sur l'ordinateur d'un utilisateur, en partie sur l'ordinateur d'un utilisateur et en partie sur un ordinateur distant ou entièrement sur l'ordinateur ou le serveur distant.The program code can run entirely on a user's computer, partially on a user's computer, and partially on a remote computer, or entirely on the remote computer or server.
Dans ce dernier scénario, l'ordinateur distant peut être connecté à l'ordinateur d'un utilisateur par tout type de réseau, y compris un réseau local (LAN) ou un réseau étendu (WAN). In the latter scenario, the remote computer can be connected to a user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN).
[00109] Ces instructions de programme d'ordinateur peuvent être stockées sur un support 10 lisible par ordinateur pouvant diriger un dispositif informatique (e.g. ordinateur, serveur...), de sorte que les instructions stockées dans le support lisible par ordinateur produisent un dispositif informatique configuré pour mettre en oeuvre l'invention.These computer program instructions can be stored on a computer readable medium 10 capable of controlling a computing device (eg computer, server ...), so that the instructions stored in the computer readable medium produce a device. computer configured to implement the invention.
Ainsi, la présente invention permet de générer automatiquement un plan de dimensionnement optimisé permettant l'exécution d'un plan d'ordonnancement avec 15 amélioration de l'efficacité d'utilisation de ressources et tout en de préférence respectant une durée maximale d'exécution.Thus, the present invention makes it possible to automatically generate an optimized sizing plan allowing the execution of a scheduling plan with improvement in the efficiency of use of resources and while preferably respecting a maximum execution time.
Ainsi, des ressources pouvant être essentielles à d'autres applications ne sont monopolisées qu'en faible quantité si d'autres ressources plus disponibles peuvent venir compenser cette réduction.Thus, resources that may be essential for other applications are only monopolized in small quantities if other more available resources can compensate for this reduction.
Cela, ainsi que tous ces avantages précédemment décrit contribuent donc à faciliter la gestion d'une infrastructure informatique 20 impliquée dans l'exécutionThis, as well as all these advantages previously described therefore contribute to facilitate the management of an IT infrastructure 20 involved in the execution.
Claims (11)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1859590A FR3087556B1 (en) | 2018-10-17 | 2018-10-17 | METHOD FOR IMPROVING THE EFFICIENCY OF USING THE RESOURCES OF AN INFRASTRUCTURE INTENDED TO EXECUTE A SCHEDULING PLAN |
EP19203879.2A EP3640800A1 (en) | 2018-10-17 | 2019-10-17 | Method for improving the efficiency of use of the resources of an infrastructure designed to execute a scheduling plan |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1859590A FR3087556B1 (en) | 2018-10-17 | 2018-10-17 | METHOD FOR IMPROVING THE EFFICIENCY OF USING THE RESOURCES OF AN INFRASTRUCTURE INTENDED TO EXECUTE A SCHEDULING PLAN |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3087556A1 true FR3087556A1 (en) | 2020-04-24 |
FR3087556B1 FR3087556B1 (en) | 2022-04-29 |
Family
ID=65494355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1859590A Active FR3087556B1 (en) | 2018-10-17 | 2018-10-17 | METHOD FOR IMPROVING THE EFFICIENCY OF USING THE RESOURCES OF AN INFRASTRUCTURE INTENDED TO EXECUTE A SCHEDULING PLAN |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3087556B1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2985824A1 (en) * | 2012-01-17 | 2013-07-19 | Thales Sa | METHOD FOR OPTIMIZING PARALLEL DATA PROCESSING ON A MATERIAL PLATFORM |
EP2975526A1 (en) | 2014-07-17 | 2016-01-20 | Bull Sas | Method for producing controlled disturbances of the activity of an automated processing device during an application testing scenario |
EP3113022A1 (en) | 2015-07-02 | 2017-01-04 | Bull S.A.S. | Batch-processing scheduling mechanism |
US20170255491A1 (en) * | 2016-03-04 | 2017-09-07 | Google Inc. | Resource allocation for computer processing |
US20180260242A1 (en) * | 2017-03-08 | 2018-09-13 | International Business Machines Corporation | Automatic reconfiguration of high performance computing job schedulers based on user behavior, user feedback, and job performance monitoring |
-
2018
- 2018-10-17 FR FR1859590A patent/FR3087556B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2985824A1 (en) * | 2012-01-17 | 2013-07-19 | Thales Sa | METHOD FOR OPTIMIZING PARALLEL DATA PROCESSING ON A MATERIAL PLATFORM |
EP2975526A1 (en) | 2014-07-17 | 2016-01-20 | Bull Sas | Method for producing controlled disturbances of the activity of an automated processing device during an application testing scenario |
EP3113022A1 (en) | 2015-07-02 | 2017-01-04 | Bull S.A.S. | Batch-processing scheduling mechanism |
US20170255491A1 (en) * | 2016-03-04 | 2017-09-07 | Google Inc. | Resource allocation for computer processing |
US20180260242A1 (en) * | 2017-03-08 | 2018-09-13 | International Business Machines Corporation | Automatic reconfiguration of high performance computing job schedulers based on user behavior, user feedback, and job performance monitoring |
Also Published As
Publication number | Publication date |
---|---|
FR3087556B1 (en) | 2022-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9389916B1 (en) | Job scheduling management | |
EP3113025B1 (en) | Automatic diagnostic mechanism using information from an application monitoring system | |
FR3000578A1 (en) | SHARED CALCULATION SYSTEM AND METHOD USING AUTOMATED SUPPLY OF HETEROGENEOUS COMPUTER RESOURCES | |
US10206618B2 (en) | Optimized visibility for sleep sessions over time | |
US10228974B2 (en) | Intelligent management of processing tasks on multi-tenant or other constrained data processing platform | |
EP3506094A1 (en) | System and method to optimize the scheduling of batch processes | |
FR3038405A1 (en) | LOT PROCESSING ORDERING MECHANISM | |
FR3088740A1 (en) | ITERATIVE DATA PROCESSING | |
EP3620928A1 (en) | Device and method for analysing the behaviour of an application component subject to increasing scarcity of resources | |
FR3087556A1 (en) | METHOD FOR IMPROVING THE EFFICIENCY OF USE OF THE RESOURCES OF AN INFRASTRUCTURE FOR IMPLEMENTING A SCHEDULING PLAN | |
FR3091376A1 (en) | Method for optimizing a scheduling plan and the sizing of a computer infrastructure | |
EP3640800A1 (en) | Method for improving the efficiency of use of the resources of an infrastructure designed to execute a scheduling plan | |
US8543550B2 (en) | Prioritized digital media archiving | |
EP3767474B1 (en) | Method for analysing resource consumption of a computer infrastructure, alert and sizing | |
FR3087282A1 (en) | METHOD FOR OPTIMIZING THE MINIMUM SIZING OF AN INFRASTRUCTURE FOR IMPLEMENTING A SCHEDULING PLAN | |
US12008399B2 (en) | Optimization for scheduling of batch jobs | |
US11119734B2 (en) | Software detection and modification | |
EP3483733B1 (en) | Method and apparatus for searching for a resource optimisation margin of a business chain | |
EP3617888A1 (en) | Device and method for optimising the use over time of the resources of a computer infrastructure | |
FR3069933B1 (en) | METHOD FOR VALIDATION OF MUTUALIZATION OF APPLICATION BRICKS ON A COMPUTER INFRASTRUCTURE | |
FR3071335A1 (en) | METHOD AND SYSTEM FOR OPTIMIZING THE ORDERING OF BATCH PROCESSES | |
US11609837B2 (en) | Calibration technique using computer analysis for ascertaining performance of containers | |
US20240193649A1 (en) | Task automation and scheduling | |
EP4113297A1 (en) | Method for managing work in a computer system and associated system | |
EP4312121A1 (en) | Method for allocating computing resources in a computing infrastructure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment | ||
PLSC | Publication of the preliminary search report |
Effective date: 20200424 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 4 |
|
PLFP | Fee payment |
Year of fee payment: 5 |
|
PLFP | Fee payment |
Year of fee payment: 6 |