Abstract:
A method and apparatus for extending cache coherency to hold buffered data to support transactional execution is herein described. A transactional store operation referencing an address associated with a data item is performed in a buffered manner. Here, the coherency state associated with cache lines to hold the data item are transitioned to a buffered state. In response to local requests for the buffered data item, the data item is provided to ensure internal transactional sequential ordering. However, in response to external access requests, a miss response is provided to ensure the transactionally updated data item is not made globally visible until commit. Upon commit, the buffered lines are transitioned to a modified state to make the data item globally visible.
Abstract:
A method and apparatus for metaphysical address space for holding lossy metadata is herein described. An explicit or implicit metadata access operation referencing data address of a data item is encountered. Hardware modifies the data address to a metadata address including a metaphysical extension. The metaphysical extension overlays one or more metaphysical address space(s) on the data address space. A portion of the metadata address including the metaphysical extension is utilized to search a tag array of the cache memory holding the data item. As a result, metadata access operations only hit metadata entries of the cache based on the metadata address extension. However, as the metadata is held within the cache, the metadata potentially competes with data for space within the cache.
Abstract:
A method and apparatus for monitoring memory accesses in hardware to support transactional execution is herein described. Attributes are monitor accesses to data items without regard for detection at physical storage structure granularity, but rather ensuring monitoring at least at data items granularity. As an example, attributes are added to state bits of a cache to enable new cache coherency states. Upon a monitored memory access to a data item, which may be selectively determined, coherency states associated with the data item are updated to a monitored state. As a result, invalidating requests to the data item are detected through combination of the request type and the monitored coherency state of the data item.
Abstract:
In one embodiment, the present invention includes a method for identifying a termination sequence for an atomic memory operation executed by a first thread, associating a timer with the first thread, and preventing the first thread from execution of a memory cluster operation after completion of the atomic memory operation until a prevention window has passed. This method may be executed by regulation logic associated with a memory execution unit of a processor, in some embodiments. Other embodiments are described and claimed.
Abstract:
Hierin ausführlich besprochene Ausführungsformen betreffen Matrixoperationen (Kacheloperationen). Zum Beispiel, Decodierverschaltung, um eine Anweisung mit Feldern für einen Opcode und eine Arbeitsspeicheradresse zu decodieren, und Ausführungsverschaltung, um die decodierte Anweisung auszuführen, um Konfigurationsinformationen über die Nutzung von Speicher für zweidimensionale Datenstrukturen an der Arbeitsspeicherposition zu speichern.
Abstract:
Hier dargelegte Ausführungsformen betreffen Systeme und Verfahren zum Speichern eines Kachelregisterpaars in Speicher. In einem Beispiel umfasst ein Prozessor Decodierschaltkreise zum Decodieren einer Speichermatrixpaaranweisung mit Feldern für einen Opcode und Quellen- und Zielkennungen zum Identifizieren von Quellen- bzw. Zielmatrizen, wobei jede Matrix einen PAIR-Parameter gleich TRUE aufweist; und Ausführungsschaltkreise zum Ausführen der decodierten Speichermatrixpaaranweisungen zum Speichern jedes Elements linker und rechter Kacheln der identifizierten Quellenmatrix in entsprechenden Elementpositionen von linken bzw. rechten Kacheln der identifizierten Quellenmatrix, wobei das Ausführen ein Stück von C Elementen einer Zeile der identifizierten Zielmatrix auf einmal speichert.
Abstract:
Las realizaciones descritas se refieren a un procesador, un sistema en un chip y un sistema para ejecutar una instrucción de conversión de formato. En un ejemplo, un procesador que tiene una pluralidad de núcleos, incluido un núcleo que, en respuesta a una instrucción de conversión de formato que tiene un primer operando de origen que incluye un primer elemento de datos de punto flotante de precisión simple de 32 bits y un segundo operando de origen que incluye un segundo elemento de datos de punto flotante de precisión simple de 32 bits, debe: convertir el primer elemento de datos de punto flotante de precisión simple de 32 bits en un primer elemento de datos de punto flotante de 16 bits, en donde, cuando el primer elemento de datos de punto flotante de precisión simple de 32 bits es un elemento de datos normal, la conversión se debe realizar de acuerdo con un modo de redondeo especificado por la instrucción de conversión de formato, y el primer elemento de datos de punto flotante de 16 bits debe tener un bit de signo, un exponente de 8 bits, siete bits de mantisa explícitos y un bit de mantisa implícito, y en donde, cuando el primer elemento de datos de punto flotante de precisión simple de 32 bits es un elemento de datos que no es un número, NaN, el primer elemento de datos de punto flotante de 16 bits debe tener una mantisa con un máximo bit significativo establecido en uno; convertir el segundo elemento de datos de punto flotante de precisión simple de 32 bits en un segundo elemento de datos de punto flotante de 16 bits, donde, cuando el segundo elemento de datos de punto flotante de precisión simple de 32 bits es un elemento de datos normal, la conversión se debe realizar de acuerdo con el modo de redondeo, y el segundo elemento de datos de punto flotante de 16 bits debe tener un bit de signo, un exponente de 8 bits, siete bits de mantisa explícitos y un bit de mantisa implícito, y donde cuando el segundo elemento de datos de punto flotante de precisión simple de 32 bits es un elemento de datos NaN, el segundo elemento de datos de punto flotante de 16 bits debe tener una mantisa con un bit más significativo establecido en uno; y almacenar el primer elemento de datos de punto flotante de 16 bits en una mitad de orden inferior de un registro de destino y el segundo elemento de datos de punto flotante de 16 bits en una mitad de orden superior del registro de destino. (Traducción automática con Google Translate, sin valor legal)
Abstract:
Disclosed embodiments relate to a processor and a method for executing a format conversion instruction. In one example, a processor comprises a decode unit to decode the format conversion instruction and an execution unit to execute the decoded format conversion instruction. The format conversion instruction indicates a location of a first source operand, a location of a second source operand, a destination register, a writemask register, and a type of masking, the first source operand to include a first plurality of 32-bit single-precision floating point data elements, the second source operand to include a second plurality of 32-bit single-precision floating point data elements, the writemask register to store a plurality of mask bits each corresponding to a data element position in the destination register, the type of masking to be either zeroing masking or merging masking.