mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > YAFU

Reply
 
Thread Tools
Old 2011-01-05, 22:12   #507
Mini-Geek
Account Deleted
 
Mini-Geek's Avatar
 
"Tim Sorbera"
Aug 2006
San Antonio, TX USA

426710 Posts
Default

Quote:
Originally Posted by lorgix View Post
Let's try it out!

sigma = 1940137128 completes the factorization of 198^198*4+1.
That looks more realistic:
Code:
[ <2, 4>, <3, 1>, <5, 1>, <3371, 1>, <5347, 1>, <30389, 1>, <87887, 1>,
<19452079, 1> ]
B1=90K, B2=20M would be sufficient.

Last fiddled with by Mini-Geek on 2011-01-05 at 22:15
Mini-Geek is offline   Reply With Quote
Old 2011-01-06, 16:19   #508
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

7×503 Posts
Default

I'm happy to report that Brian Gladman has found and fixed a bug in msieve which allows Win32 versions of YAFU to complete NFS factorizations. This fixes the problem reported by Andi_HB here.

I've updated the yafu-1.22 download on sourceforge and my website with these fixed binaries.
bsquared is offline   Reply With Quote
Old 2011-01-06, 16:35   #509
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

2×19×101 Posts
Default

Ben,

One of my Ubuntu machines gives the following:
Code:
==== sieving in progress (1 thread):    5408 relations needed ====
====           Press ctrl-c to abort and save state           ====
Illegal instruction
WARNING: couldn't find factor in factor.log
My yafu-64k-linux32 header shows:
Code:
01/06/11 11:28:07 v1.21 @ math06, System/Build Info: 
detected AMD Athlon(tm) Processor
detected L1 = 65536 bytes, L2 = 65536 bytes, CL = 0 bytes
measured cpu frequency ~= 2068.602740
My CPU info shows:
Code:
processor     : 0
vendor_id     : AuthenticAMD
cpu family    : 6
model          : 8
model name    : AMD Athlon(tm) Processor
stepping    : 1
cpu MHz        : 1795.353
cache size    : 64 KB
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 1
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow up
bogomips    : 3590.70
clflush size    : 32
cache_alignment    : 32
address sizes    : 34 bits physical, 32 bits virtual
power management: ts
Is the omission of SSE2 my trouble? If so, is there a workaround? I'm running this under Aliqueit, which uses Msieve right after the YAFU abort, so it isn't causing a real loss of time, other than if YAFU would have found the factors more quickly. If it's not something simple to address, don't worry about it. Just thought I'd ask...

Thanks for all the work you put into a great program.
Ed
EdH is offline   Reply With Quote
Old 2011-01-06, 18:51   #510
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

DC116 Posts
Default

Quote:
Originally Posted by EdH View Post
Is the omission of SSE2 my trouble? If so, is there a workaround? I'm running this under Aliqueit, which uses Msieve right after the YAFU abort, so it isn't causing a real loss of time, other than if YAFU would have found the factors more quickly. If it's not something simple to address, don't worry about it. Just thought I'd ask...

Thanks for all the work you put into a great program.
Ed
Hi Ed,

Yes, I just checked and saw that I've hardcoded SSE2 instructions into recent builds - I think because I was having trouble detecting nehalem cpus. I'm fairly sure that's where the illegal instruction message came from. I assume the "can't find factor" business is an aliqueit message...

There isn't a workaround other than rebuilding a new executable with SSE2 undefined. I'd be happy to do this for you if you want - just send me an email - but I don't really want to update the main SF download because I think more people have SSE2 instruction support than not who use yafu.
bsquared is offline   Reply With Quote
Old 2011-01-06, 20:03   #511
lorgix
 
lorgix's Avatar
 
Sep 2010
Scandinavia

3·5·41 Posts
Default

If I specify a B2>4e9 YAFU still states that primes above 4e9 aren't supported in ECM. And then reduces B2 to 4e9.

Also, when using factor() YAFU states B2=B1*100.

B2 for pp1&pm1 is reported as gmp-ecm default.
lorgix is offline   Reply With Quote
Old 2011-01-06, 20:30   #512
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

7·503 Posts
Default

Quote:
Originally Posted by lorgix View Post
If I specify a B2>4e9 YAFU still states that primes above 4e9 aren't supported in ECM. And then reduces B2 to 4e9.
Thanks, I forgot to remove that check - it is no longer necessary. Will do.


Quote:
Originally Posted by lorgix View Post
Also, when using factor() YAFU states B2=B1*100.

B2 for pp1&pm1 is reported as gmp-ecm default.
factor() always ignores specified values of B2, because a single specific value of B2 doesn't make sense to apply to curves run with potentially many different B1 bounds. I had intended the ability to specify B2 to be more useful when running the ecm() command directly. However when you both specify B2 and run factor(), the flag indicating that there is a user defined B2 causes factor() to revert to the old B2=100*B1 behavior.

