Patent classifications
G06F8/37
Blackbox matching engine
A method and apparatus are disclosed for enhancing operable functionality of input source code files from a software program by identifying a first code snippet and a first library function which generate similar outputs from a shared input by parsing each and every line of code in a candidate code snippet to generate a templatized code snippet data structure for the first code snippet, and then testing the templatized code snippet data structure against extracted library function information to check for similarity of outputs between the first code snippet and the first library function in response to a shared input so that the developer is presented with a library function recommendation which includes the first code snippet, the first library function, and instructions for replacing the first code snippet with the first library function.
Automatic correctness and performance measurement of binary transformation systems
Disclosed is a test engine intended to evaluate the correctness and measure the performance effects of a binary transformation technique. The disclosed system takes source code as input and compiler information/flags as input. The transformation-under-test is applied to the compiler, creating a transformed compiler. A random test case generator residing within the test engine for injecting illegal code structures to modify the project source code, build flags, or compiler's operating environment, thereby creating an unlimited number of input test cases for the compiler. The test engine compiles the source code utilizing both the raw and transformed compilers and compares the results. For example, the test engine renders a pass/fail judgement on the binary transformation based on a metric of near equivalence between the results of the raw compiler and transformed compiler. By using one or more bitmasks, the evaluation process factors in differences attributed to compiler run-time generated artifacts.
Method and system for compiler optimization based on artificial intelligence
This application describes methods, systems, and apparatus, including computer programs encoded on computer storage media, of an AI-assisted compiler. An example method includes obtaining intermediate code and executable code generated by compiling a computer program with a compiler; determining a reward based on one or more traces obtained by executing the executable code in a runtime system; generating an embedding vector based on the intermediate code and the one or more traces to represent code execution states; determining, using a reinforcement learning agent, one or more optimization actions based on the embedding vector and the reward; and updating the compiler by applying the one or more optimization actions.
Mobile application development device
A mobile application development device having a platform processor, a native application converter engine, and a mobile platform framework engine configured to facilitate the development and deployment of mobile applications configured to be run on different mobile operating systems from code that is developed independently and agnostic of the mobile operating system on which it will ultimately run.
Infrastructure control interface for database systems
Database systems and methods are provided for remotely managing an infrastructure component. One method involves an ICL compiler service obtaining a plain text command from a client device coupled to a network, parsing the plain text command to identify an infrastructure target of the plain text command and a portion defining an action for the infrastructure target, compiling the portion of the plain text command defining the action into an intermediate format encapsulated in an executable object, and providing the executable object to the infrastructure target.
Neural code completion via re-ranking
A code completion system uses neural components to rank the unordered list of code completion candidates generated from an existing static analyzer. The candidates represent the next sequence of tokens likely to complete a partially-formed program element as a developer is typing in a software development tool. A re-ranking component generates a ranked order of the candidates based on a context embedding of the code context and candidate embeddings of the candidates, where both embeddings are based a common token encoding.
DATA PARSING APPARATUS AND DATA PARSING METHOD
In a data parsing method, a data adapter receives a piece of reference data, wherein the reference data has a data structure, the data structure includes at least one tag and a value corresponding to each of the at least one tag, and the reference data corresponds to a topic. The data adapter establishes a schema for the topic according to at least one path related to at least a portion of the at least one tag and the at least one value of the data structure. Referring to the schema, the data adapter uses a parser to parse a piece of objective data into a piece of parsed data, wherein the objective data has the data structure and corresponds to the topic.
ARCHITECTURE EXPLORATION AND COMPILER OPTIMIZATION USING NEURAL NETWORKS
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for optimizing integrated circuit architectures or compiler designs using an optimization engine. The optimization engine includes an auto-encoder and one or more regressors. Once trained, the optimization engine can encode initial, discrete input values of a set of input characteristics into a continuous domain and use continuous optimization techniques to identify final input values of the set of input characteristics that optimize one or more output characteristics.
ENTERPRISE WEB APPLICATION CONSTRUCTOR SYSTEM AND METHOD
A web-based application constructor can be used to construct a web display. A specification, for constructing a web display to contain page components that display data from heterogeneous data sources, may be created. The page components may be associated with uniform resource locators. Data from heterogeneous data sources may be retrieved to produce the web display. Display and update of the page components may be controlled using the uniform resource locators. User-selectable options may allow annotation of the page components for a page with comments.
Interface effect minimization by software design
A method is provided for integrating interfaces in software. The method includes incorporating a library to the source file to produce a plurality of adapters and abstractions; compiling the adapters and abstractions into a digital library; transferring the adapters and abstractions into an application source code; linking the application source code with the library to produce a combination file; and compiling the combination file into an executable application file.