×

Controlling and dynamically varying automatic parallelization

  • US 8,528,001 B2
  • Filed: 12/15/2008
  • Issued: 09/03/2013
  • Est. Priority Date: 12/15/2008
  • Status: Active Grant
First Claim
Patent Images

1. A non-transitory computer readable storage medium storing program instructions operable to automatically control run-time parallelization of a multi-threaded software application, wherein the program instructions are executable to:

  • analyze program instructions of the multi-threaded software application;

    identify a parallel region within program instructions of the multi-threaded software application;

    instrument the software application with instructions executable to;

    allocate a buffer in memory for communication between the software application and an operating system;

    pass a format and address of the buffer to the operating system, thereby enabling the operating system to read from and write to the buffer;

    store preferred resource requests from the software application in the buffer, wherein resources are used for executing the identified parallel region;

    read resource availability from the buffer, said resource availability having been stored in the buffer by the operating system, wherein the resource availability is associated with the preferred resource requests; and

    determine run-time resources for use in executing the parallel region based at least in part on the resource availability read from the buffer, wherein the instructions are executable to obtain the operating system provided resource availability from the buffer without a system call to the operating system.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×