×

Executing multiple threads in a processor

  • US 7,853,950 B2
  • Filed: 04/05/2007
  • Issued: 12/14/2010
  • Est. Priority Date: 04/05/2007
  • Status: Expired due to Fees
First Claim
Patent Images

1. An article of manufacture comprising a computer readable storage medium including code executed by a processor to access buffers and perform operations, the operations comprising:

  • setting credits in processor buffers for a plurality of threads executed by the processor, wherein the credits for a thread comprise a number of credits, wherein a thread having credits can be selected for execution and wherein a thread having no credits is not selected for execution;

    executing an operating system scheduler to configure the processor to execute the threads and set the thread credits;

    executing the operating system scheduler to allocate main memory addresses to the processor for the processor to use as virtual processor buffers to store status and the thread credits for designated threads, wherein the processor buffers for a first set of threads are maintained in the virtual processor buffers and the processor buffers for a second set of threads are maintained in the processor;

    determining threads whose status and credits are in the processor buffers to swap to virtual processor buffers and the status and credits of threads in the virtual processor buffer to swap to the processor buffers, wherein the threads to swap to the virtual processor buffers from the processor buffers have no credits or are in a paused state;

    alternating among executing the threads having available credits;

    decrementing the credits available for one of the threads to reduce the number of available credits for the thread in response to executing the thread;

    setting a replenish flag for a replenish thread to indicate that the replenish thread will not execute until all the other threads have no available credits; and

    initiating by the replenish thread an operation to reassign credits to the threads in response to the plurality of the threads other than the replenish thread having no available credits.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×