What may be needed here is to allow yafu to pass on more GMP-ECM's flags. Maybe you are looking for something like the -B2scale flag from GMP-ECM, to run curves with higher than normal B2 values? Ordinarily, you don't need to specify B2 at all.

Last fiddled with by bsquared on 2011-01-06 at 20:36
bsquared is offline   Reply With Quote
Old 2011-01-06, 20:43   #513
lorgix
 
lorgix's Avatar
 
Sep 2010
Scandinavia

10011001112 Posts
Default

Quote:
Originally Posted by bsquared View Post
Thanks, I forgot to remove that check - it is no longer necessary. Will do.


factor() always ignores specified values of B2, because a single specific value of B2 doesn't make sense to apply to curves run with potentially many different B1 bounds. I had intended the ability to specify B2 to be more useful when running the ecm() command directly. However when you both specify B2 and run factor(), the flag indicating that there is a user defined B2 causes factor() to revert to the old B2=100*B1 behavior.

What may be needed here is to allow yafu to pass on more GMP-ECM's flags. Maybe you are looking for something like the -B2scale flag from GMP-ECM, to run curves with higher than normal B2 values?
Yes, I didn't expect factor() to be affected by the values I set in yafu.ini.

The last sentence of the second paragraph explains why factor() uses B2=B1*100. I'm assuming you intend to have factor() use GMP-ECM default B2 values regardless of whether user defined B2 values are set for the ecm() command.

I'm not sure I understand the third paragraph...

--
edit: What happens to B2 when a "non-standard" B1 is specified, say 7e6?

Last fiddled with by lorgix on 2011-01-06 at 20:47 Reason: your editing
lorgix is offline   Reply With Quote
Old 2011-01-06, 20:56   #514
bsquared
 
bsquared's Avatar
 
"Ben"
Feb 2007

1101110000012 Posts
Default

Quote:
Originally Posted by lorgix View Post
Yes, I didn't expect factor() to be affected by the values I set in yafu.ini.
I thought you _were_ trying to influence the behavior of factor() with B2... sorry for not understanding. That's why I wrote that third paragraph... I was digging for a reason why you wanted to specify a B2 while using factor().


Quote:
Originally Posted by lorgix View Post
I'm assuming you intend to have factor() use GMP-ECM default B2 values regardless of whether user defined B2 values are set for the ecm() command.

Yes. Looks like I need to fix that.

Quote:
Originally Posted by lorgix View Post

--
edit: What happens to B2 when a "non-standard" B1 is specified, say 7e6?
GMP-ECM knows what to do with it. If you want to see what value it picks, you can run yafu with verbosity level 3 (i.e, -v -v -v). You'll get a bunch of other extraneous crap as well, but should see GMP-ECM messages scrolling by with the B2 value it is using.
bsquared is offline   Reply With Quote
Old 2011-01-06, 22:01   #515
lorgix
 
lorgix's Avatar
 
Sep 2010
Scandinavia

3×5×41 Posts
Default

^Ok, all good.

Thanks!
lorgix is offline   Reply With Quote
Old 2011-01-06, 22:06   #516
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

2·19·101 Posts
Default

Quote:
Originally Posted by bsquared View Post
Hi Ed,

Yes, I just checked and saw that I've hardcoded SSE2 instructions into recent builds - I think because I was having trouble detecting nehalem cpus. I'm fairly sure that's where the illegal instruction message came from. I assume the "can't find factor" business is an aliqueit message...

There isn't a workaround other than rebuilding a new executable with SSE2 undefined. I'd be happy to do this for you if you want - just send me an email - but I don't really want to update the main SF download because I think more people have SSE2 instruction support than not who use yafu.
Thanks, Ben,

Yes, the "can't find factor" is an Aliqueit message. Don't worry about the rebuild. YAFU's working on the other machines. I'll just have Aliqueit use msieve for that one, which it was already dropping to, anyway. Actually, according to the log, the "Illegal instruction" came immediate, so no time was lost with YAFU.

Thanks again for all the work.
Ed
EdH is offline   Reply With Quote
Old 2011-01-07, 19:11   #517
lorgix
 
lorgix's Avatar
 
Sep 2010
Scandinavia

3×5×41 Posts
Default

prp44 = 23710816555364101973043402552130134552345931 (found in stg2 of curve 1201 (thread 0) with sigma = 81699089)

completes factorization of

(66^66*28+1)/33507324910380028514032210891



66^66*28+1=p29.p44.p50
lorgix is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Running YAFU via Aliqueit doesn't find yafu.ini EdH YAFU 8 2018-03-14 17:22
YAFU-1.34 bsquared YAFU 119 2015-11-05 16:24
Yafu bug. storflyt32 YAFU 2 2015-06-29 05:19
yafu-1.33 bsquared YAFU 12 2012-11-08 04:12
yafu-1.32.1 bsquared YAFU 21 2012-09-04 19:44

All times are UTC. The time now is 05:34.


Fri Aug 6 05:34:34 UTC 2021 up 14 days, 3 mins, 1 user, load averages: 3.52, 3.04, 2.74

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.