Dynamic evaluation and improvement of energy efficiency of computer code
AssigneeAccenture Global Solutions Limited
InventorsKoushik M. Vijayaraghavan, Jeffson Felix Dsouza, Pradeep Kumar Senapati, Ilangovan Sivakumar, Dibyendu Chattopadhyay
Life of this patent
Estimating the term…
Abstract
Methods, computer systems, and apparatus, including computer programs encoded on computer storage media, for evaluating an energy efficiency of a computer code snippet. A computer-implemented system obtains code data characterizing a computer code snippet and rule data characterizing one or more energy efficiency rules, and processes the code data and rule data using machine-learning models to detect energy efficiency defects in the computer code snippet that negatively impact a dynamic energy efficiency of the computer code snippet upon execution by the computing device.
Claims18
A computer-implemented method, comprising:
- obtaining code data characterizing a computer code snippet to be executed by a computing device;
- obtaining rule data characterizing one or more energy efficiency rules;
- generating a first input from the code data and a second input from the rule data;
- processing the first input using a first embedding machine-learning model to generate a first embedding feature vector for the computer code snippet;
- processing the second input using a second embedding machine-learning model to generate a second embedding feature vector for the one or more energy efficiency rules;
- processing (i) the first embedding feature vector and (ii) the second embedding feature vector using a code defect detection machine-learning model to generate a detection output comprising data representing one or more portions of the computer code snippet that negatively impact a dynamic energy efficiency of the computer code snippet upon execution by the computing device;
- and
- performing an action based on the detection output,
- wherein each of the first embedding machine-learning model and the second embedding machine-learning model comprises a respective language model, and
- wherein the first embedding machine-learning model comprises a first Long Short-Term Memory (LSTM) network with a higher drop rate than a second LSTM network of the second embedding machine-learning model.
A system comprising:
- one or more memories, and
- one or more computers, coupled to the one or more memories, configured to:
- obtain code data characterizing a computer code snippet to be executed by a computing device;
- obtain rule data characterizing one or more energy efficiency rules;
- generate a first input from the code data and a second input from the rule data;
- process the first input using a first embedding machine-learning model to generate a first embedding feature vector for the computer code snippet;
- process the second input using a second embedding machine-learning model to generate a second embedding feature vector for the one or more energy efficiency rules;
- process (i) the first embedding feature vector and (ii) the second embedding feature vector using a code defect detection machine-learning model to generate a detection output comprising data representing one or more portions of the computer code snippet that negatively impact a dynamic energy efficiency of the computer code snippet upon execution by the computing device;
- and
- perform an action based on the detection output,
- wherein each of the first embedding machine-learning model and the second embedding machine-learning model comprises a respective language model, and
- wherein the first embedding machine-learning model comprises a first Long Short-Term Memory (LSTM) network with a higher drop rate than a second LSTM network of the second embedding machine-learning model.
A non-transitory computer-readable storage media storing instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:
- obtaining code data characterizing a computer code snippet to be executed by a computing device;
- obtaining rule data characterizing one or more energy efficiency rules;
- generating a first input from the code data and a second input from the rule data;
- processing the first input using a first embedding machine-learning model to generate a first embedding feature vector for the computer code snippet;
- processing the second input using a second embedding machine-learning model to generate a second embedding feature vector for the one or more energy efficiency rules;
- processing (i) the first embedding feature vector and (ii) the second embedding feature vector using a code defect detection machine-learning model to generate a detection output comprising data representing one or more portions of the computer code snippet that negatively impact a dynamic energy efficiency of the computer code snippet upon execution by the computing device;
- and
- performing an action based on the detection output,
- wherein each of the first embedding machine-learning model and the second embedding machine-learning model comprises a respective language model, and
- wherein the first embedding machine-learning model comprises a first Long Short-Term Memory (LSTM) network with a higher drop rate than a second LSTM network of the second embedding machine-learning model.
Dependencies are inferred from the claim text.