mersenneforum.org Very Prime Riesel and Sierpinski k
 Register FAQ Search Today's Posts Mark Forums Read

 2012-03-14, 16:01 #408 R. Gerbicz     "Robert Gerbicz" Oct 2005 Hungary 101111110102 Posts - I've finished a newer version, see payam2.c at https://sites.google.com/site/robertgerbicz/payam. (the old code is still available). - Now you can use E=28,36. There is a nice speedup due to a new sieve and some improved parts of the code. - I've also included the small changes from Thomas, (in some places modified them), but feel free to modify it further if you want. - It takes a little longer time for the code to do all initializations. - It should be faster for every E, the speedup is larger for larger E value. In some cases I can imagine that it is in fact slower for some small E values, say for E=52,58, depending on you computer. - There are more subiterations, this means 217728 subiterations. - But one iteration covers (very close to) the same number of K values, so it is safe to restart your computations with your current iteration, and I=0. (the subiterations are different) I've no 64 bits windows, so I can't provide an exe.
2012-03-14, 16:42   #409
Thomas11

Feb 2003

111011110112 Posts

Quote:
 Originally Posted by R. Gerbicz - I've finished a newer version, see payam2.c at https://sites.google.com/site/robertgerbicz/payam. (the old code is still available). ... I've no 64 bits windows, so I can't provide an exe.
Welcome back, Robert! And many thanks for the new improved version.
It seems to work very well on my Linux machine.
However, I've run into lots of errors and warning when trying to compile it on Windows. I'm using Visual C++ 2008/2010 and the MPIR library (version 2.5.0) for GMP.

I'm trying to get the code working by myself, but perhaps you could help at least with the following:

line 96: mpz_random(K,1);

This no longer works for newer version of GMP/MPIR, since this function is obsolete. The manual tells that one should mpz_urandomb or mpz_urandomm instead. But those functions are slightly different, and since I do not fully understand the purpose of your usage of mpz_random there (e.g. random K up to which size?), it's difficult to set a proper replacement.

There seems also to a problem with the use of assert in Visual C++, but perhaps I find the solution by myself...

2012-03-14, 17:02   #410
robert44444uk

Jun 2003
Oxford, UK

25×32×7 Posts

Quote:
 Originally Posted by R. Gerbicz I've no 64 bits windows, so I can't provide an exe.
Welcome back, Robert G!

Can you do a 32 bit for windows, I don't use 64. Afghanistan is behind the times!

Last fiddled with by robert44444uk on 2012-03-14 at 17:03

 2012-03-14, 17:21 #411 Thomas11     Feb 2003 5×383 Posts By a little rearrangement of the code (moving variable declarations to the beginning of each function) and some replacement for the random function I was able to get the code compiled on a Windows machine. However, it is crashing right after the initialization phase for both, 32 bits and 64 bits. Most probably a memory problem (there are still many warnings regarding improper type conversations). From the Linux side I can report a speed-up by an impressive factor of 8 for E=36 (compared to my variant).
2012-03-14, 18:11   #412
Thomas11

Feb 2003

5·383 Posts

Finally I managed to get working Windows binaries. Please find them attached.
The (slightly modified) source code is also included.

So far I haven't noticed any deviations from the results of the unmodified version on my Linux machine.

Robert G., please have a look at my modifications, especially the call to the random routine. I've added some explicit type casts and/or changed some data types to reduce most of the compiler warnings on that (mainly regarding the newly introduced "unsigned long long ints"). Please check whether the former implicit type casting was by intention...

Edit: There might be a problem for the 32 bit binary with the screen output (zero timings).
Attached Files
 payam2.zip (220.4 KB, 105 views)

Last fiddled with by Thomas11 on 2012-03-14 at 18:41

2012-03-14, 18:51   #413
R. Gerbicz

"Robert Gerbicz"
Oct 2005
Hungary

153010 Posts

