U.S. patents available from 1976 to present.
U.S. patent applications available from 2005 to present.

Deterministic replay of multithreaded applications

Patent 6101524 Issued on August 8, 2000. Estimated Expiration Date: Icon_subject October 23, 2017. Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.

Patent References

System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
Patent #: 5179702
Issued on: 01/12/1993
Inventor: Spix, et al.

Preemptive and non-preemptive scheduling and execution of program threads in a multitasking operating system
Patent #: 5247675
Issued on: 09/21/1993
Inventor: Farrell, et al.

Dual level scheduling of processes to multiple parallel regions of a multi-threaded program on a tightly coupled multiprocessor computer system
Patent #: 5339415
Issued on: 08/16/1994
Inventor: Strout, II, et al.

Method and apparatus for creating multithreaded time slices in a multitasking operating system
Patent #: 5490272
Issued on: 02/06/1996
Inventor: Mathis, et al.

Method and system for scheduling the execution of threads using optional time-specific scheduling constraints
Patent #: 5812844
Issued on: 09/22/1998
Inventor: Jones, et al.

Program execution and operation right management system suitable for single virtual memory scheme
Patent #: 5892944
Issued on: 04/06/1999
Inventor: Fukumoto, et al.

Method and system for constructing a program including out-of-order threads and processor and method for executing threads out-of-order
Patent #: 5913925
Issued on: 06/22/1999
Inventor: Kahle, et al.

Locking of computer resources
Patent #: 5968157
Issued on: 10/19/1999
Inventor: Joy, et al.

Method and system for providing an event system infrastructure
Patent #: 5999986
Issued on: 12/07/1999
Inventor: McCauley III, et al.

Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system Patent #: 6006247
Issued on: 12/21/1999
Inventor: Browning, et al.

Inventors

Application

No. 956717 filed on 10/23/1997

US Classes:

718/102, Process scheduling710/6, Operation scheduling710/264, Interrupt prioritizing717/127Monitoring program execution

Examiners

Primary: Teska, Kevin J.
Assistant: Booker, Kelvin

Attorney, Agent or Firm

International Classes

G06F 009/00
G06F 009/45

Abstract

A multithreaded program includes sequences of events wherein each sequence is associated with one of a plurality of execution threads. In a record mode, the software tool of the present invention records a run-time representation of the program by distinguishing critical events from non-critical events of the program and identifying the execution order of such critical events. Groups of critical events are generated wherein, for each group Gi, critical events belonging to the group Gi belong to a common execution thread, critical events belonging to the group Gi are consecutive, and only non-critical events occur between any two consecutive critical events in the group Gi. In addition, the groups are ordered and no two adjacent groups include critical events that belong to a common execution thread. For each execution thread, a logical thread schedule is generated that identifies a sequence of said groups associated with the execution thread. The logical thread schedules are stored in persistent storage for subsequent reuse. In a replay mode, for each execution thread, the logical thread schedule associated with the execution thread is loaded from persistent storage and the critical events identified by the logical thread schedule are executed.

Other References

  • Tullsen et al.; "Simultaneous Multithreading: Maximizing On-Chip Parallelism". ACM Digital Library[online], May 1995 International Conference on Computer Architecture, pp. 392-403
  • Nikhil et al.; "*T: A Multithreaded Massively Parallel Architecture". ACM Digital Library[online], International Conference on Computer Architecture, pp. 156-167, May 1992
  • Hirata et al.; "An Elementary Processor Architecture with Simultaneous Instruction Issuing from Multiple Threads". ACM Digital Library[online], International Conference on Computer Architecture, pp. 136-145, May 1992
  • Fiske et al.; "Thread Prioritization: A Thread Scheduling Mechanism for Multiple-Context Parallel Processors". Future Generation Computer Systems, vol. 11, No. 6, pp. 503-518, Jan. 1995
  • Kodama et al.; "Message-Based Efficient Remote Memory Access on a Highly Parallel Computer EM-X". IEICE Transactions on Information and Systems, vol. E79-D, No. 8, Aug. 1996
  • Runyon, S.; "Test Software Goes Visual to Conserve Time". Electronic Engineering Times, Issn. 0192-1541, Dec. 1996
  • Fogelin, J.; "Graphical Interfaces Speed Debugs". Electronic Engineering Times, pp. 50, Issn. 0192-1541, Jul. 1994
  • Karatza, H.D.; "Multitasking and Resequencing in a Two-Stage Multiprocessing System". ACM Digital Library[online], Proceedings of the 1996 Winter Simulation Conference, Feb. 1996
  • Koenemann-Belliveau et al.; "Comparative Usability Evaluation: Critical Incidents and Critical Threads", ACM Digital Library[online], Proceedings from the Conference on Human Factors in Computing Systems, Apr. 1994
  • Karimi et al.; "A Partitioning Technique for Concurrent Software Design", IEEE/IEE electronic Library[online], Journal of Systems and Software, vol. 33, Iss. 1, pp. 15-35, Apr. 1996
  • Gosling et al.; "The Java Language Specification". Reading, MA: Addison-Wesley. Chapter 17, Sep. 1996
  • Cook et al.; "Designing Object-Oriented Systems: Object-Oriented Modeling with Syntropy". New York, NY: Prentice Hall, Chapter 9., Sep. 199
PatentsPlus Images
Enhanced PDF formats
loading...
PatentsPlus: add to cart
PatentsPlus: add to cartSearch-enhanced full patent PDF image
$9.95more info
PatentsPlus: add to cart
PatentsPlus: add to cartIntelligent turbocharged patent PDFs with marked up images
$18.95more info
 
Sign InRegister
Username  
Password   
forgot password?