G06F8/443

Computer processing and outcome prediction systems and methods
11520560 · 2022-12-06 ·

Computer processing and outcome prediction systems and methods used to generate algorithm time prediction polynomials, inverse algorithm time prediction polynomials, determine race conditions, determine when a non-linear algorithm can be treated as if it were linear, as well as automatically generate parallel and quantum solutions from classical software or from the relationship between monotonic attribute values.

Automated asymptotic analysis
11520579 · 2022-12-06 · ·

Some embodiments provide a method for identifying runtime complexity of a policy. The method receives, through a user interface (UI), a set of code defining a particular policy. For each variable in the particular policy, the method identifies a first occurrence of the variable in the particular policy to determine a number of values assigned to the variable. Variables determined to be assigned one value are separated from variables determined to be assigned more than one value. Based on the determinations for each variable, the method calculates a set of metrics that include at least time complexity, size complexity, and count complexity for the particular policy. The method then displays, through the UI, the calculated set of metrics along with a set of one or more suggestions for optimizing the particular policy based on the calculated set of metrics.

COMPILER, COMPILATION METHOD, AND COMPILER DEVICE
20220382548 · 2022-12-01 · ·

The present disclosure relates to a compiler for causing a computer to execute a process. The process includes generating a first program, wherein the first program includes a first code that determines whether a first area of a memory that a process inside a loop included in a second program refers to in a first execution time of the loop is in duplicate with a second area of the memory that the process refers to in a second execution time of the loop, a second code that executes the process in an order of the first and second execution times when it is determined that the first and the second areas are duplicate, and a third code that executes the process for the first execution time and the process for the second execution time in parallel when it is determined that the first and the second areas are not duplicate.

Methods, blockchain nodes and storage media for deploying smart contract

A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for deploying a smart contract in a blockchain network. The computer-implemented method includes: receiving, by a blockchain node in a blockchain network, a transaction for creating a smart contract, wherein the transaction comprises a machine code of the smart contract, and the machine code of the smart contract is obtained by Ahead of Time (AoT) compilation of a bytecode of the smart contract in a first trusted execution environment (TEE); determining, by the blockchain node, that the machine code of the smart contract is obtained in a trusted TEE; and in response to determining that the machine code of the smart contract is obtained by the trusted TEE, completing, by the blockchain node, a deployment of the smart contract.

Methods, blockchain nodes and storage media for executing smart contracts

A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for executing a smart contract in a blockchain network. The computer-implemented method includes, in response to determining that a smart contract is deployed on a blockchain node in a blockchain network comprising a plurality of blockchain nodes, starting, by the blockchain node, to turn a bytecode of the smart contract into a machine code of the smart contract through Just-In-Time (JIT) compilation; storing, by the blockchain node, the machine code of the smart contract locally; performing a determination of whether the machine code of the smart contract is stored locally by the blockchain node and a number of blockchain nodes storing the machine code of the smart contract in the blockchain network is not less than a predetermined number; and executing, by the blockchain node, the smart contract based on the determination.

Method and system for scheduling tasks in a computing system
11513841 · 2022-11-29 · ·

In general, embodiments of the invention relate to a method and computing system for scheduling tasks (functions or routines) dynamically from Input/Output (I/O) operations that may be received from a client. The scheduling or ordering of the tasks play an important role in the overall latency of the execution of IO operations, as each task may consume significant amount of computing resources.

Modeling foreign functions using executable references

Techniques for representing a native function using an executable reference are disclosed. The system receives an instruction to create an executable reference for a native function, including a method type comprising a method signature corresponding to the executable reference, and a function description including (a) a memory layout corresponding to data returned by the function and (b) memory layouts corresponding to parameters required by the function. The system selects an application binary interface (ABI). The system generates code that, for each parameter, of the one or more parameters required by the function, converts the parameter from a value formatted for use by a Java Virtual machine to a value formatted for use in the native function, based on the selected ABI. Responsive to invocation of the executable reference, the generated code and the native function may be executed.

OPERATOR REGISTRATION METHOD AND APPARATUS FOR DEEP LEARNING FRAMEWORK, DEVICE AND STORAGE MEDIUM

The present disclosure provides an operator registration method and apparatus for a deep learning framework, a device and a storage medium, relates to the field of computer technologies, and specifically to the field of artificial intelligence such as deep learning. The operator registration method for a deep learning framework includes: receiving registration information provided by a user for registering operators with the deep learning framework, the registration information including: a custom calculation function, the custom calculation function being written in a manner irrelevant to the deep learning framework; building operator meta-information in the deep learning framework based on the registration information; and constructing a to-be-registered operator within the deep learning framework based on the operator meta-information, and registering the to-be-registered operator in a global operator table within the deep learning framework. The present disclosure can simplify an operator registration process.

METHOD AND SYSTEM FOR OPTIMIZING ADDRESS CALCULATIONS
20220374236 · 2022-11-24 ·

The disclosed systems, structures, and methods are directed to optimizing address calculations in a computer. This is achieved in a compiler that identifies an address calculation in code that is being compiled and transforms the code by splitting the address calculation into a first portion in which an offset is determined and a second portion, in which the offset is combined with a base pointer to generate an address. The address and the base pointer have a first bit-length, and the offset has a second bit-length shorter than the first bit-length. The offset is determined using an operation performed at the second bit-length. In some implementations the first bit-length is 64 bits and the second bit-length is 32 bits.

Column data driven arithmetic expression evaluation

Methods, systems, apparatuses, and computer program products are provided for generating an instruction set for an evaluation engine. An arithmetic expression that combines multiple columns of data (e.g., a first column of data, a second column of data, etc.) is received. Instructions may be generated, that, when executed by an integrated-circuit-based processor, cause the integrated-circuit-based processor to evaluate the arithmetic expression. In examples, a set of instructions may be generated for each column of data represented in the arithmetic expression. For instance, the instructions may comprise a first set of instructions associated with the first column of data, a second set of instructions associated with the second column of data, and so on. The instructions may specify one or more parameters for operations associated with each column of data, such as operations to load data from a buffer, store data into a buffer, arithmetic operations to perform on data, etc.