CPC G06F 16/9024 (2019.01) [G06F 11/3006 (2013.01); G06F 16/1774 (2019.01)] | 20 Claims |
1. A method, comprising:
performing, by one or more processors implementing a plurality of threads, an allocation of a first range comprising a plurality of elements of a shared resource, comprising:
identifying an insertion location for a descriptor for the first range in a sorted list of descriptors of currently allocated ranges of the shared resource; and
executing an atomic operation to insert the descriptor for the first range into the sorted list of descriptors of currently locked ranges to allocate the first range of elements of the shared resource, wherein the atomic operation comprises determining that no ranges overlapping the first range of elements have been added to the sorted list of descriptors;
wherein the allocation executes on a particular thread of the plurality of threads, and wherein the performing of the allocation operation does not exclude access to the sorted list of descriptors by other threads of the plurality of threads.
|