*** Welcome to piglix ***

IBM 7950 Harvest


The IBM 7950, also known as Harvest, was a one-of-a-kind adjunct to the Stretch computer which was installed at the United States National Security Agency (NSA). Built by IBM, it was delivered in 1962 and operated until 1976, when it was decommissioned. Harvest was designed to be used for cryptanalysis.

In April 1958, the final design for the NSA-customized version of IBM's Stretch computer had been approved, and the machine was installed in February 1962. The design engineer was James H. Pomerene, and it was built by IBM in Poughkeepsie, New York. Its electronics (fabricated of the same kind of discrete transistors used for Stretch) were physically about twice as big as the Stretch to which it was attached. Harvest added a small number of instructions to Stretch, and could not operate independently.

An NSA-conducted evaluation found that Harvest was more powerful than the best commercially available machine by a factor of 50 to 200, depending on the task.

The equipment added to the Stretch computer consisted of the following special peripherals:

With the stream processing unit, Harvest was able to process 3 million characters a second.

The TRACTOR tape system, part of the HARVEST system, was unique for its time. It included six tape drives, which handled 1.75-inch-wide (44 mm) tape in cartridges, along with a library mechanism that could fetch a cartridge from a library, mount it on a drive, and return it to the library. The transfer rates and library mechanism were balanced in performance such that the system could read two streams of data from tape, and write a third, for the entire capacity of the library, without any time wasted for tape handling.

Harvest's most important mode of operation was called "setup" mode, in which the processor was configured with several hundred bits of information and the processor then operated by streaming data from memory — possibly taking two streams from memory — and writing a separate stream back to memory. The two byte streams could be combined, used to find data in tables, or counted to determine the frequency of various values. A value could be anything from 1 to 16 contiguous bits, without regard to alignment, and the streams could be as simple as data laid out in memory, or data read repeatedly, under the control of multiply-nested "do"-loop descriptors, which were interpreted by the hardware.


...
Wikipedia

...