In this work we have evaluated the running time of four integer factorization algorithms, namely, trial division algorithm, Fermat algorithm, Pollard rho and Brent algorithms. Implementation of these algorithms was performed in three ways on c programming language, on c programming language, using GMP 6.0.0 library and on CUDA architecture to run on GPU. Results showed that Fermat algorithm and trivial division algorithm had the fastest running time in parallel implementation on CUDA architecture. The difference of running times between CUDA implementation and GMP implementation was up to 10 times. The difference between c and c implementation was mainly due to difference in these programming languages.
Integer factorization GPU GMP trial division algorithm Fermat algorithm Pollard rho algorithm Brent algorithm.
В данной работе была проведена оценка времени работы четырех алгоритмов
целочисленной факторизации, а именно тривиального алгоритма факторизации,
алгоритма Ферма, алгоритмов Полларда Ро и Брента. Реализация этих алгоритмов была
выполнена тремя способами: на языке программирования c, на языке программирования c
++, используя библиотеку GMP 6.0.0 и на архитектуре CUDA для работы на ГПУ.
Результаты показали, что алгоритм Ферма и тривиальный алгоритм деления имели
самое быстрое время при параллельной реализации в архитектуре CUDA. Разница между
временем выполнения факторизации при реализации на CUDA и реализации на GMP
доходила до 10 раз. Разница между временем выполнения факторизации при реализации на
c и c ++ была в основном связана с различиями в этих языках программирования.
Целочисленная факторизация ЦПУ GMP тривиальный алгоритм факторизации алгоритм Ферма алгоритм Полларда Ро алгоритм Брента
Other ID | JA29MT35AE |
---|---|
Journal Section | Research Article |
Authors | |
Publication Date | May 1, 2017 |
Published in Issue | Year 2017 Volume: 5 Issue: 1 |
Manas Journal of Engineering