05261053 is referenced by 25 patents and cites 2 patents.

A computing system (50) includes N number of symmetrical computing engines having N number of cache memories joined by a system bus (12). The computing system includes a global run queue (54), an FPA global run queue, and N number of affinity run queues (58). Each engine is associated with one affinity run queue, which includes multiple slots. When a process first becomes runnable, it is typically attached one of the global run queues. A scheduler allocates engines to processes and schedules the processes to run on the basis of priority and engine availability. An engine typically stops running a process before it is complete. When the process becomes runnable again the scheduler estimates the remaining cache context for the process in the cache of the engine. The scheduler uses the estimated amount of cache context in deciding in which run queue a process is to be enqueued. The process is enqueued to the affinity run queue of the engine when the estimated cache context of the process is sufficiently high, and is enqueued onto the global run queue when the cache context is sufficiently low. The procedure increases computing system performance and reduces bus traffic because processes will run on engines having sufficient cache affinity, but will also run on the best available engine when there is insufficient cache context.

Title
Cache affinity scheduler
Application Number
747658
Publication Number
5261053
Application Date
November 30, 1992
Publication Date
November 9, 1993
Inventor
Andrew J Valencia
Portland
OR, US
Agent
Stoel Rives Boley Jones & Grey
Assignee
Sequent Computer Systems
OR, US
IPC
G06F 13/00
G06F 15/16
G06F 12/00
View Original Source