G06F2209/523

System and method for promoting reader groups for lock cohorting

NUMA-aware reader-writer locks may leverage lock cohorting techniques that introduce a synthetic level into the lock hierarchy (e.g., one whose nodes do not correspond to the system topology). The synthetic level may include a global reader lock and a global writer lock. A writer thread may acquire a node-level writer lock, then the global writer lock, and then the top-level lock, after which it may access a critical section protected by the lock. The writer may release the lock (if an upper bound on consecutive writers has been met), or may pass the lock to another writer (on the same node or a different node, according to a fairness policy). A reader may acquire the global reader lock (whether or not node-level reader locks are present), and then the top-level lock. However, readers may only hold these locks long enough to increment reader counts associated with them.

Methods and apparatus to manage cache memory in multi-cache environments

Methods, apparatus, systems and articles of manufacture are disclosed to manage cache memory in multi-cache environments. A disclosed apparatus includes a remote cache manager to identify a remote cache memory communicatively connected to a bus, a delegation manager to constrain the remote cache memory to share data with a host cache memory via the bus, and a lock manager to synchronize the host cache memory and the remote cache memory with a common lock state.

RESTORING DISTRIBUTED SHARED MEMORY DATA CONSISTENCY WITHIN A RECOVERY PROCESS FROM A CLUSTER NODE FAILURE

A DSM component is organized as a matrix of page. The data structure of a set of data structures occupies a column in the matrix of pages. A recovery file is maintained in a persistent storage. The recovery file consists of entries and each one of the entries corresponds to a column in the matrix of pages by a location of each one of the entries. The set of data structures is stored in the DSM component and in the persistent storage. Incorporated into each one of the plurality of entries in the recovery file is an indication if an associated column in the matrix of pages is assigned with the data structure of the set of data structures; and additionally incorporated into each one of the plurality of entries in the recovery file are identifying key properties of the data structure of the set of data structures.

Reader-writer lock

A method and system for implementing a reader-writer lock having a write lock requested by a thread is disclosed. The reader-writer lock is structured to have counters and a flag. The counters use an atomic process to count read locks held or outstanding read lock requests. The flag identifies a counter and is configured to distinguish between counters. A read lock is prepared, acquired, and released. The atomic process is used and the flag or flagged counter is polled. A write lock is prepared, acquired, and released.

Lock management system, lock management method and lock management program
09891962 · 2018-02-13 · ·

Provided is a lock management system, a lock management method and a lock management program whereby lock acquisition and release processes can be carried out at high speed. A lock management system 1 having a multiprocessor includes: a lock acquisition process 310 for carrying out a lock acquisition process for a thread according to one or more lock modes, at least a portion of the lock modes being a shared lock that can be acquired by one or more threads; and lock status holding means 410 for managing the number of threads acquiring a lock, by first information which can express the number of threads by one word that can be handled by an indivisible access command of the multi-processor, and second information representing a whole range of the number of threads that can possibly acquire a lock in each lock mode.

Restoring distributed shared memory data consistency within a recovery process from a cluster node failure

A DSM component is organized as a matrix of page. The data structure of a set of data structures occupies a column in the matrix of pages. A recovery file is maintained in a persistent storage. The recovery file consists of entries and each one of the entries corresponds to a column in the matrix of pages by a location of each one of the entries.

System and method for communication of software
09817654 · 2017-11-14 · ·

A vehicle includes at least one programmable computing device including a memory configured to store instructions that are executable by a processor. The vehicle also include a software loader configured to modify or replace the instructions based on a loadable software part. The vehicle includes a data interface and a loadable software part memory. The vehicle further includes a switch coupled to the data interface, to the loadable software part memory, and to software loader. While the switch is in a first position, a first data path between the data interface and the loadable software part memory is enabled and a second data path between the loadable software part memory and the software loader is disabled. While the switch is in a second position, the second data path is enabled and the first data path is disabled.

On demand locking of retained resources in a distributed shared disk cluster environment

Systems, methods, computer program product embodiments are provided for locking retained resources of database information in a distributed shared disk cluster environment. An embodiment includes providing a request on demand for physical access to a page by a task of a node among a cluster of nodes, managing selective bypassing of waiting access requests to the page at intranode and internode levels in response to the request on demand, and handling requests for page ownership to prioritize a request on demand. Further included are determining whether another node holds a lock on the page and identifying an access type for the waiting access requests in order to coordinate transfer of the lock to the node.

Systems and methods for controlling access to a shared data structure with reader-writer locks using multiple sub-locks

A computer system for controlling access to a shared data structure includes a shared memory coupled to first and second processing units that stores a multi-lock to control access to a shared data structure. The multi-lock includes a first sub-lock associated with the first processing unit and a second sub-lock associated with the second processing unit The system also includes a data access control engine to receive a request to read from the data structure from the first processing unit and, as a result, determine whether a privately modifiable copy the first sub-lock exists in a first cache dedicated to the first processing unit, acquire a read portion of the first sub-lock and not communicate the acquisition across a coherence bus if a privately modifiable copy of the first sub-lock exists in the first cache, and if a privately modifiable copy of the first sub-lock does not exist in the first cache, load the first sub-lock into the first cache if no copy is in the first cache, shootdown other copies of the first sub-lock, and acquire the read portion of the first sub-lock.

CPU of PLC, system program for PLC, and recording medium storing system program for PLC

The system program includes, as an execution control process of the control program, an owner-side start process that starts execution of an owner-side control program; a copy process in which, when execution of the owner-side control program ends, a global variable that is rewritten by the owner-side control program is copied from a global variable area to a synchronous buffer corresponding to the global variable; and a referrer-side start process that starts execution of a referrer-side control program.