12
 

Including scheduling instructions

CL 717 SC 161
6260190 Unified compiler framework for control and data speculation with recovery code
Jul-10-2001 A method and system for scheduling computer instructions for execution as part of a compilation process in which an original computer program that defines a set of operations is compiled to produce an...
6230317 Method and apparatus for software pipelining of nested loops
May-8-2001 A method for executing software pipelined executable code generated by compiling a set of unexecutable instructions having an inner loop and an outer loop is disclosed. Instructions are executed that perform...
6192515 Method for software pipelining nested loops
Feb-20-2001 A method for software pipelining nested loops combines the inner and outer loops of the nested loop to form a merged loop. One or more operations from the outer loop are activated on selected passes through...
6044222 System, method, and program product for loop instruction scheduling hardware lookahead
Mar-28-2000 Improved scheduling of instructions within a loop for execution by a computer system having hardware lookahead is provided. A dependence graph is constructed which contains all the nodes of a dependence...
6038396 Compiling apparatus and method for a VLIW system computer and a recording medium for storing compile execution programs
Mar-14-2000 A compiling apparatus and method, and a recording medium, are used to facilitate assembly code programming of a VLIW computer system. An instruction of an intermediate code format, designated for each...
6026240 Method and apparatus for optimizing program loops containing omega-invariant statements
Feb-15-2000 Apparatus, methods, and computer program products are disclosed for optimizing programs containing single basic block natural loops with a determinable number of iterations. The invention optimizes, for...
5950007 Method for compiling loops containing prefetch instructions that replaces one or more actual prefetches with one virtual prefetch prior to loop scheduling and unrolling
Sep-7-1999 Prefetch instructions having a function to move data to a cache memory from main memory are scheduled simultaneously with execution of other instructions. The prefetch instructions are scheduled by replacing,...
5930510 Method and apparatus for an improved code optimizer for pipelined computers
Jul-27-1999 Apparatus, methods, systems and computer program products are disclosed to provide improved optimizations of single-basic-block-loops. These optimizations include improved scheduling of blocking instructions...
5920724 Software pipelining a hyperblock loop
Jul-6-1999 An iterative software pipelining method promotes instructions of a program loop to previous loop iterations and then reschedules the instructions until either 1) the resultant schedule is optimal (i.e.,...
5901318 Method and system for optimizing code
May-4-1999 An optimizing compiler for optimizing code in a computer system having a CPU and a memory. The code has a loop wherein the loop includes statements conditionally executed depending on the evaluation of...
5894576 Method and apparatus for instruction scheduling to reduce negative effects of compensation code
Apr-13-1999 A method is described for scheduling an instruction of a computer program. The instruction is scheduled into an active block of the computer program if no compensation copy is necessary, or if any necessary...
5887174 System, method, and program product for instruction scheduling in the presence of hardware lookahead accomplished by the rescheduling of idle slots
Mar-23-1999 Instructions are scheduled for execution by a processor having a lookahead buffer by identifying an idle slot in a first instruction schedule of a first basic block of instructions, and by rescheduling...
5867711 Method and apparatus for time-reversed instruction scheduling with modulo constraints in an optimizing compiler
Feb-2-1999 Apparatus and methods are disclosed for performing time-reversed scheduling of a data dependency graph representing a target program instruction loop in an optimizing compiler. The instruction scheduling...
5854934 Optimizing compiler having data cache prefetch spreading
Dec-29-1998 A method of scheduling prefetch instructions in a compiler is described that improves performance by minimizing the performance degradation due to dirty cache misses. The method determines the length N...
5850551 Compiler and processor for processing loops at high speed
Dec-15-1998 A compiler comprises a loop detecting unit for extracting information of loops, and a high-speed loop applying unit generating a first loop exclusive instruction, placing the instruction immediately before...
5835776 Method and apparatus for instruction scheduling in an optimizing compiler for minimizing overhead instructions
Nov-10-1998 Apparatus and methods are disclosed for scheduling target program instructions during the code optimization pass of an optimizing compiler. Most modern microprocessors have the ability to issue multiple...
5822593 High-level loop fusion
Oct-13-1998 A processor is provided with a software program specifying an overall computation that includes operations. Each operation implies a set of subcomputations, without explicitly specifying a control structure...
5819088 Method and apparatus for scheduling instructions for execution on a multi-issue architecture computer
Oct-6-1998 Improved parallelism in the generated schedules of basic blocks of a program being compiled is advantageously achieved by providing an improved scheduler to the code generator of a compiler targeting a...
5809308 Method and apparatus for efficient determination of an RMII vector for modulo scheduled loops in an optimizing compiler
Sep-15-1998 Apparatus and methods are disclosed for determining a recurrence minimum iteration interval (rmii) vector for use in modulo scheduling target program instructions during the code optimization pass of an...
5794029 Architectural support for execution control of prologue and eplogue periods of loops in a VLIW processor
Aug-11-1998 For certain classes of software pipelined loops, prologue and epilogue control is provided by loop control structures, rather than by predicated execution features of a VLIW architecture. For loops compatible...
5704053 Efficient explicit data prefetching analysis and code generation in a low-level optimizer for inserting prefetch instructions into loops of applications
Dec-30-1997 A compiler that facilitates efficient insertion of explicit data prefetch instructions into loop structures within applications uses simple address expression analysis to determine data prefetching requirements....
5606698 Method for deriving optimal code schedule sequences from synchronous dataflow graphs
Feb-25-1997 A method is disclosed for deriving code schedule sequences for a target code generator from an input ordering of nodes and prime factors of their respective ordered invocation rates from an SDF graph representative...
5522074 Vectorization system for vectorizing loop containing condition induction variables
May-28-1996 A vectorization system is constituted with a conditional induction variable detector portion, a conditional induction variable reference state analyzing portion and a conditional induction variable iteration...
5491823 Loop scheduler
Feb-13-1996 A loop scheduler in a software compiler system for generating a schedule for executing in a target computer loops of instructions contained in a computer program is described. The loop scheduler operates...
5317734 Method of synchronizing parallel processors employing channels and compiling method minimizing cross-processor data dependencies
May-31-1994 A method of synchronizing the parallel processors of a multiple instruction stream multiprocessor employs a limited number of register channels, which may be re-used, for enforcing cross-stream data or...
5230053 Processor scheduling method for iterative loops
Jul-20-1993 A compiling method is described whereby a source program written in a conventional high-language for execution by a serial architecture computer can be automatically converted to an object program for...