G06F8/48

REDUCED PROCESSING LOADS VIA SELECTIVE VALIDATION SPECIFICATIONS

Disclosed are embodiments for reducing processing requirements in complex build environments. Complex build environments frequently perform multiple builds per day, in some cases, multiple builds are occurring in parallel. Some of these builds and some fail. Moreover, a definition of success or failure of a build can vary across individual engineers or teams of engineers. In a complex build environment that is rapidly generating multiple build results simultaneously, identifying which builds are appropriate for use can be difficult. Many teams solve this problem by increasing a frequency of builds to rapidly detect any problems with documents recently checked into a document repository. However, this relatively high frequency of builds can impose large processing and/or cost burdens on an organization. By providing sophisticated methods of extracting validation information from existing builds, the disclosed embodiments reduce processing requirements and improved efficiency of enterprise build environments.

Efficient immutable syntax representation with incremental change

Efficient immutable syntax representation with parent pointers under incremental change is enabled by creating a data structure comprising at least one tree structure that allows both upward and downward references in the tree and a tree structure that is immutable (read-only), and allows parts of itself to be re-used in other data structures. The data structure described enables tools to search and target particular sub trees. The fragment of the tree representing the targeted sub tree is produced as it is used. The rest of the tree is not produced. The read-only tree retains relative information, allowing it to be reassembled and shared.

Systems and methods for converting a legacy code into an updated code

A method for facilitating a play of a legacy game is described. The method includes receiving a user input during the play of the legacy game, determining whether one or more blocks of code for servicing the user input are cached, and accessing one or more instructions of a legacy game code upon determining that the one or more blocks of code are not cached. The method further includes compiling the one or more blocks of code from the one or more instructions of the legacy game code, caching the one or more blocks of code, and executing the one or more blocks of code to display a virtual environment.

Machine learning for workloads for instruction set architecture optimization

An apparatus for machine learning for workloads for ISA optimization is disclosed. The apparatus includes a processor and a memory that stores code executable by the processor. The executable code is executable to run program code to service a workload with a default instruction set of the processor, identify an instruction sequence from execution results for the workload, the instruction sequence called repeatedly during execution for the workload, and generate a custom instruction that includes the instruction sequence. The executable code is executable to write the custom instruction to a writable area of processor memory storing the default instruction set, recompile program code used to service the workload, where the recompiled program code includes the custom instruction, and run the recompiled program code to service the workload.

Optimized recompilation using hardware tracing

A tracing controller may utilize a binary execution trace mechanism to trace execution of compiled application machine code. The tracing controller may initiate hardware tracing to gather control-flow hardware traces of a method executing on a processor configured to generate hardware tracing information. The controller may generate a profile based on the hardware tracing information and initiate re-compiling or re-optimizing of the method in response to determining that the new profile differs from the previous profile. The controller may repeatedly profile and re-optimize a method until profiles for the method stabilize. Profiling and hardware tracing of an application may be selectively enabled or disabled allowing the controller to respond to later phase changes in application execution by re-optimizing, thereby potentially improving overall application performance.

METHOD FOR THE EXECUTION OF A COMPUTER PROGRAM BY AN ELECTRONIC COMPUTING DEVICE COMPRISING A MAIN MEMORY AND A SECONDARY MEMORY

A computing device divides an area of a main memory wherein a data structure is saved into NbS1 subdivisions, and then the computing device computes a weight w.sub.S,NbS1(k) for each of the NbS1 subdivisions using the following relationship: w.sub.S,NbS1(k)=P.sub.S(1+(k−1)×(NbS0−1)/(NbS1−1)), where: k is the order number k of one of the NbS1 subdivisions, and P.sub.S( ) is a predetermined function that is continuous over an interval [1; NbS0] and defined over each interval [k.sub.0, k.sub.0+1] by a polynomial of order less than four, where k.sub.0 is an integer order number contained in the interval [1; NbS0], and then when a datum D.sub.k,n contained in a subdivision k of the main memory has to be transferred to a secondary memory, the computing device transfers a block of w.sub.S,NbS1(k) data containing the datum D.sub.k,n where w.sub.S,NbS1(k) is the weight computed for this subdivision k.

DYNAMIC PROCEDURES FOR SOFTWARE PRODUCTS
20220147374 · 2022-05-12 ·

There is provided a method for changing the functionality of an executing software product in runtime through the use of dynamic procedures. There is further provided a corresponding computerized system, computer program and non-volatile data carrier containing the computer program.

Reduced processing loads via selective validation specifications

Disclosed are embodiments for reducing processing requirements in complex build environments. Complex build environments frequently perform multiple builds per day, in some cases, multiple builds are occurring in parallel. Some of these builds and some fail. Moreover, a definition of success or failure of a build can vary across individual engineers or teams of engineers. In a complex build environment that is rapidly generating multiple build results simultaneously, identifying which builds are appropriate for use can be difficult. Many teams solve this problem by increasing a frequency of builds to rapidly detect any problems with documents recently checked into a document repository. However, this relatively high frequency of builds can impose large processing and/or cost burdens on an organization. By providing sophisticated methods of extracting validation information from existing builds, the disclosed embodiments reduce processing requirements and improved efficiency of enterprise build environments.

PERFORMANCE-BASED CODE ALTERATION FOR ANIMATION CONTROL RIGS
20220028151 · 2022-01-27 · ·

An animation system is provided for generating an animation control rig configured to manipulate a skeleton of an animated object. A partition separation process enables software changes to be inserted into uncompiled computer code associated with the animation control rig. Analysis of the uncompiled computer code is implemented relative to a performance metric. Based on the analysis in view of the performance matric, one or more partitions are determined in the uncompiled computer code to partition the code into separate code blocks. The uncompiled code is separated at the partition and updated with the software change. The updated code is compiled to generate the animation control rig.

Optimized recompilation using hardware tracing

A tracing controller may utilize a binary execution trace mechanism to trace execution of compiled application machine code. The tracing controller may initiate hardware tracing to gather control-flow hardware traces of a method executing on a processor configured to generate hardware tracing information. The controller may generate a profile based on the hardware tracing information and initiate re-compiling or re-optimizing of the method in response to determining that the new profile differs from the previous profile. The controller may repeatedly profile and re-optimize a method until profiles for the method stabilize. Profiling and hardware tracing of an application may be selectively enabled or disabled allowing the controller to respond to later phase changes in application execution by re-optimizing, thereby potentially improving overall application performance.