Domain Bounding For Symmetric Multiprocessing Systems
Abstract
Methods and apparatuses for bounding the processing domain in a symmetric multiprocessing system are provided. In various implementations, a particular computational task is “affined” to a particular processing unit. Subsequently, when the particular task is executed, the symmetric multiprocessing operating system ensures that the affined processing unit processes the instruction. When the affined processing unit is not processing the particular computational task, the symmetric multiprocessing operating system may cause the processing unit to process alternate instructions. With some implementations, a particular computational task is “linked” to a particular processing unit. Subsequently, when the particular task is executed, the symmetric multiprocessing operating system ensures that the bound processing unit processes the instruction. When the bound processing unit is not processing the particular computational instruction, the bound processing unit may enter a low power or idle state.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer-implemented method for bounding the processing domain in a symmetric multiprocessing system, the method comprising:
identifying a symmetric multiprocessing system, the symmetric multiprocessing system including a plurality of processing units; identifying a plurality of tasks to be scheduled for execution by the symmetric multiprocessing system; forming a computationally bound task queue; moving selected ones of the plurality of tasks to be scheduled to the computationally bound task queue; and bounding the processing domain for the computationally bound task queue.
2 . The computer-implemented method recited in claim 1 , further comprising:
causing a symmetric multiprocessing operating system to boot onto a one of the plurality of processing units.
3 . The computer-implemented method recited in claim 2 , further comprising:
loading a symmetric multiprocessing operating system scheduler.
4 . The computer-implemented method recited in claim 3 , the method act for identifying a plurality of tasks to be scheduled for execution by the symmetric multiprocessing operating system comprising:
identifying a symmetric multiprocessing task queue within the symmetric multiprocessing operating system scheduler; identifying a plurality of tasks within the symmetric multiprocessing task queue; and designating the identified tasks as the plurality of tasks to be scheduled.
5 . The computer-implemented method recited in claim 4 , the method act of forming a computationally bound task queue comprising:
receiving an instruction from a user of the symmetric multiprocessing system to create a bound computational domain; and forming a task queue within the symmetric multiprocessing operating system scheduler to represent the computationally bound task queue.
6 . The computer-implemented method recited in claim 5 , the instruction including a listing of one or more of the plurality of tasks to be scheduled and the method act of moving selected ones of the plurality of tasks to be scheduled to the computationally bound task queue comprising:
adding the one or more of the plurality of tasks to be scheduled listed in the instruction to the computationally bound task queue; and removing the one or more of the plurality of tasks to be scheduled listed in the instruction from the symmetric multiprocessing task queue.
7 . The computer-implemented method recited in claim 6 , the instruction including a listing of one or more of the plurality processing units and the method act of bounding the processing domain for the computationally bound task queue comprising affining the computationally bound task queue to the one or more of the plurality of processing units listed in the instruction.
8 . The computer-implemented method recited in claim 6 , the instruction including a listing of one or more of the plurality processing units and the method act of bounding the processing domain for the computationally bound task queue comprising linking the computationally bound task queue to the one or more of the plurality of processing units listed in the instruction.
9 . The computer-implemented method recited in claim 1 , further comprising
forming a second computationally bound task queue; moving selected ones of the plurality of tasks to the second computationally bound task queue; and bounding the processing domain for the computationally bound task queue.
10 . The computer-implemented method recited in claim 1 , further comprising:
unbouding the computationally bound task queue; and removing the computationally bound task queue from the symmetric multiprocessing system.
11 . One or more tangible computer-readable media, having computer executable instructions for bounding the processing domain in a symmetric multiprocessing system stored thereon, the computer executable instructions comprising:
causing a computer to perform a set of operations; and wherein the set of operations include:
identifying a symmetric multiprocessing system, the symmetric multiprocessing system including a plurality of processing units;
identifying a plurality of tasks to be scheduled for execution by the symmetric multiprocessing system;
forming a computationally bound task queue;
moving selected ones of the plurality of tasks to be scheduled to the computationally bound task queue; and
bounding the processing domain for the computationally bound task queue.
12 . The one or more tangible computer-readable media recited in claim 11 , the symmetric multiprocessing system including a symmetric multiprocessing operating system scheduler and the operation for identifying a plurality of tasks to be scheduled for execution by the symmetric multiprocessing operating system comprising:
identifying a symmetric multiprocessing task queue; identifying a plurality of tasks within the symmetric multiprocessing task queue; and designating the identified tasks as the plurality of tasks to be scheduled.
13 . The one or more tangible computer-readable media recited in claim 12 , the operation for forming a computationally bound task queue comprising:
receiving an instruction from a user of the symmetric multiprocessing system to create a bound computational domain; and forming a task queue within the symmetric multiprocessing operating system scheduler to represent the computationally bound task queue.
14 . The one or more tangible computer-readable media recited in claim 13 , the instruction including a listing of one or more of the plurality of tasks to be scheduled and the operation for moving selected ones of the plurality of tasks to be scheduled to the computationally bound task queue comprising:
adding the one or more of the plurality of tasks to be scheduled listed in the instruction to the computationally bound task queue; and removing the one or more of the plurality of tasks to be scheduled listed in the instruction from the symmetric multiprocessing task queue.
15 . The one or more tangible computer-readable media recited in claim 14 , the instruction including a listing of one or more of the plurality processing units and the operation for bounding the processing domain for the computationally bound task queue comprising affining the computationally bound task queue to the one or more of the plurality of processing units listed in the instruction.
16 . The one or more tangible computer-readable media recited in claim 14 , the instruction including a listing of one or more of the plurality processing units and the operation for bounding the processing domain for the computationally bound task queue comprising linking the computationally bound task queue to the one or more of the plurality of processing units listed in the instruction.
17 . A symmetric multiprocessing system adapted to allowing bounded processing, the system comprising:
a plurality of processing units; a plurality of tasks to be scheduled for execution by the system; and a memory including a set of instructions that cause the system to perform:
forming a computationally bound task queue;
moving selected ones of the plurality of tasks to be scheduled to the computationally bound task queue; and
bounding the processing do
main for the computationally bound task queue.
18 . The symmetric multiprocessing system recited in claim 17 , wherein the set of instructions are included in an application programming interface.
19 . The symmetric multiprocessing system recited in claim 18 , the instruction for bounding the processing domain for a computationally bound task queue comprising:
receiving a listing of one or more of the plurality processing units receiving a boundary relationship affining the computationally bound task queue to the one or more of the plurality of processing units listed in the instruction.
20 . The symmetric multiprocessing system recited in claim 18 , the instruction for bounding the processing domain for a computationally bound task queue comprising:
receiving a listing of one or more of the plurality processing units receiving a boundary relationship linking the computationally bound task queue to the one or more of the plurality of processing units listed in the instruction.Join the waitlist — get patent alerts
Track US2013318531A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.