Quote:
 Originally Posted by Thomas11 Robert G., please have a look at my modifications, especially the call to the random routine. I've added some explicit type casts and/or changed some data types to reduce most of the compiler warnings on that (mainly regarding the newly introduced "unsigned long long ints"). Please check whether the former implicit type casting was by intention...
Random function is now good. The only problem is with: "hi=(int)n;" (line number=215)

here you should use: hi=(unsigned int)n;

Last fiddled with by R. Gerbicz on 2012-03-14 at 18:51

 2012-03-14, 19:04 #414 pinhodecarlos     "Carlos Pinho" Oct 2011 Milton Keynes, UK 116158 Posts I had a speed up of 70 % however the number of subiterations doubled.
2012-03-14, 19:07   #415
Thomas11

Feb 2003

77B16 Posts

The screen output problem should be fixed now.
Also added the change into hi=(unsigned int)n;

Please find the (now hopefully working) binaries attached.

BTW.: The following were already found by payam2:
Code:
S 930600822907 36 100/9682 100/10000 K=40695281004817744305 iteration=0 I=1102 Wed Mar 14 19:28:54 2012
S 286389065043 36 100/9556 102/10000 K=12523826749072869945 iteration=0 I=1211 Wed Mar 14 19:42:08 2012
And my earlier modifications (payam28/payam36) produced:
Code:
S 373703051 28 100/8409 100/10000 K=441677767461645 iteration=70 I=34 Wed Mar 14 17:07:17 2012
S 3215769923 28 100/9923 100/10000 K=3800702393144085 iteration=609 I=20 Wed Mar 14 19:14:00 2012
S 177693671 36 100/7398 106/10000 K=7770564667602165 iteration=0 I=310 Wed Mar 14 16:38:18 2012
S 3230664515 36 100/8902 101/10000 K=141277330767369225 iteration=8 I=80 Wed Mar 14 18:44:16 2012
Attached Files
 payam2.zip (220.3 KB, 115 views)

2012-03-14, 19:31   #416
Thomas11

Feb 2003

111011110112 Posts

Quote:
 Originally Posted by pinhodecarlos ... however the number of subiterations doubled.
Note, that each subiteration now covers a smaller range (about 1/2 the size as before). So, what really matters is the time per full iteration (which is, according to Robert Gerbicz, still at a comparable size). This should be faster now.

2012-03-15, 05:14   #417
robert44444uk

Jun 2003
Oxford, UK

111111000002 Posts

Quote:
 Originally Posted by Thomas11 Please find the (now hopefully working) binaries attached.

Coo a new toy...brilliant.

I would like to reserve Riesel E36 iteration 10...I'm assuming that Carlos is already looking at some iterations, hopefully this won't be an overlap.

The smithcheck in the zip file in.txt was dialled down really low for E36. In my original work at this level using axn's software I used

30,5
50,11
100,19
200,27
500,38
1000,54
2000,67
3000,74
6000,90

The comparable levels shown in the in.txt

5 50
12 100
22 200
32 500
52 1000
65 2000
75 3000
90 6000

A very significant speed up can be expected therefore by raising the barrier at the Smith check. Given that we are expecting to break only low level records, I'm intending raise the barrier and plan only checking to n=6000 using the software.

The records for Riesel E36 before we start the exercise:

