Browse Prior Art Database

MSIS Dynamic Determination of Instruction Repetition Rate and its Uses

IP.com Disclosure Number: IPCOM000103700D
Original Publication Date: 1993-Jan-01
Included in the Prior Art Database: 2005-Mar-18
Document File: 2 page(s) / 120K

Publishing Venue

IBM

Related People

Ekanadham, K: AUTHOR [+4]

Abstract

MSIS (Multisequencing a Single Instruction Stream) is a uniprocessor organization in which a set of processing elements (PEs) working in concert execute Segments of the instruction stream. The Segments are either P-Segments, normal uniprocessor instruction stream portions, that are processed in the E-MODE of MSIS and produce Z-Segments, or the Z-Segments that are processed in Z-MODE by MSIS. The main difference between E-MODE and Z-MODE is that during E-MODE each PE sees all instructions in the Segment and executes the ones that are assigned to it, but during Z-MODE, a PE only sees the instructions assigned to it.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

MSIS Dynamic Determination of Instruction Repetition Rate and its Uses

       MSIS (Multisequencing a Single Instruction Stream) is a
uniprocessor organization in which a set of processing elements (PEs)
working in concert execute Segments of the instruction stream.  The
Segments are either P-Segments, normal uniprocessor instruction
stream portions, that are processed in the E-MODE of MSIS and produce
Z-Segments, or the Z-Segments that are processed in Z-MODE by MSIS.
The main difference between E-MODE and Z-MODE is that during E-MODE
each PE sees all instructions in the Segment and executes the ones
that are assigned to it, but during Z-MODE, a PE only sees the
instructions assigned to it.

      As all PEs see all instructions in E-MODE, each PE can create
the Z-CODE it will require to re-execute the Segment as a Z-Segment,
the Z-CODE being stored in the Z-CACHE, and associated with
instructions in the Z-CODE are S-LISTS and D-LISTS as appropriate.
An S-LIST instructs the PE, in the Z-MODE, that one or more of the
source registers in an instruction assigned to it is set by another
instruction that is executed on another PE, an S-LIST is a receiving
obligation.  The D-LIST instructs the PE in the Z-MODE as to the
names of PEs that require the values of the register(s) that are
being set by an instruction that is assigned to it.  A D-LIST entry
is a sending obligation.

      The reuse of code is central to MSIS as MSIS is a two-pass
system in which Z-CODE is built from the execution sequence
encountered in E-MODE and reused subsequently.  A measure of the
reuse is the size of the cache which can retain the execution
sequences that were formed into Z-CODE and the total number of
instructions that  were executed in both Z-MODE and E-MODE.  The size
of the execution sequences can be measured by a mere directory
(CC-DIRECTORY) and the CC-DIRECTORY provides a means of dynamically
determining which execution subsequences will benefit differentially
from longer retention of their Z-CODE transformation in a system with
limited resources.

      To make the observation more concrete, consider a series of
execution sequences which total 1.3 M instructions and occupy a 4K
directory space of 128B lines.  That is a directory for a 512K cache.
Such a series of sequences represents 128K instructions
(approximately 4B to the instruction) and each instruction is
executed on the average 10 times, the ratio of 1.3M to 128K.  This
ratio is called the Instruction Repetition Rate (IRR).  Within the
series of execution sequences smaller subsequences may be determined
some of which have even higher IRR.

      The means of extracting these higher IRR subsequences and
determining their IRR from the overall sequences is to...