mersenneforum.org  

Go Back   mersenneforum.org > New To GIMPS? Start Here! > Information & Answers

Reply
 
Thread Tools
Old 2012-01-06, 10:06   #12
paramveer
 
Jan 2012

32 Posts
Default

Let me go other way,
What will happen if i don't provide controls for memory size,and let the code itself use whatever it uses during the torture test?
paramveer is offline   Reply With Quote
Old 2012-01-06, 10:36   #13
fivemack
(loop (#_fork))
 
fivemack's Avatar
 
Feb 2006
Cambridge, England

191716 Posts
Default

There isn't a single thing called the torture test; there are three.

You should use the 'blend' test. If your machine doesn't pass 'blend', try 'small'. If it does pass 'small' then the problem is probably with the memory; if it doesn't pass 'blend' or 'small' then the CPU is probably the problem.

(I'm not quite sure when you would ever want to run the 'large' test)

Last fiddled with by fivemack on 2012-01-06 at 10:37
fivemack is offline   Reply With Quote
Old 2012-01-06, 10:39   #14
fivemack
(loop (#_fork))
 
fivemack's Avatar
 
Feb 2006
Cambridge, England

3×2,141 Posts
Default

Quote:
Originally Posted by paramveer View Post
2)regarding torture test,in the output it display Pass 1 and Pass2 results,and these are output of Double checking {first check and second check},So still do you think i should not implement these?
No. The 'Pass1' and 'Pass2' numbers displayed by the torture test are a display of some details of the inner working of the Fourier transforms; they're specifications rather than results, and have nothing to do with double checking.
fivemack is offline   Reply With Quote
Old 2012-01-06, 22:59   #15
Dubslow
Basketry That Evening!
 
Dubslow's Avatar
 
"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

3×29×83 Posts
Default

Quote:
Originally Posted by paramveer View Post
3) (please correct,if wrong) Acc to me in torture test steps are:
a) find mersenne Prime
b) Run LL primality test to confirm its primality ( *S0=4 )
c) [First Check of Double checking] Run LL test second time on different machine
and compare the residue in (b) and (c) for equality. ( *S0=4 )
d) [Second Check of Double Checking] Run LL test with modified algo,in this *S0 is assigned left shifted
4,by random amount.and operform test then compare residue with(b)

[doubt is] Acc to LL algo: S0 should be assigned value=4,but in step (d) we are assigning it value other than
4,then how will this test give correct output?

Please refer:["http://en.wikipedia.org/wiki/Lucas-Lehmer_primality_test"]

algo:
// Determine if Mp = 2^p − 1 is prime
Lucas–Lehmer(p)
var s = 4 // (value assigned to *S0 )
var M = 2^p − 1
repeat p − 2 times:
s = ((s × s) − 2) mod M
if s = 0
return PRIME
else
return COMPOSITE
END

I hope this time i have made my points clear .Still if more clarification is needed then please ask,Sorry for last time.
What do you mean by Acc? I'm not sure what you're asking about there.

However, your listed steps are only partially correct. (For one thing, I've added ^s in bold where they need to be in the quote.) There is no triple check, unless the first two do not match. If they do match (about 95% of the time they do) then a triple check is run.

However, the bit shift we are referring to is not changing the seed value S0. I can go into more details (or rather find another post that explains it well) but it should not impact whatever you're trying to do.

fivemack is correct about Pass1 and Pass2, I don't think anyone can say it better.

Regardless, as cheesehead mentioned, none of this is relevant to the Torture Testing mode. What exactly are you trying to do? Just write your own program that stresses the CPU?
Dubslow is offline   Reply With Quote
Old 2012-01-07, 00:42   #16
Christenson
 
Christenson's Avatar
 
Dec 2010
Monticello

5×359 Posts
Default

If Paramveer wants to write his own test, I suggest he simply get a copy of the Prime95 code (its linked somewhere) and modify it to suit, or build mprime (for Linux) and run it by script.

But to be really helpful, we do need to know what he/she wants to accomplish....whether it's his education, showing that a certain computer (possibly not a PC) works correctly under stress, or simply finding out how some machine behaves or misbehaves when starved for CPU cycles....or, god forbid, actually helping find M48!!!
Christenson is offline   Reply With Quote
Old 2012-01-13, 06:52   #17
paramveer
 
Jan 2012

32 Posts
Default

thanks all for your suggestion,i went back to study more on this so that i can explain my doubts in better way.
Regarding Torture test.
1)is Double checking done in torture test?
2)if it is done,then help file along with the source code says that:it initialize the S0 with a value obtained by left shifting 4 by random amount of bits.if it is the case then how it will detect the prime correctly?Refer below eg for clarification.
Eg:
-> put S0=8 {obtained by left shifting 4 by one bit}
-> Perform 1 iteration of LLTest (iter=E-2){3-2}
-> we get 62 (8^2-2)(s^2-2)
-> Now take mod with 7 (2^e-1)(2^3-1=7)
-> s becomes 6 (6=62 MOD 7)
-> this will give 7 as composite ,but 7 is prime(Contradiction).
paramveer is offline   Reply With Quote
Old 2012-01-13, 07:06   #18
Dubslow
Basketry That Evening!
 
Dubslow's Avatar
 
"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

722110 Posts
Default

Double Checking is solely a term used for GIMPS (i.e. not stress testing). Double Checking is exactly the same mathematics as a first time test. It is still a Lucas Lehmer test, which is what the torture test uses.

