IP Library › Granted Patent US 12,051,009
Granted Patent B2
US 12,051,009 · App. 16/450,714 · Granted Jul 30, 2024

Automatic and self-optimized determination of execution parameters of a software application on an information processing platform

Inventors: Lionel Vincent (Fontaine, FR); Trong-Ton Pham (Grenoble, FR); Gaël Goret (La Murette, FR); Philippe Couvee (Villard Bonnot, FR); Mamady Nabe (Saint Martin d'Heres, FR)
Assignee: BULL SAS
G06N5/04G06F11/3466G06F17/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,051,009
App. No.
16/450,714
Granted
Jul 30, 2024
Kind
B2
Abstract

The invention relates to a method for optimizing the execution parameters of a software application on an information processing platform, consisting in iteratively optimizing said parameters at each execution of said application, in which: for each execution ( 1 ) of said application, performance measurements are made ( 2 ) and stored ( 3 ), in association with the parameters used for said execution; at the start of each execution of said application, values are determined ( 4, 6 ) for a first subset of said parameters by inference ( 6 ) from the stored measurements corresponding to a subset of the executions corresponding to a second subset of said parameters.

Claims (19)

1. A method for optimizing parameters for execution of a software application on an information processing platform, the method comprising:

iteratively optimizing said parameters at each execution of said application,

wherein said parameters comprise fixed parameters and free parameters,

wherein for each execution, the method includes, during said execution or once said execution is completed:

making a performance measurement in association with said parameters used for said execution;

creating a stored performance measurement by storing said performance measurement; and

wherein at a start of or right before starting each new execution of said application, determining values for a first subset of said parameters by inference from said stored performance measurement corresponding to a subset of previous executions corresponding to a second subset of said parameters, and

wherein each parameter of the first subset of said parameters is a free parameter and each parameter of the second subset is a fixed parameter, and

wherein said determining comprises inferring optimal values for said first subset of parameters according to a predetermined criterion expressed by said stored performance measurement and from a model describing a relationship between the second and the first subset of parameters, by an optimization method optimizing a cost function, and

wherein said first subset of parameters corresponds to configuration parameters of an input/output accelerator software module for optimizing inputs/outputs of said software application, and

wherein said model is obtained by regression and continuously models a variation in performance of said software application, as a function of the configuration parameters of said input/output accelerator software module.

2. The method according to claim 1 , wherein said second subset is formed by a discriminant parameter such as an application identifier.

3. The method according to claim 1 , wherein said subset of executions is in addition determined by an outlier data filter.

4. The method according to claim 3 , wherein a datum is regarded as an outlier when it concerns a performance measurement value representative of a different behaviour from other values of said performance measurement for said subset of executions.

5. The method according to claim 4 , wherein outlier datum is determined by pairwise comparisons between the data relating to said executions of said subset.

6. A system for optimizing execution parameters of a software application on an information processing platform, comprising:

a processor on an information processing platform;

a non-transitory computer-readable storage medium coupled to the processor, the non-transitory computer-readable storage medium comprising instructions that, when executed, cause the processor to utilize software modules for implementing the method according to claim 1 .

7. A non-transitory computer-readable storage medium comprising instructions for configuring a processor to implement the method according to claim 1 when said instructions are triggered by a data processing platform.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND RECEIVING PARTY DATA PREVIOUSLY RECORDED AT REEL: 065580 FRAME: 0343. ASSIGNOR(S) HEREBY CONFIRMS THE PARTIAL ASSIGNMENT. Recorded Dec 5, 2023
From: BULL SAS
To: BULL SAS; COMMISSARIAT À L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES
Reel/Frame 065779/0287 →
PARTIAL ASSIGNMENT Recorded Nov 14, 2023
From: BULL SAS
To: BULL SAS; THE FRENCH ALTERNATIVE ENERGIES AND ATOMIC ENERGY COMMISSION
Reel/Frame 065580/0343 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2019
From: LIONEL VINCENT; TRONG-TON PHAM; GAËL GORET; PHILIPPE COUVEE; MAMADY NABE
To: BULL SAS
Reel/Frame 050824/0082 →
Priority Claims (1)
FR 1855720 · Jun 26, 2018 · national
Continuity (1)
Related Publication 20190392331A1 · Dec 26, 2019
Cited By (1)
US 12,651,197