| 6237077 |
Instruction template for efficient processing clustered branch instructions |
| May-22-2001 |
A method for processing one or more branch instructions in an instruction bundle is provided. The instructions are ordered in an execution sequence within the bundle, with the branch instructions ordered... |
| 6223281 |
Method of controlling the degree of parallelism when performing parallel processing on an inherently serial computer program |
| Apr-24-2001 |
An inherently serial program is processed in parallel, thus leading to higher processing speeds, while maintaining a close approximation to the specific result obtained through a serial running of the... |
| 6219833 |
Method of using primary and secondary processors |
| Apr-17-2001 |
The compilation of source code to a primary and a secondary processor. The method relates to reconfigurable secondary processors, and is especially relevant to secondary processors which can be reconfigured... |
| 6216262 |
Distributed processing |
| Apr-10-2001 |
A pre-compiler program for operation with a conventional object oriented compiler program modifies the original source code to add new statements which adapt the source code for multiple processor operation. |
| 6192514 |
Multicomputer system |
| Feb-20-2001 |
A method is provided for responding to a computer system call requesting creation of such new process in a multicomputer system which includes multiple sites, each site including a local processor and... |
| 6163882 |
Language processing apparatus for converting source program into object program |
| Dec-19-2000 |
For converting a source program into an object program, the source program is analyzed to individually detect a plurality of functions, and the called relationship between the functions is detected. An... |
| 6163764 |
Emulation of an instruction set on an instruction set architecture transition |
| Dec-19-2000 |
A method and apparatus for emulating an instruction on a processor. The instruction operates on an operand in a first data format and the processor operates in a second data format. The operand is converted... |
| 6161170 |
Multiple processor, distributed memory computer with out-of-order processing |
| Dec-12-2000 |
A distributed memory computer architecture associates separate memory blocks with their own processors, each of which executes the same program. A processor fetching data or instructions from its local... |
| 6126331 |
Determining a communication schedule between processors |
| Oct-3-2000 |
To generate an optimum communication schedule when data is transmitted or received between processors which constitute a parallel computer or a distributed multiprocessor system. Processors which each... |
| 6106575 |
Nested parallel language preprocessor for converting parallel language programs into sequential code |
| Aug-22-2000 |
A preprocessor for a nested parallel language converts a program written in the nested parallel language to a sequential programming language and calls to a message passing interface. The sequential programming... |
| 6092097 |
Parallel processing system with efficient data prefetch and compilation scheme |
| Jul-18-2000 |
A parallel processing system capable of facilitating the data prefetch in the parallel computer and realizing a compilation scheme capable of removing the overhead caused by the control codes due to the... |
| 6088511 |
Nested parallel 2D Delaunay triangulation method |
| Jul-11-2000 |
A nested parallel implementation of 2D triangulation method recursively sub-divides processors of a parallel computer into asynchronous processor teams. Each of the teams uses data parallel operations... |
| 6029001 |
Method of compiling a computer program for performing parallel image processing |
| Feb-22-2000 |
A system for compiling a computer program to implement parallel image processing on a computer having a plurality of arithmetic processors. The program is analyzed to determine whether it contains a parallel... |
| 6021274 |
Automated data distribution system and method for massively parallel processes |
| Feb-1-2000 |
A system (80) for automating data distribution for parallel processor applications adapted for use with massively parallel processors. The system (80) includes high level instructions for obtaining user... |
| 6016396 |
Parallel code conversion processing method and parallel code conversion processing system |
| Jan-18-2000 |
When code information is sent from a companion computer system that uses a specific code scheme to a host computer system that uses a code scheme different from the specific code scheme, this code information... |
| 6016395 |
Programming a vector processor and parallel programming of an asymmetric dual multiprocessor comprised of a vector processor and a risc processor |
| Jan-18-2000 |
The present invention provides a new programming language which. is a superset of C++ optimized for writing vectorized dual-threaded programs on the MSP media processor. This invention discloses novel... |
| 6009262 |
Parallel computer system and method of communication between the processors of the parallel computer system |
| Dec-28-1999 |
A parallel computer system which divides the entire space of facilities into a plurality of small divisions; assigns a plurality of processors thereof to the divisions, respectively, the lower stream processors... |
| 6006278 |
Method and system for importing remote functions to a network computer |
| Dec-21-1999 |
A computer network (10) is provided that includes first and second computer systems (12 and 14). The first computer system (12) includes a software application (24) having a function call (26). The second... |
| 5999987 |
Concurrent processing in object oriented parallel and near parallel |
| Dec-7-1999 |
In sequential object oriented languages such as C++, a mechanism is provided to permit multiple asynchronous processing operations without compiler modifications, language extensions or special pre-processing.... |
| 5999734 |
Compiler-oriented apparatus for parallel compilation, simulation and execution of computer programs and hardware models |
| Dec-7-1999 |
A distributed, compiler-oriented database is disclosed with operating modes including parallel compilation, parallel simulation and parallel execution of computer programs and hardware models. The invention... |
| 5987255 |
Method of, system for, and article of manufacture for providing a generic adaptor for converting from a sequential iterator to a pre-thread parallel iterator |
| Nov-16-1999 |
A generic adaptor for converting from a sequential iterator to a parallel iterator is provided for the parallelization of sequential algorithms. The parallel algorithm implementation of a sequential algorithm... |
| 5978578 |
Openbus system for control automation networks |
| Nov-2-1999 |
A novel control automation system for enabling I/O boards to access communication networks for receiving and transmitting real time control information over a communication network is disclosed. The system... |
| 5946487 |
Object-oriented multi-media architecture |
| Aug-31-1999 |
An object-oriented, multi-media architecture provides for real-time processing of an incoming stream of pseudo-language byte codes compiled from an object-oriented source program. The architecture includes... |
| 5941983 |
Out-of-order execution using encoded dependencies between instructions in queues to determine stall values that control issurance of instructions from the queues |
| Aug-24-1999 |
A method for executing instructions out-of-order to improve performance of a processor includes compiling the instructions of a program into separate queues along with encoded dependencies between instructions... |
| 5926644 |
Instruction formats/instruction encoding |
| Jul-20-1999 |
Single-instruction multiple-data is a new class of integrated video signal processors especially suited for real-time processing of two-dimensional images. The single-instruction, multiple-data architecture... |
| 5913925 |
Method and system for constructing a program including out-of-order threads and processor and method for executing threads out-of-order |
| Jun-22-1999 |
A method and system for constructing a program are provided. According to the method, each of a plurality of instructions are assigned to at least one of a plurality of threads. The plurality of threads... |
| 5878267 |
Compressed instruction format for use in a VLIW processor and processor for processing such instructions |
| Mar-2-1999 |
Software creates a compressed instruction format for a VLIW processor which allows greater efficiency in use of cache and memory. Instructions are byte aligned and variable length. Branch targets are uncompressed.... |
| 5878254 |
Instruction branching method and a processor |
| Mar-2-1999 |
To improve the efficiency of instruction branch operations, particularly in a pipeline processor, a branch reservation instruction is generated during program compile. The system includes a processor having... |
| 5872990 |
Reordering of memory reference operations and conflict resolution via rollback in a multiprocessing environment |
| Feb-16-1999 |
Compile and/or run time instruction scheduling is used in a multiprocessing system to reorder memory access instructions such that a strongly consistent programming model is emulated in a fashion transparent... |
| 5860009 |
Programming method for concurrent programs and program supporting apparatus thereof |
| Jan-12-1999 |
An apparatus for supporting parallelization according to the invention is characterized by comprising a serialization unit for converting a first concurrent program having a concurrent structure into a... |
| 5852734 |
Method and compiler for parallel execution of a program |
| Dec-22-1998 |
To increase the speed of program execution by decomposing a loop onto a plurality of processors and executing them in parallel. First, a loop in a source program is located which is to be executed in parallel.... |
| 5845126 |
Method of, system for, and computer program product for providing inlined nested array constructors using normalized counters |
| Dec-1-1998 |
Method of, system for, and computer program product for generating efficient code for a set of nested Fortran 90 array constructors without introducing temporary vectors by the use of normalized counters... |
| 5832272 |
Apparatus and method for parallel computation |
| Nov-3-1998 |
Data processing apparatus for the execution of a sequential program, comprising at least one memory and a plurality of parallel processors all connected for mutual transfer of messages under the control... |
| 5822604 |
Method of optimizing recognition of collective data movement in a parallel distributed system |
| Oct-13-1998 |
To optimize collective data movement recognition in a parallel distributed system a data movement set is formed into a data structure where access regularity is efficiently used with respect to problems,... |
| 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... |
| 5812852 |
Software implemented method for thread-privatizing user-specified global storage objects in parallel computer programs via program transformation |
| Sep-22-1998 |
A software-implemented method for dynamically and statically privatizing global storage objects in parallel computer programs written in various programming languages. Privatization is accomplished via... |
| 5802374 |
Synchronizing parallel processors using barriers extending over specific multiple-instruction regions in each instruction stream |
| Sep-1-1998 |
A barrier is used to synchronize parallel processors. The barrier is "fuzzy", i.e. it includes several instructions in each instruction stream. None of the processors performing related tasks can execute... |
| 5799183 |
Method of processing data batch transfer among the memories in a computer system having a hierarchical memory structure |
| Aug-25-1998 |
A method for optimizing a program by performing a data batch transfer between a first and second memories when data is read from the second memory into the first memory and when the data is written from... |
| 5799142 |
Debugging method and debugging system for multi-task programs |
| Aug-25-1998 |
A multi-task program debugging system comprises program converting section 13, with a multi-task program being entered, for generating a multi-task converting program 15 for collating the contents of arrayed... |
| 5794050 |
Natural language understanding system |
| Aug-11-1998 |
The present invention interprets natural language input using common sense reasoning. The invention avoids the combinatorial explosion that has occurred in other natural language understanding systems.... |
| 5790845 |
System with reservation instruction execution to store branch target address for use upon reaching the branch point |
| Aug-4-1998 |
To improve the efficiency of instruction branch operations, particularly in a pipeline processor, a branch reservation instruction is generated during program compile. The system includes a processor having... |
| 5787287 |
Representation of control flow and data dependence for machine |
| Jul-28-1998 |
A method of representing data dependence and control flow between two instructions in computer-executable instructions. Each instruction is for reading or writing a variable. The sequence of instructions... |
| 5770894 |
Parallel processing method having arithmetical conditions code based instructions substituted for conventional branches |
| Jun-23-1998 |
A computer implemented method performed by a processor having multiple functional units avoids branches in decision support codes by doing arithmetic instructions incorporating condition codes generated... |
| 5768594 |
Methods and means for scheduling parallel processors |
| Jun-16-1998 |
Parallel processing is performed by determining sequential ordering of tasks for processing, assigning priorities to the tasks available on the basis of the sequential ordering, selecting a number of tasks... |
| 5757966 |
High-speed encoder |
| May-26-1998 |
An encoder for encoding four bits of uncompressed data in one clock cycle generates one code or in parallel a plurality of codes if the bits can be represented by a code or by a plurality of codes and... |
| 5752036 |
Apparatus for generating a program for parallel processing |
| May-12-1998 |
In a printer driver 11, a source code for an image processing procedure called out by an application program 12 is generated. A grain size detection process 48 counts the number of procedures which have... |
| 5745778 |
Apparatus and method for improved CPU affinity in a multiprocessor system |
| Apr-28-1998 |
Closely related processing threads within a process in a multiprocessor system are collected into thread groups which are globally scheduled as a group based on the thread group structure's priority and... |
| 5742823 |
Total object processing system and method with assembly line features and certification of results |
| Apr-21-1998 |
In accordance with the invention, a processing system and method are provided which use assembly line procedures and substantially fixed or limited function process elements, as well as total object treatment... |
| 5737623 |
Multi-processor parallel computer architecture using a parallel machine with topology-based mappings of composite grid applications |
| Apr-7-1998 |
A parallelization process for complex-topology applications is based on an understanding of topology and includes two separate parts: i) an automatic, topology-based data distribution method and ii) a... |
| 5721928 |
Method for partitioning computation |
| Feb-24-1998 |
A computation partitioning method is arranged to automatically convert a sequential source program for a single processor into a partitioned computation for a distributed memory machines containing plural... |