I can't answer the last question. (I might be able to find a post explaining it.) Edit: Here. For your case, you have to carry the test through to the end, where you (should) get 0.
Edit2: It seems the standard r*r-2 does not apply with a bit shift. (LaurV gets 56 where OP and I get 62.)

Last fiddled with by Dubslow on 2012-01-13 at 07:18
Dubslow is offline   Reply With Quote
Old 2012-01-13, 07:33   #19
cheesehead
 
cheesehead's Avatar
 
"Richard B. Woods"
Aug 2002
Wisconsin USA

22×3×641 Posts
Default

Quote:
Originally Posted by paramveer View Post
1)is Double checking done in torture test?
No.

It doesn't have to be done, because in the torture test, prime95 already knows what the correct answers should be -- it has them hard-coded into a table. The torture test compares the residue computed by your system to the hard-coded correct value stored in the table.

Quote:
2)if it is done,then help file along with the source code says that:it initialize the S0 with a value obtained by left shifting 4 by random amount of bits.if it is the case then how it will detect the prime correctly?
At the end of the LL or DC calculation, the residue will be right shifted (circularly) back by the same number of bits that it had been left-shifted circularly. The mathematics involved will cause the circular right-shift to restore the correct value.

(IIRC, you have to keep track that each squaring (each iteration) doubles the total left-shift, and at the end the value has to be right-shifted by that number of places (mod p), not the original left-shift number. However, caution: I'm not certain I've explained this correctly.)

But this applies only to actual L-L and DC runs, not to torture tests. In torture tests, there is no random-amount shifting done.

Last fiddled with by cheesehead on 2012-01-13 at 08:29
cheesehead is offline   Reply With Quote
Old 2012-01-13, 12:23   #20
science_man_88
 
science_man_88's Avatar
 
"Forget I exist"
Jul 2009
Dumbassville

26×131 Posts
Default

Quote:
Originally Posted by cheesehead View Post
No.

It doesn't have to be done, because in the torture test, prime95 already knows what the correct answers should be -- it has them hard-coded into a table. The torture test compares the residue computed by your system to the hard-coded correct value stored in the table.

At the end of the LL or DC calculation, the residue will be right shifted (circularly) back by the same number of bits that it had been left-shifted circularly. The mathematics involved will cause the circular right-shift to restore the correct value.

(IIRC, you have to keep track that each squaring (each iteration) doubles the total left-shift, and at the end the value has to be right-shifted by that number of places (mod p), not the original left-shift number. However, caution: I'm not certain I've explained this correctly.)

But this applies only to actual L-L and DC runs, not to torture tests. In torture tests, there is no random-amount shifting done.
shift of 1-> 8 , 8^2-2 = 62, 62/2 -> 31 prime
shift of 2 -> 16 , 16^2-2 = 254, 254/2-> 127 prime
shift of 3 -> 64 , 64^2-2 = 4094, 4094/2-> 2047 odd

conclusion: they always end in a mersenne number.
science_man_88 is offline   Reply With Quote
Old 2012-01-13, 14:57   #21
Dubslow
Basketry That Evening!
 
Dubslow's Avatar
 
"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

3·29·83 Posts
Default

Quote:
Originally Posted by cheesehead View Post
(IIRC, you have to keep track that each squaring (each iteration) doubles the total left-shift, and at the end the value has to be right-shifted by that number of places (mod p), not the original left-shift number. However, caution: I'm not certain I've explained this correctly.)
I don't think so, because based on LaurV's post that I linked, the standard square-and-subtract doesn't apply. I don't see how he did his first iteration there.
Dubslow is offline   Reply With Quote
Old 2012-01-13, 15:11   #22
science_man_88
 
science_man_88's Avatar
 
"Forget I exist"
Jul 2009
Dumbassville

838410 Posts
Default

Quote:
Originally Posted by Dubslow View Post
Double Checking is solely a term used for GIMPS (i.e. not stress testing). Double Checking is exactly the same mathematics as a first time test. It is still a Lucas Lehmer test, which is what the torture test uses.

I can't answer the last question. (I might be able to find a post explaining it.) Edit: Here. For your case, you have to carry the test through to the end, where you (should) get 0.
Edit2: It seems the standard r*r-2 does not apply with a bit shift. (LaurV gets 56 where OP and I get 62.)
Code:
(11:09)>lucaslehmer2(p)=s=Mod(8,2^p-1);for(x=1,p-3,s=s^2-2;print(s));if(s==0,1,0)
%35 = (p)->s=Mod(8,2^p-1);for(x=1,p-3,s=s^2-2;print(s));if(s==0,1,0)
(11:09)>lucaslehmer2(13)
Mod(62, 8191)
Mod(3842, 8191)
Mod(780, 8191)
Mod(2264, 8191)
Mod(6319, 8191)
Mod(6825, 8191)
Mod(6597, 8191)
Mod(1624, 8191)
Mod(8063, 8191)
Mod(0, 8191)
is what I get.
science_man_88 is offline   Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
Is it possible to disable benchmarking while torture tests are running? ZFR Software 4 2018-02-02 20:18
Will the torture test, test ALL available memory? swinster Software 2 2007-12-01 17:54
How to use Prime95 For benchmarking and torture testing only Cyclamen Persicum Software 2 2004-04-03 14:52
torture test help teotic_hk Hardware 8 2004-03-22 20:23
Torture test not torture enough? cmokruhl Software 3 2003-01-08 00:14

All times are UTC. The time now is 13:47.


Mon Aug 2 13:47:25 UTC 2021 up 10 days, 8:16, 1 user, load averages: 2.83, 2.16, 2.02

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.