Code:
1	1	689741	m/36
2	2	10340403	m/36
3	3	11528261	m/36
4	4	73652687	m/36
5	5	45998055	m/36
6	6	87261285	m/36
7	7	165081579	m/36
8	8	213933499	m/36
9	9	213933499	m/36
10	10	213933499	m/36
11	11	3982100443	m/36
12	14	370441035	m/36
13	15	37410915885	m/36
14	17	370441035	m/36
15	18	370441035	m/36
16	22	370441035	m/36
17	27	1027006295	m/36
18	28	1027006295	m/36
19	32	4467870581	m/36
20	35	4467870581	m/36
21	42	5392318323	m/36
22	46	5392318323	m/36
23	53	370441035	m/36
24	54	370441035	m/36
25	55	370441035	m/36
26	63	4467870581	m/36
27	64	4467870581	m/36
28	67	4467870581	m/36
29	81	4467870581	m/36
30	87	370441035	m/36
31	89	370441035	m/36
32	92	370441035	m/36
33	94	370441035	m/36
34	98	370441035	m/36
35	101	370441035	m/36
36	131	864233139	m/36
37	140	864233139	m/36
38	155	27854056019	m/36
39	162	27854056019	m/36
40	173	641092949	m/36
41	180	27854056019	m/36
42	192	27854056019	m/36
43	212	27854056019	m/36
44	237	27854056019	m/36
45	245	1040267283	m/36
46	265	27854056019	m/36
47	269	27854056019	m/36
48	278	27854056019	m/36
49	317	27854056019	m/36
50	342	1030001517	m/36
51	363	3706149515	m/36
52	368	3706149515	m/36
53	399	3706149515	m/36
54	427	27854056019	m/36
55	465	3706149515	m/36
56	491	27854056019	m/36
57	506	27854056019	m/36
58	513	27854056019	m/36
59	530	27854056019	m/36
60	535	27854056019	m/36
61	589	27854056019	m/36
62	603	27854056019	m/36
63	664	27854056019	m/36
64	699	27854056019	m/36
65	813	27854056019	m/36
66	838	27854056019	m/36
67	867	27854056019	m/36
68	915	27854056019	m/36
69	1109	27854056019	m/36
70	1115	27854056019	m/36
71	1242	27854056019	m/36
72	1426	27854056019	m/36
73	1448	27854056019	m/36
74	1550	27854056019	m/36
75	1762	27854056019	m/36
76	1873	27854056019	m/36
77	1874	27854056019	m/36
78	2151	27854056019	m/36
79	2238	27854056019	m/36
80	2538	2441761733	m/36
81	2583	93061801369	m/36
82	2726	27854056019	m/36
83	2855	93061801369	m/36
84	2880	93061801369	m/36
85	2981	93061801369	m/36
86	3079	93061801369	m/36
87	3221	93061801369	m/36
88	3239	93061801369	m/36
89	3592	93061801369	m/36
90	3603	93061801369	m/36
91	4927	93061801369	m/36
92	4949	93061801369	m/36
93	5547	93061801369	m/36
94	5675	59863409059	m/36
95	5993	59863409059	m/36
96	6038	93061801369	m/36
97	6788	93061801369	m/36
98	6904	93061801369	m/36
99	7046	93061801369	m/36
100	7480	93061801369	m/36
101	8088	93061801369	m/36
102	8555	93061801369	m/36
103	8594	93061801369	m/36
104	10736	93061801369	m/36
105	11039	93061801369	m/36
106	11289	93061801369	m/36
107	14437	93061801369	m/36
108	18873	93061801369	m/36
109	18973	93061801369	m/36
110	19999	93061801369	m/36
111	23859	93061801369	m/36
112	26606	93061801369	m/36

Last fiddled with by robert44444uk on 2012-03-15 at 05:17

 2012-03-15, 06:19 #418 robert44444uk     Jun 2003 Oxford, UK 7E016 Posts A couple of pointers for the programming: On both my computers I got the error message msvcr100.dll missing. I solved it on my vista by copying and renaming msvcr100_clr0400.dll to the required name. On my older machine I have a variety of msvcr files, but they are only numbered up to 90.

 Similar Threads Thread Thread Starter Forum Replies Last Post sweety439 sweety439 11 2020-09-23 01:42 sweety439 Conjectures 'R Us 0 2016-12-07 15:01 robert44444uk Conjectures 'R Us 139 2007-12-17 05:17 rogue Conjectures 'R Us 11 2007-12-17 05:08 michaf Conjectures 'R Us 49 2007-12-17 05:03

All times are UTC. The time now is 19:16.

Tue Jan 18 19:16:58 UTC 2022 up 179 days, 13:45, 0 users, load averages: 2.07, 1.59, 1.70