Technical Architecture: Hardware Evaluation - CPU

The method generally used for hardware evaluation is to first compare the technical requirement to the general characteristics of the types of hardware available in order to determine which technology to use. Once the technology is selected, comparison of products available within a technology type is then performed.

Fundamental to this method is understanding the general characteristics of the types of hardware available. The following is a brief summary of the types of hardware technology commonly used and the characteristics of each type.

CPU One method for performing a CPU evaluation is to properly size the requirement and then to compare the price/performance of products within the appropriate class of machine. The following is a description of the characteristics of various classes of CPUs. There are no hard and fast rules for classifying CPUs as technology advances tend to blur the boundaries between the classes. This classification is based primarily on the system architecture of computers (i.e., the type and number of processors and their method of interconnection).

Super-Computers These machines are typified by a small number of extremely fast custom processors tuned for floating point arithmetic. These systems typically operate in the range of billions of floating point operations per second and have small single digit Nano-second speed cycle times. These systems are usually optimized for high speed vector and scalar processing.

As a result, these systems are usually high cost and typically found in research, weather modeling and scientific computing environments. Examples include: CRAY, Fujitsu, Hitachi, IBM and NEC.

Super-Hypercubes These are massively parallel machines which are based on a large number of processors in a hypercube architecture. These machines have the same market niche as the super-computers but differ in their internal architecture by having a large number of processors connected without using system buses.

Bus-based architectures can be made extremely powerful by using very high speed buses but are always limited to a certain number of processors by the bandwidth of the buses. Hypercubes avoid this limitation by eliminating buses. Each processor communicates directly with its neighbour(s) in the n-dimensional space in which it has been designed and built.

For example, a two-dimensional hypercube would have 4 processors, each at a corner of a simple square, and each processor would be able to communicate directly with two other processors. Super-hypercube machines are typified by having a large number of dimensions (e.g., 16).

One limitation is that, in higher dimensional architectures, if a processor needs to communicate with a processor which is not one of its neighbours, data must be routed via the intervening processors (which can slow processing rates).

Also, many algorithms do not yet have efficient parallel solutions which allow them to run well on massively parallel architectures.

Examples of super-hypercube machines are: Thinking Machine Corp's Connection Machine, Ncube, and Floating Point System's T-Series. Mini-Super-Computers Often referred to as "Crayettes", these machines are typically highly parallel bus based machines or smaller hypercubes. They are all multiprocessor based and can typically process several million floating point instructions per second. They differ from the super-computers architecturally by substituting a higher number of processors made from slower, lower-power components.

As a result, mini-super-computers typically cost an order of magnitude less than super-computers and are found in the same research, scientific, modeling, aerodynamic simulation, image analysis type environments.

An interesting category of mini-super-computers are those machines, such as array processors, designed to augment the vector processing capability of other machines. Typically these systems are connected to the system bus of a mini-computer and offload the mini's processing load. Example array processors are Floating Point Systems and Numerix. Mainframes

These systems are typified by single CPU systems (or less than 4 main processors) with exceptionally large memory and multiple high I/O subsystem bandwidths. These systems typically operate in the range of ten to hundred million instructions per second and have double digit nano-second speed cycle times.

Mainframes are designed to support large centralized systems having several hundred users and are common in financial application environments. Examples of mainframes include, IBM 30xx, Amdahl, Unisys 1100, CDC Cyber, and NAS.

Super-Mini-Computers Super-mini-computers are typified by high throughput multiple micro-processor systems using a single non-proprietary bus based configuration. They differ from mini-super-computers by having a smaller number of multi-processors. They also usually employ the same "commodity" processors and non-proprietary buses as super-micro-computers.

These systems are typically found in data management and traditional mini-computer environments.

An interesting category of super-mini-computer are machines having a smaller number of processors, each having a streamlined or reduced instruction set (RISC) architecture. Examples of these systems are Pyramid, Ridge, MIPS and HP 9000.

Mini-Computers Originally 16-bit CPUs, mini-computers are now typically 32 or 64-bit single CPU systems with processing speeds of 1 to 10 million instructions per second. They usually can support multiple data buses for I/O.

They are typically designed to support up to 100 concurrent user applications. Note that the higher end mini-computer models tend to offer the same performance as the super-mini-computer architectures but are usually more expensive.

Super-Micro-Computers Super-micro-computers are typified by fast single 32 or 64 bit micro-processor systems with a single data bus. Most are based on "commodity" CPUs manufactured by Motorola (MC680x0), Intel (iAP80x86), or National Semiconductor (NSxxOyy) and are built around non-proprietary buses such as VME or Multibus.

They are typically designed to support up to 32 concurrent user applications and most support the UNIX operating system.

Workstations These systems are typified by single user configurations and high CPU and graphic processing capacities (e.g., up to 50 million instructions per second, high resolution graphics displays). They typically run multi-tasking operating systems such as UNIX.

Workstation systems are usually found in networked environments connected to back-end super-mini, mini or super-micro-computers acting as file servers. Workstations are designed for environments in which users require a significant amount of standalone processing capability (e.g., to run econometric or financial models, CAD/CAM, etc.) along with shared access to data.

Micro-Computers These systems are typified by single user configurations, and small capacities (e.g., less than 20 million instructions per second, 4 GB memory, 400 GB disk, etc.). Micro-computers are usually found in personal computing environments and are often networked to other machines.

The largest category of micro-computers are the IBM PC compatibles which are built around an Intel microprocessor. Examples of other micro-computers are Acer, HP, Dell.

An interesting category of micro-computers are the portable machines. These typically weigh less than 7 Kg (15 lbs) and tend to have flat screen displays. Examples include: Toshiba, Grid, Zenith, IBM, and HP.

Disclaimer: Blog contents express the viewpoints of their independent authors and
are not reviewed for correctness or accuracy by
Toolbox for IT. Any opinions, comments, solutions or other commentary
expressed by blog authors are not endorsed or recommended by
Toolbox for IT
or any vendor. If you feel a blog entry is inappropriate,
click here to notify
Toolbox for IT.