PMNS for Efficient Arithmetic and Small Memory Cost - Archive ouverte HAL Access content directly
Journal Articles IEEE Transactions on Emerging Topics in Computing Year : 2022

PMNS for Efficient Arithmetic and Small Memory Cost

Abstract

The Polynomial Modular Number System (PMNS) is an integer number system which aims to speed up arithmetic operations modulo a prime p. Such a system is defined by a tuple (p, n, γ, ρ, E), where p, n, γ and ρ are positive integers, E ∈ Z[X], with E(γ) ≡ 0 (mod p). In [15] conditions required to build efficient AMNS (PMNS with E(X) = X n − λ, where λ ∈ Z \ {0}) are provided. In this paper, we generalise their approach for any monic polynomial E ∈ Z[X] of degree n. We present new bounds and highlight a set of polynomials E for very efficient operations in the PMNS and low memory requirement. We also provide AMNS and PMNS modular multiplication implementations, for a prime of size 256 bits, in classic C. We also provide, for the same prime, the first implementation taking advantage of the SIMD AVX512 instruction set. The AVX512 PMNS is 72 % faster than its AMNS counterpart (classical C version). This version presents a more than 60 % speed-up in comparison with the state-of-the-art Montgomery-CIOS modular multiplication of the GMP library.
Fichier principal
Vignette du fichier
TETC3187786.pdf (426.54 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-03768546 , version 1 (04-09-2022)

Identifiers

Cite

Fangan Yssouf Dosso, Jean-Marc Robert, Pascal Veron. PMNS for Efficient Arithmetic and Small Memory Cost. IEEE Transactions on Emerging Topics in Computing, 2022, 10 (3), pp.1263 - 1277. ⟨10.1109/tetc.2022.3187786⟩. ⟨hal-03768546⟩
55 View
139 Download

Altmetric

Share

Gmail Facebook X LinkedIn More