Speeding up decimal multiplication

AI-generated keywords: Decimal multiplication Number-theoretic transform Efficiency gains Prime modulus selection Computational efficiency

AI-generated Key Points

  • Viktor Krapivensky explores decimal multiplication in base $10^N using number-theoretic transform (NTT) algorithms
  • Achieves 3x to 5x speedup compared to the mpdecimal library through portable techniques
  • Introduces a cache-efficient algorithm for in-place $2n \times n$ or $n \times 2n$ matrix transposition, crucial for scenarios like the "six-step algorithm"
  • Discusses decision-making process for choosing prime moduli based on factors like machine word length (w), maximum multiplicand length (M), and desired simplicity in modulo addition operations
  • Calculation of λ(ℓ) helps determine if additional prime moduli are necessary based on specific parameters like µ and M
  • Analysis of how λ(ℓ)/ℓ impacts computational efficiency by utilizing multiple transforms with different prime moduli
  • Detailed calculations showcase how different configurations affect performance and digit handling during decimal multiplication
Also access our AI generated: Comprehensive summary, Lay summary, Blog-like article; or ask questions about this paper to our AI assistant.

Authors: Viktor Krapivensky

License: CC BY 4.0

Abstract: Decimal multiplication is the task of multiplying two numbers in base $10^N.$ Specifically, we focus on the number-theoretic transform (NTT) family of algorithms. Using only portable techniques, we achieve a 3x---5x speedup over the mpdecimal library. In this paper we describe our implementation and discuss further possible optimizations. We also present a simple cache-efficient algorithm for in-place $2n \times n$ or $n \times 2n$ matrix transposition, the need for which arises in the ``six-step algorithm'' variation of the matrix Fourier algorithm, and which does not seem to be widely known. Another finding is that use of two prime moduli instead of three makes sense even considering the worst case of increasing the size of the input, and makes for simpler answer recovery.

Submitted to arXiv on 23 Nov. 2020

Ask questions about this paper to our AI assistant

You can also chat with multiple papers at once here.

AI assistant instructions?

Results of the summarizing process for the arXiv paper: 2011.11524v1

In the paper "Speeding up decimal multiplication," Viktor Krapivensky explores the task of multiplying two numbers in base $10^N$ through the use of number-theoretic transform (NTT) algorithms. By employing portable techniques, the author achieves a significant 3x to 5x speedup compared to the mpdecimal library. The implementation details and potential optimizations are discussed in depth, shedding light on the efficiency gains achieved. One notable contribution of the paper is the introduction of a cache-efficient algorithm for in-place $2n \times n$ or $n \times 2n$ matrix transposition. This algorithm proves crucial in scenarios like the "six-step algorithm" variation of the matrix Fourier algorithm, filling a gap in existing knowledge within this domain. Furthermore, Krapivensky delves into the decision-making process behind choosing prime moduli for decimal multiplication. By considering factors such as machine word length (w), maximum multiplicand length (M), and desired simplicity in modulo addition operations, the author provides insights into selecting an optimal number of primes (ℓ). The calculation of λ(ℓ) helps determine if additional prime moduli are necessary based on specific parameters like µ and M. The analysis also touches upon how λ(ℓ)/ℓ impacts computational efficiency, offering a glimpse into the potential speedup factor achieved by utilizing multiple transforms with different prime moduli. Through detailed calculations for various values of µ and M, Krapivensky showcases how different configurations affect performance and digit handling during decimal multiplication. Overall, "Speeding up decimal multiplication" not only presents novel approaches to enhancing computational efficiency but also offers valuable insights into prime modulus selection strategies and their impact on overall performance in decimal multiplication algorithms.
Created on 10 May. 2026

Assess the quality of the AI-generated content by voting

Score: 0

Why do we need votes?

Votes are used to determine whether we need to re-run our summarizing tools. If the count reaches -10, our tools can be restarted.

Similar papers summarized with our AI tools

Navigate through even more similar papers through a

tree representation

Look for similar papers (in beta version)

By clicking on the button above, our algorithm will scan all papers in our database to find the closest based on the contents of the full papers and not just on metadata. Please note that it only works for papers that we have generated summaries for and you can rerun it from time to time to get a more accurate result while our database grows.

Disclaimer: The AI-based summarization tool and virtual assistant provided on this website may not always provide accurate and complete summaries or responses. We encourage you to carefully review and evaluate the generated content to ensure its quality and relevance to your needs.