z/TPF system parallel processing
The z/TPF system was originally designed on the assumption that programs execute on a single central processing unit (CPU), commonly called a uniprocessor. A synonym for CPU, used in the z/TPF system information, is instruction-stream engine or simply I-stream engine. An I-stream engine is just a CPU within a z/Architecture® configuration. Several instruction-stream engines can be combined into a single z/Architecture configuration and can work either together or independently.
There are two senses of parallel processing enabled by this architecture. One sense considers two or more z/Architecture configurations. In the z/TPF system, there is a facility for several z/Architecture configurations to operate as a single complex, called loosely coupled. The other sense considers a single z/Architecture configuration where multiple I-stream engines execute concurrently; this is called tightly coupled. Combining these two senses of parallel processing means that a z/Architecture configuration running the z/TPF system in 1, 2, or as many as 99 I-streams, tightly coupled, can be tied together with other tightly coupled z/Architecture configurations in a loosely coupled complex of up to 32 z/Architecture configurations to yield the processing power of all these combined I-stream engines. Figure 1 shows two z/Architecture configurations, each with four I-stream engines (CPUs).
Tightly coupled multiprocessing refers to the synchronization of accesses to shared main storage in a z/Architecture configuration of multiple I-stream engines. A z/Architecture configuration with only one I-stream engine is called a uniprocessor, and one with multiple I-stream engines a multiprocessor. Uniprocessor and multiprocessor are terms within the z/TPF system that are associated with tightly coupled multiprocessing.
Loosely coupled multiprocessing involves two or more z/Architecture configurations sharing a set of module (sometimes referred to as DASD) control units (CUs) along with an external lock facility (XLF) for synchronizing accesses to the module records by multiple z/Architecture configurations. XLF is logic in the module CU or a coupling facility (CF) called by any z/Architecture configuration attached to the module. This implies that all the participating z/Architecture configurations are channel attached to the same module CU or CF.