5 research outputs found

    Parallel Implementation of the Accelerated Integer GCD Algorithm

    Get PDF
    AbstractThe accelerated integer greatest common divisor (GCD) algorithm has been shown to be one of the most efficient in practice. This paper describes a parallel implementation of the accelerated algorithm for the Sequent Balance, a shared-memory multiprocessor. For input of roughly 10 000 digits, it displays speed-ups of 1.6, 2.5, 3.4 and 4.0 using 2, 4, 8 and 16 processors, respectively

    Improvements on the accelerated integer GCD algorithm

    No full text
    6 pagesInternational audienceThe present paper analyses and presents several improvements to the algorithm for finding the (a,b)(a,b)-pairs of integers used in the kk-ary reduction of the right-shift kk-ary integer GCD algorithm. While the worst-case complexity of Weber's ''Accelerated integer GCD algorithm'' is \cO\l(\log_\phi(k)^2\r), we show that the worst-case number of iterations of the while loop is exactly \tfrac 12 \l\lfloor \log_{\phi}(k)\r\rfloor, where \phi := \tfrac 12 \l(1+\sqrt{5}\r).\par We suggest improvements on the average complexity of the latter algorithm and also present two new faster residual algorithms: the sequential and the parallel one. A lower bound on the probability of avoiding the while loop in our parallel residual algorithm is also given

    A New Modular Division Algorithm and Applications

    No full text
    12 pagesInternational audienceThe present paper proposes a new parallel algorithm for the modular division u/v mod βsu/v\bmod \beta^s, where u,  v,  βu,\; v,\; \beta and ss are positive integers (β≥2)(\beta\ge 2). The algorithm combines the classical add-and-shift multiplication scheme with a new propagation carry technique. This ''Pen and Paper Inverse'' ({\em PPI}) algorithm, is better suited for systolic parallelization in a ''least-significant digit first'' pipelined manner. Although it is equivalent to Jebelean's modular division algorithm~\cite{jeb2} in terms of performance (time complexity, work, efficiency), the linear parallelization of the {\em PPI} algorithm improves on the latter when the input size is large. The parallelized versions of the {\em PPI} algorithm leads to various applications, such as the exact division and the digit modulus operation (dmod) of two long integers. It is also applied to the determination of the periods of rational numbers as well as their pp-adic expansion in any radix β≥2\beta \ge 2

    A Modular Integer GCD Algorithm

    Get PDF
    This paper describes the first algorithm to compute the greatest common divisor (GCD) of two n-bit integers using a modular representation for intermediate values U, V and also for the result. It is based on a reduction step, similar to one used in the accelerated algorithm [T. Jebelean, A generalization of the binary GCD algorithm, in: ISSAC \u2793: International Symposium on Symbolic and Algebraic Computation, Kiev, Ukraine, 1993, pp. 111–116; K. Weber, The accelerated integer GCD algorithm, ACM Trans. Math. Softw. 21 (1995) 111–122] when U and V are close to the same size, that replaces U by (U-bV)/p, where p is one of the prime moduli and b is the unique integer in the interval (-p/2,p/2) such that b=UV ^-1(mod p) . When the algorithm is executed on a bit common CRCW PRAM with O(n log n log log log n) processors, it takes O(n) time in the worst case. A heuristic model of the average case yields O(n/log n) time on the same number of processors

    Parallel Implementation of the Accelerated Integer GCD Algorithm

    No full text
    corecore