50 & 25 Years Ago

Erich Neuhold
2022 Computer  
Computer Architecture; Guest Editor Caxton C. Foster (p. 19) "Perhaps, most important, a computer architect should be aware of the problems of software development and the potentialities of hardware developments and be prepared to generate creative solutions on the one hand and creative suggestions for future research on the other. ... The astute reader will notice that several important areas are not discussed in any of the three papers. No mention is made of error detection and correction
more » ... uitry. Almost no attention is paid to the serious problem of peripheral design. It is not that these areas are unimportant, it is that none of the authors happen to be expert in them." [Editor's note: It is interesting to note that none of the contributions discuss issues like reliability, safety, security, and the interplay of hard-and software to ensure those properties. Unfortunately, this disregard continues today and allows all kinds of intrusions into our systems, and through those even into our lives.] Shared Resource Multiprocessing; Michael J. Flynn et al. (p. 20) "A proposed unconventional computer architecture using state of the art technology realizes 32 skeleton processors sharing pipelined resources with maximum performance of 500 million instructions per second." (p. 23) "Notice that while we speak only of sharing execution resources, the entire facilities of the system may be sharedthese include index adders (perhaps one or two per ring of processors). Any item, except the storage of parameters associated with the task at hand, can be shared either in time or in space or both." (p. 26) "Within any efficient implementation of a parallel processor there must be methods for identification and allocation of programs which can be performed simultaneously. [Editor's note: This detailed discussion of the mechanism used to share resources (i.e. adders, multipliers, and so on) is in itself quite remarkable. However, the article lacks any examination of how programs are analyzed to determine parallelizable sections, resource requirements, and so forth. This problem was around then and still is today in many science applications.]
doi:10.1109/mc.2021.3137978 fatcat:fjpukg6ihfaylfwaojxxcvpiqi