Abstract:
PROBLEM TO BE SOLVED: To provide a method for efficiently check memory properties in a microprocessor system. SOLUTION: Attribute bits indicating that a program has recently checked that a block of memory is appropriate for the current portion of the program to access, indicating that the program has analyzed this block of memory by a performance monitoring tool, or having properties such as access right are included in a cache memory line, and correspond to only one software thread of the program having multisoftware threads. The attribute bits are used to check the memory state of an address used by the program. COPYRIGHT: (C)2007,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To provide a method, device and system for performing comparison and exchange operation by using one sleep-wakeup mechanism. SOLUTION: According to one embodiment, one instruction in one process is executed to help acquire a lock on behalf of the processor. When the lock is unavailable to be acquired by the processor, the instruction is put to sleep until one event occurs. While the instruction is put to sleep, the memory system of the processor monitors the change of the lock value. When the lock value is tired to be changed, or the value is changed, the wakeup of the instruction put to sleep is triggered. COPYRIGHT: (C)2009,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To improve bottlenecking of resources, waste of memory bandwidth, compute bandwidth, microarchitectural resources and power which are generated when waiting for lock of a share resource between processors (or threads) to become available. SOLUTION: A method, apparatus and system are provided for performing compare and exchange operations using a sleep-wakeup mechanism. According to one embodiment, an instruction at a processor is executed to help acquire a lock on behalf of the processor. If the lock is unavailable to be acquired by the processor, the instruction is put to sleep until an event has occurred. COPYRIGHT: (C)2006,JPO&NCIPI
Abstract:
A technique for using memory attributes to relay information to a program or other agent. More particularly, embodiments of the invention relate to using memory attribute bits to check various memory properties in an efficient manner.
Abstract:
A technique for using memory attributes to relay information to a program or other agent. More particularly, embodiments of the invention relate to using memory attribute bits to check various memory properties in an efficient manner.
Abstract:
In accordance with embodiments disclosed herein, there is provided systems and methods for tracking the mode of processing devices in an instruction tracing system. The method may include receiving an indication of a change in a current execution mode of the processing device. The method may also include determining that the current execution mode of the received indication is different than a value of an execution mode of a first execution mode (EM) packet previously-generated by the IT module. The method may also include generating, based on the determining that the current execution mode is different, a second EM packet that provides a value of the current execution mode of the processing device to indicate the change in the execution mode for an instruction in a trace generated by the IT module. The method may further include generating transactional memory (TMX) packets having n bit mode pattern in the packet log. The n is at least two and the n bit mode indicates transaction status of the TMX operation.
Abstract:
Maschinenlesbares Medium, auf dem ein Satz Befehle gespeichert ist, die, wenn sie von einer Maschine ausgeführt werden, die Maschine dazu veranlassen, ein Verfahren auszuführen, das aufweist: Lesen eines Attributbits (115), welches einer Cache-Speicherlinie (105) zugeordnet ist, wobei die Cache-Speicherlinie (105) nur einem Software-Thread in einem Multi-Thread-Programm zugeordnet ist, wobei das Attributbit (115) als ein Ergebnis des Ausführens eines Befehls geprüft wird, und wobei das Attributbit (115) durch Ausführen eines load_check Befehls gelesen wird und das Attributbit durch Ausführen eines load_set Befehls gesetzt wird; Bestimmen des Werts des Attributbits (115), wobei das Bestimmen des Werts des Attributbits (115) das Ausführen eines Architekturszenarios in einem Prozessor der Maschine aufweist, wobei das Szenario bestimmt, ob die Cache-Speicherlinie (115) sich in einem unerwarteten Zustand befindet; Ausführen eines leichtgewichtigen Yield-Ereignisses in Reaktion auf das Bestimmen des Werts des Attributbits (115).
Abstract:
A technique for using memory attributes to relay information to a program or other agent. More particularly, embodiments of the invention relate to using memory attribute bits to check various memory properties in an efficient manner.
Abstract:
A processor has instructions to check or set an attribute bit 125 associated with a cache line 105. The instruction may also load information from the cache line at the same time. If the cache line is in an unexpected state, a handler routine may be invoked by a light weight yield event. The cache line may have modified, exclusive, shared stale and invalid states. The instructions may be associated with a single thread in a program which includes multiple threads. The attribute bit may be user defined and there may be other bits 115 associated with the cache line. The cache line may be in a cache on the processor.
Abstract:
A memory block in a computer has attributes associated with it. The attributes may correspond to a single software thread. The memory may be associated with a cache line 105 in a cache 100 and the attributes may be stored as flags 115 in the cache. The attributes may indicate the thread to which the cache line corresponds. The processor may be able to check or set the attributes when loading the line from the cache. The processor may generate a light weight yield event or invoke a handler in response to the values of the attributes. The processor may have several cores and the cache may be in the processor. The attributes may indicate that the cache line has been marked for analysis by a tool such as a performance monitoring tool or a debugging tool. The attributes may be set by an instrumentation tool.