Home | Links | Contact Us | More About Intellectual Property | Bookmark
Search patents:
Home File Sharing Nested-parallel-language-preprocessor-for-converting-parallel-language-programs-into-sequential-code

 Personal authentication system and method thereof
This invention is directed to an accurate personal authentication system based on multiple-...


 Method and system for registering and retrieving data formats for objects using a persistent registry
It is an object of the present invention to provide a method and system for registering data ...


 Method and apparatus for value-based queuing of telephone calls
Accordingly, it is an object of this invention to provide a phone queuing system and method which ...


 Providing transaction undo without logging
To overcome the limitations in the prior art described above, and to overcome other limitations ...


 Database network connectivity product
The present invention overcomes the problems and disadvantages of the prior art by providing a "...


 Summary table management in a computer system
OF THE PREFERRED EMBODIMENTS In the following description, for purposes of explanation, numerous ...


 Decision analysis system and method
OF THE INVENTION A digital computer system using the method and apparatus described herein, ...


 Page open/close scheme based on high order address bit and likelihood of page access
When writing a computer program which accesses a page of memory a programmer may know whether the ...


 System for managing direct memory access transfer in a multi-channel system using circular descriptor queue, descriptor FIFO, and receive status queue
There is a need for a method and apparatus that provides an efficient management of data transfers ...


 Dynamic allocation for efficient management of variable sized data within a nonvolatile memory
In view of limitations of known systems and methods, a plurality of storage structures are provided ...


 Nested parallel language preprocessor for converting parallel language programs into sequential code

Details
Inventors: Hardwick, Jonathan C.;
Assignee: Microsoft Corporation (Redmond, WA)
Primary Examiner: Trammell; James P.
Assistant Examiner: Dam; Tuan Q.
Attorney, Agent or Firm: Klarquist Sparkman Campbell Leigh & Whinston, LLP

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 language and message passing calls are compiled and linked with run-time libraries supporting functions in the nested parallel language and the message passing interface. The nested parallel language includes both control parallel and data parallel operations. In addition, it provides a collection oriented data type for data parallel operations. By converting the nested parallel language to sequential code and the message passing interface, the preprocessor enables programs in the nested parallel language to be easily ported to variety of parallel computers.

DETAILED DESCRIPTION The invention comprises a parallel language preprocessor for a nested parallel language.
The preprocessor converts programs written in a nested parallel programming language to sequential programming code and calls to a message passing interface for inter-processor communication.
The parallel language supports nested parallel processing on parallel computers through control and data parallel operations.
The language also supports a collection oriented data type with elements that may be distributed among the processors for data parallel operations.
After the preprocessor has processed the parallel language code, a compiler and linker can be used to provide an executable form of the parallel code for a particular parallel machine.
In particular, the compiler compiles the sequential code into machine executable code.
The linker links the compiled code with run-time libraries supporting functions in the parallel language and the message passing interface.
An implementation of the preprocessor is specifically designed for a nested parallel language that is used to implement irregular divide-and-conquer programs.
The language is based on a nested parallel programming model called the team parallel model.
Significant features of the team parallel model include: 1) recursive subdivision of the processors of a parallel machine into asynchronous processor teams to match the runtime behavior of a recursive divide-and-conquer algorithm, where the number of processors in each team are selected based on computational cost of each recursive function call; 2) switching to efficient serial code (either user supplied or converted from the parallel code by the preprocessor) when the subdivision reaches a single processor; 3) a lazy collection oriented data type that supports data parallel operations within processor teams; and 4) dynamic load balancing of the processing workload among processors.
The preprocessor supports control parallelism by generating code for a split function in the nested parallel language



Related patents
  Efficient bundle sorting
Many data sets to be sorted consist of a limited number of distinct keys. Sorting such data sets can be thought of as bundling together identical keys and having the ...
  Apparatus for compressing audio data
It is an object of the present invention to provide an apparatus for compressing audio data which can suppress the undue increase of the processing time when the bit ...
  Fuzzy database retrieval
A method for querying metadata associated with media on a computer network includes separating the metadata into keywords. The keywords are compared with valid keywords. ...
  Rating and controlling access to emails
In view of the foregoing background, one object of the present invention is to enable parents or guardians to exercise some control over the web page content displayed ...
  Systems and methods for uniformly identifying e-mail attachments
The document creator applications, e-mail software, communication software, and mobile information device-resident browsers come from various suppliers. Existing methods ...
  Summarized application profiling and quick network profiling
The present invention pertains to profiling of application programs and computer networks. An automatic distributed partitioning system (ADPS) profiles an application ...
  Method for document comparison and selection
One characteristic of the LSI technique is that it does not take into account term order. Each document is considered as a collection of unordered terms. It is known, ...
  Method and system for using virtual labels in a software configuration management system
The present invention provides a solution to the needs described above through a system and method of using Virtual Labels in conjunction with an existing software ...
  Bidding for 800 telecommunications traffic
The herein disclosed invention stimulates competition between service providers to carry 800 Customers' traffic and facilitates the customer's ability to make economic ...
  Systems and methods for remote access to a display-based bulletin board in a shared user environment
The present invention uses a broadband-enabled internet connection to provide an always-on interface to a virtual family, group, or office bulletin board system. Family ...

0.004

Archive: All patents - Links

Copyright (c)2006 Eipa-patents.org - All rights reserved