This Article 
 Bibliographic References 
 Add to: 
Fast Addition of Large Integers
September 1992 (vol. 41 no. 9)
pp. 1069-1077

The basic computational model of a massively parallel processor is discussed, and three massively parallel algorithms using carry-lookahead techniques for binary addition of large integers are presented. It is shown how performance can be improved by exploiting the average case behavior of large n-bit additions and the asymmetry of the computation time of two particular operations. Even better performance is obtained by grouping multiple bits per processor. Performance measurements of all the algorithms are presented and discussed.

[1] J. Baer,Computer Systems Architecture, Potomac, MD: Computer Science Press, 1980.
[2] A. W. Burkset al., "Preliminary discussion of a logical computing instrument," Report to U. S. Army Ordinance Dep., 1946.
[3] B. Fagin, "Negacyclic convolution using polynomial transforms on hypercubes,"IEEE Trans. Signal Processing, vol. 40, no. 8, pp. 1845-1851, Aug. 1992.
[4] B. Fagin, "Multiplication of large integers on hypercubes,"J. Parallel Distributed Comput., Mar. 1990.
[5] B. Fagin, "Large integer multiplication on massively parallel processors,"Frontiers of Massively Parallel Computation, pp. 38-42, 1990.
[6] B. Fagin, "Fast addition of large integers," Tech. Rep., Thayer School of Eng., Dartmouth College, Hanover, NH 03755.
[7] R. Floyd, "The exact time required to perform generalized addition," inProc. Sixteenth Annu. Symp. Foundations Comput. Sci., 1975, pp. 3-5.
[8] W. D. Hillis and G. L. Steele, Jr., "Data parallel algorithms,"Commun. ACM, vol. 29, no. 12, pp. 1170-1183, Dec. 1986.
[9] K. Hwang,Computer Arithmetic: Principles, Architecture, and Design. New York: Wiley, 1979.
[10] Hyman, A. 1984.Charles Babbage: Pioneer of the Computer. Oxford: Oxford University Press.
[11] D. E. Knuth,The Art of Computer Programming, Vol. 2, Seminumerical Algorithms. Reading, MA: Addison-Wesley, 1981.
[12] R. E. Ladner and M. J. Fischer, "Parallel prefix computation,"J. ACM, vol. 27, no. 4, pp. 831-838, Oct. 1980.
[13] U. Ofman, "On the algorithmic complexity of discrete functions,"Dokl. Akad. Nauk USSR, vol. 145, no. 1, pp. 48-51, 1962 (in Russian).
[14] S. Peng and T. Hudson, "Parallel algorithms for multiplying very large integers," inProc. 18th Int. Conf. Parallel Processing, vol. 3, 1988, pp. 173-177.
[15] T. Rhyne, "Limitations on carry lookahead networks,"IEEE Trans. Comput., vol. C-33, no. 4, pp. 373-374, Apr. 1984.
[16] P. Spira, "The time required for group multiplication,"J. ACM, vol. 16, no. 2 pp. 235-243, Apr. 1969.
[17] Connection Machine Technical Summary, Thinking Machines Corp., Cambridge, MA, 1989.
[18] C/Paris 5.1 User's Manual, Thinking Machines Corporation, Cambridge, MA, 1989.
[19] J. Uspensky,Introduction to Mathematical Probability, New York: McGraw-Hill, 1937, pp. 77-84.
[20] S. Winograd, "On the time required for binary addition,"J. ACM, vol. 12, pp. 277-285, 1965.

Index Terms:
computation time asymmetry; large integers; computational model; massively parallel processor; massively parallel algorithms; carry-lookahead; binary addition; average case behavior; large n-bit additions; multiple bits; digital arithmetic; parallel algorithms.
B.S. Fagin, "Fast Addition of Large Integers," IEEE Transactions on Computers, vol. 41, no. 9, pp. 1069-1077, Sept. 1992, doi:10.1109/12.165389
Usage of this product signifies your acceptance of the Terms of Use.