RUS  ENG
Full version
JOURNALS // Program Systems: Theory and Applications // Archive

Program Systems: Theory and Applications, 2021 Volume 12, Issue 2, Pages 137–192 (Mi ps385)

Mathematical Foundations of Programming

An overview of high-performance computing using the residue number system

K. S. Isupov

Vyatka State University

Abstract: A residue number system (RNS) is a non-positional number system, an alternative to a binary representation of numbers. In RNS, a large integer is represented as a set of smaller numbers, which are the remainders (“residues”) of dividing its original value by some moduli. An exciting feature of the RNS is that addition, subtraction, and multiplication with each residue are performed independently, which provides parallel, carry-free, and high-speed computer arithmetic. On the other hand, non-modular operations that require estimating the magnitude of a number by its residues are challenging to implement in RNS since there is no parallel form for them.
This paper provides an overview of research on the implementation and practical application of high-performance computational techniques for RNS. More specifically, the paper addresses the following two aspects: The research was aimed at the wider use of non-positional number systems in resource-intensive applications.

Key words and phrases: system of residual classes, non-modular operations, high performance computing, parallel algorithms.

UDC: 004.222+004.272
BBK: 32.971.32:32.971.321.1

MSC: Primary 68W10; Secondary 68W35, 68M07

Received: 02.04.2021
22.05.2021
Accepted: 28.06.2021

DOI: 10.25209/2079-3316-2021-12-2-137-192



© Steklov Math. Inst. of RAS, 2025