A Modular-Positional Computation Technique for Multiple-Precision Floating-Point Arithmetic

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9251)


Floating-point machine precision is often not sufficient to correctly solve large scientific and engineering problems. Moreover, computation time is a critical parameter here. Therefore, any research aimed at developing high-speed methods for multiple-precision arithmetic is of great immediate interest. This paper deals with a new technique of multiple-precision computations, based on the use of modular-positional floating-point format for representation of numbers. In this format, the significands are represented in residue number system (RNS), thus enabling high-speed processing of the significands with possible parallelization by RNS modules. Number exponents and signs are represented in the binary number system. The interval-positional characteristic method is used to increase the speed of executing complex non-modular operations in RNS. Algorithms for rounding off and aligning the exponents of numbers in modular-positional format are presented. The structure and features of a new multiple-precision library are given. Some results of an experimental study on the efficiency of this library are also presented.


Multiple-precision arithmetic Floating-point Residue number system Non-modular operation Rounding Performance 



The reported study was supported by RFBR, research project No. 14-07-31075 mol_a.


  1. 1.
    Collange, S., Defour, D., Graillat, S., Iakymchuk, R.: Reproducible and accurate matrix multiplication for high-performance computing. In: Nehmeier, M. (ed.) Book of Abstracts of the 16th GAMM-IMACS International Symposium on Scientific Computing, Computer Arithmetic and Validated Numerics (SCAN 2014), pp. 42–43. Würzburg, Germany (2014)Google Scholar
  2. 2.
    Bailey, D.H., Barrio, R., Borwein, J.M.: High-precision computation: mathematical physics and dynamics. Appl. Math. Comput. 218(20), 10106–10121 (2012)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Bailey, D.H., Borwein, J.M.: High-Precision Arithmetic: Progress and Challenges.
  4. 4.
    Ghazi, K.R., Lefèvre, V., Théveny, P., Zimmermann, P.: Why and how to use arbitrary precision. Comput. Sci. Eng. 12(3), 62–65 (2010)CrossRefGoogle Scholar
  5. 5.
    Rump, S.M.: Algorithms for verified inclusions - theory and practice. In: Moore, R.E. (ed.) Reliability in Computing, pp. 109–126. Academic Press, New York (1988)Google Scholar
  6. 6.
    IEEE Standard for Floating-Point Arithmetic, IEEE Std. 754–2008, pp. 1–58. IEEE Computer Society, New York (2008)Google Scholar
  7. 7.
    Muller, J.-M., Brisebarre, N., de Dinechin, F., Jeannerod, C.-P., Lefèvre, V., Melquiond, G., Revol, N., Stehlé, D., Torres, S.: Handbook of Floating-Point Arithmetic. Birkhäuser, Boston (2010)CrossRefzbMATHGoogle Scholar
  8. 8.
    Dekker, T.J.: A floating-point technique for extending the available precision. Numerische Mathematik 18(3), 224–242 (1971)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Bailey, D.H., Hida, Y., Li, X.S., Thompson, B.: ARPREC: An Arbitrary Precision Computation Package. Lawrence Berkeley National Laboratory, Technical report (2002).
  10. 10.
    The GNU Multiple Precision Arithmetic Library.
  11. 11.
    Fousse, L., Hanrot, G., Lefèvre, V., Pélissier, P., Zimmermann, P.: MPFR: A multiple-precision binary floating-point library with correct rounding. ACM Trans. Math. Softw. 33(2) (2007). Article No. 13Google Scholar
  12. 12.
    NTL: A Library for doing Number Theory.
  13. 13.
    Garner, H.L.: The residue number system. IRE Trans. Electron. Comput. 8(2), 140–147 (1959)CrossRefGoogle Scholar
  14. 14.
    Szabo, N.S., Tanaka, R.I.: Residue Arithmetic and its Application to Computer Technology. McGraw-Hill, New York (1967)Google Scholar
  15. 15.
    Omondi, A., Premkumar, B.: Residue Number Systems: Theory and Implementation. Imperial College Press, London (2007)Google Scholar
  16. 16.
    Parhami, B.: Computer Arithmetic: Algorithms and Hardware Designs. Oxford University Press, Oxford (2000)zbMATHGoogle Scholar
  17. 17.
    Cardarilli, G.C., Del Re, A., Nannarelli, A., Re, M.: Programmable power-of-two RNS scaler and its application to a QRNS polyphase filter. In: 2005 IEEE International Symposium on Circuits and Systems (ISCAS 2005), pp. 1002–1005. Kobe, Japan (2005)Google Scholar
  18. 18.
    Huang, C.H.: A fully parallel mixed-radix conversion algorithm for residue number applications. IEEE Trans. Comput. 32(4), 398–402 (1983)CrossRefGoogle Scholar
  19. 19.
    Gbolagade, K.A., Cotofana, S.D.: An \(O(n)\) residue number system to mixed radix conversion technique. In: IEEE International Symposium on Circuits and Systems (ISCAS 2009), pp. 521–524. IEEE Press, New York (2009)Google Scholar
  20. 20.
    Akkal, M., Siy, P.: A new mixed radix conversion algorithm MRC-II. J. Syst. Archit. 53, 577–586 (2007)CrossRefGoogle Scholar
  21. 21.
    Isupov, K.S.: The method for implementation non-modular operations in modular arithmetic with use of interval positional characteristics. University proceedings. Volga region. Eng. Sci. 3, 26–39 (2013)Google Scholar
  22. 22.
    Isupov, K.S.: Calculation interval-positional characteristic algorithm for implementation non-modular operations in residue number systems. Bulletin of the South Ural State University. Comput. Technol., Autom. Control, Radio Electron. 14(1), 89–97 (2014)Google Scholar
  23. 23.
    Isupov, K.S.: On an algorithm for number comparison in the residue number system. Vestnik of Astrakhan State Technical University. Manage., Comput. Sci. Inf. (3), 40–49 (2014)Google Scholar
  24. 24.
    Kulisch, U.: Implementation and Applications Computer Arithmetic and Validity - Theory, implementation, and applications. de Gruyter, Berlin (2008). zbMATHGoogle Scholar
  25. 25.
    Isupov, K.S., Maltsev, A.N.: A parallel-processing-oriented method for the representation of multi-digit floating-point numbers. Numer. Methods Program. 15(4), 631–643 (2014)Google Scholar
  26. 26.
    Sasaki, A.: The basis for implementation of additive operations in the residue number system. IEEE Trans. Comput. 17(11), 1066–1073 (1968)CrossRefzbMATHGoogle Scholar
  27. 27.
    Kinoshita, E., Kosako, H., Kojima, Y.: Floating-point arithmetic algorithms in the symmetric residue number system. IEEE Trans. Comput. 23(1), 9–20 (1974)MathSciNetCrossRefzbMATHGoogle Scholar
  28. 28.
    Kinoshita, E., Lee, K.-J.: A residue arithmetic extension for reliable scientific computation. IEEE Trans. Comput. 46(2), 129–138 (1997)MathSciNetCrossRefGoogle Scholar
  29. 29.
    Chiang, J.-S., Lu, M.: Floating-point numbers in residue number systems. Comput. Math. Appl. 22(5), 127–140 (1991)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Department of Electronic Computing MachinesVyatka State UniversityKirovRussia

Personalised recommendations