Abstraction of spin-locks to support high performance computing
First Claim
Patent Images
1. A method comprising:
- receiving a non-privileged disable interrupts instruction from a user application executing in user space, the non-privileged disable interrupts instruction having an operand with a non-zero value;
determining a value in a special purpose register associated with disabling interrupts; and
in response to determining that the value in the special purpose register associated with disabling interrupts is zero, disabling interrupts and placing the non-zero value of the operand in the special purpose register associated with disabling interrupts.
1 Assignment
0 Petitions
Accused Products
Abstract
A method comprises receiving a non-privileged disable interrupts instruction from a user application executing in user space, the non-privileged disable interrupts instruction having an operand with a non-zero value; determining a value in a special purpose register associated with disabling interrupts; and in response to determining that the value in the special purpose register associated with disabling interrupts is zero, disabling interrupts and placing the non-zero value of the operand in the special purpose register associated with disabling interrupts.
16 Citations
25 Claims
-
1. A method comprising:
-
receiving a non-privileged disable interrupts instruction from a user application executing in user space, the non-privileged disable interrupts instruction having an operand with a non-zero value; determining a value in a special purpose register associated with disabling interrupts; and in response to determining that the value in the special purpose register associated with disabling interrupts is zero, disabling interrupts and placing the non-zero value of the operand in the special purpose register associated with disabling interrupts. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
executing a non-privileged disable interrupts instruction in user space to disable interrupts, wherein the non-privileged disable interrupts instruction has a non-zero operand value; after executing the non-privileged disable interrupts instruction, executing a non-privileged spin-lock request in user space for a corresponding code segment; in response to obtaining the spin-lock, executing the corresponding code segment; in response to completing execution of the corresponding code segment, releasing the spin-lock; and after releasing the spin-lock, executing a non-privileged enable interrupts instruction in user space to enable interrupts. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A processor core comprising:
-
a control unit configured to receive and decode a non-privileged disable interrupts instruction having an operand value which represents an estimate of an amount of time to disable interrupts; and a plurality of registers, wherein one of the plurality of registers is a first special purpose register associated with the non-privileged disable interrupts instruction for storing the operand value from the non-privileged disable interrupts instruction. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A computer system comprising:
-
a memory configured to store a user application; one or more processors communicatively coupled to the memory and configured to execute the user application in user space, each of the one or more processors having one or more cores; wherein each of the one or more cores comprises; a control unit configured to receive and decode a respective non-privileged disable interrupts instruction of the user application, the respective non-privileged disable interrupts instruction having a respective operand value which represents a respective estimate of an amount of time to disable interrupts; and a plurality of registers, wherein one of the plurality of registers is a first special purpose register configured to store the operand value from the respective non-privileged disable interrupts instruction. - View Dependent Claims (19, 20, 21)
-
-
22. A computer program product comprising a computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed by a processor, causes the processor to:
-
execute a non-privileged disable interrupts instruction in user space to disable interrupts, wherein the non-privileged disable interrupts instruction has a non-zero operand value; execute a non-privileged spin-lock request in user space for a corresponding code segment after executing the non-privileged disable interrupts instruction; in response to obtaining the spin-lock, execute the corresponding code segment; in response to completing execution of the corresponding code segment, release the spin-lock; and after releasing the spin-lock, execute a non-privileged enable interrupts instruction in user space to enable interrupts. - View Dependent Claims (23, 24, 25)
-
Specification