mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Programming (https://www.mersenneforum.org/forumdisplay.php?f=29)
-   -   Factoring using FFT on the Web browser (https://www.mersenneforum.org/showthread.php?t=23589)

 alpertron 2018-08-20 18:01

Factoring using FFT on the Web browser

I've just updated my factorization tool to use FFT.

Now it can factor numbers up to 100000 digits. Since I made several changes in the program, I've uploaded the alpha version to [url]https://test.alpertron.com.ar/ECM.HTM[/url]

Please let me know if you find problems.

 R. Gerbicz 2018-08-20 18:14

Tried it on 10^99999, basically it doesn't seem that fast, maybe in a minute it could down to 10^99900 on the unfactored part.

 alpertron 2018-08-20 18:47

For numbers of about 10000 digits, it runs about 3 times faster than the previous version that uses Karatsuba.

Of course the applet cannot compete with native programs that can use Assembler. Remember that the code runs inside the Web browser.

 GP2 2018-08-20 19:11

[QUOTE=alpertron;494311]Of course the applet cannot compete with native programs that can use Assembler. Remember that the code runs inside the Web browser.[/QUOTE]

I wonder if, years from now, they will make Chromebook-style devices that run on chips that have WebAssembly as their native instruction set...

PS, it's confusing to call it an "applet". It's not an old-timey Java applet.

 alpertron 2018-09-09 18:43

Now the calculation of sum of squares uses GCD of Gaussian integers (for two squares) and GCD of quaternions (for four squares).

The GCD takes about 1 second for numbers of 10000 digits (I tested that with the smallest gigantic prime, which is 10[SUP]9999[/SUP] + 33603). Most of the time is used for a modular power.

With the previous version, computing the sum of four squares would have taken about one hour.

I will continue doing more tests, and if everything works OK, I will move the new Web application to the "standard" URL.

 alpertron 2018-09-12 17:32

[QUOTE=alpertron;495769]Now the calculation of sum of squares uses GCD of Gaussian integers (for two squares) and GCD of quaternions (for four squares).

The GCD takes about 1 second for numbers of 10000 digits (I tested that with the smallest gigantic prime, which is 10[SUP]9999[/SUP] + 33603). Most of the time is used for a modular power.

With the previous version, computing the sum of four squares would have taken about one hour.

I will continue doing more tests, and if everything works OK, I will move the new Web application to the "standard" URL.[/QUOTE]
Now when the code detects that the number can be divided by a very small factor (less than 100000), it will quickly determine the maximum exponent of this small factor that can divide the number, so the factorization proceeds a lot faster.

For example, in the previous version the application needed 15 minutes to factor 2678!. In this version it needs only 10 seconds in the same computer.

Now I will need to change the program to quickly compute big factorials (say bigger than 5000!).

 alpertron 2018-09-16 12:56

I found no further errors, so the new factorization application is at its expected location: [url]https://www.alpertron.com.ar/ECM.HTM[/url]

 All times are UTC. The time now is 04:17.