• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

can someone PLS find a way to loop this program>!

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.
DaWiper said:
If your up for beta testing I can try making a a ultra beta version tomorrow... With the abilities to stop/not stop if error. I can give you a pm when the first alpha is ready. However I'm not a hardcore coder, I just know some "stuff". Give me a pm if your interested....
sending pm!

btw if you think you can pull this off ill hold off on contacting the guy about the source code.unless you need it.
 
deathstar13 said:
sending pm!

btw if you think you can pull this off ill hold off on contacting the guy about the source code.unless you need it.

if the source code dude is a member at xs im sure he would be able to make you a version thats loops, just point him to this thread... :shrug:
 
I've always wanted to make a program like this, too. In a sense, I have: I do computational biophysics and fluid mechanics, and the simulations generally take a week to run. :) I have compared shorter runs to benchmark before.

Having something to test against for errors can be slightly harder, as there are floating point errors. But it could be very fun.

Things with many matrix additions, and many memory allocations and deallocations could be fun. Also, having various sizes of tests, so that some fit in memory and some don't. I thought it was interesting that super_pi scaled roughly linearly at first, (i.e., doubling the digits roughly doubled the time), but later on worse than linearly.

A fun test program could be an E. sieve program that searches for successively larger prime numbers. Or fast Fourier transforms. etc. Basically, something that does several types of tasks that relate to doing different types of programs. A synthetic benchmark based on common tasks, per se.

Then again, folks, the program we are describing already exists, and it's called sisoft sandra. (It can be looped with custom loops, etc.) Pcmark is also good for this. -- Paul

*edit* Take a look at this page ScienceMark could be up your alley. -- Paul */edit*
 
Have you tried just opening like 7 at a time? Then clicking run on them all? I would think the streess from each one would slow theo thers to a crawl, so you owuld be maxed CPU for a very long time.
 
I know some C++, i know loops and such. Get me the source code, and i could take to some good programming friends of mine(Not on the forum.)
 
here is the reason behind my thinking and wanting this.
and in doing so will create the and rehash the prime95 vs's true stability.or the debate is prime95 the gold standard of stability.and i dont care to argue that issue.

but in my finding and many others is if a pc will pass a 32m run of superpi it will run anything else i throw at it.and this allows many times higher mhz oc's with the same stability.granted this is an objective view.

dawiper has pmed me saying he will attempt this today and ill do some beta runs on it.
ill see how this goes and if this doesnt work we can head another route.
 
I think I can help, but I have my coumputer booted into Linux for a different project today. I won't be able to work on it until tomorrow and that may be my only free weekend day for a while.

First some background and ways you can do it. There is a product called Mercury QuickTest Professional. This is fairly easy to use and allows you to script windows events. It is designed for software developers so they can run tests on their software. It is expensive, but if I remember correctly, there is a trial period. Some competing products exist, but I don't think there are any really good open source projects.

Anyways, I've implemented the basic functionality for this on my own. I've got some code laying around (I think on my MSWIN partition) that I can use to script windows events. It should be possible to write a parent program that will launch super pi, press the correct buttons and then poll the application for its status. When its done it can read the error and status reports and then launch again. This works by moving the mouse and triggering clicks and keyboard presses internally. The computer might be largly useless while its running, because the mouse will be jumping around. A hot key could be setup to suspend the remote control (though super pi would continue running.) Does this sound like what you are looking for? I've never used super pi before, so I'm just guessing at its operation. Ultimatly I would open source my code on sourceforge.
 
mccoyn said:
I think I can help, but I have my coumputer booted into Linux for a different project today. I won't be able to work on it until tomorrow and that may be my only free weekend day for a while.

First some background and ways you can do it. There is a product called Mercury QuickTest Professional. This is fairly easy to use and allows you to script windows events. It is designed for software developers so they can run tests on their software. It is expensive, but if I remember correctly, there is a trial period. Some competing products exist, but I don't think there are any really good open source projects.

Anyways, I've implemented the basic functionality for this on my own. I've got some code laying around (I think on my MSWIN partition) that I can use to script windows events. It should be possible to write a parent program that will launch super pi, press the correct buttons and then poll the application for its status. When its done it can read the error and status reports and then launch again. This works by moving the mouse and triggering clicks and keyboard presses internally. The computer might be largly useless while its running, because the mouse will be jumping around. A hot key could be setup to suspend the remote control (though super pi would continue running.) Does this sound like what you are looking for? I've never used super pi before, so I'm just guessing at its operation. Ultimatly I would open source my code on sourceforge.


yes that would work, alls it would have to do is go to calculate and press 32m then hit OK, the tough part would be knowing how often to do this, maybe some sort of manual timer if you know the length it takes your pc to complete the 32m run, or someway for it to know that superpi is done and trigger it that way, the latter being the hardest i'd assume.
 
I'm working on it now. I've got it running in a loop fine. What it does is check approximatly twice per second to see if the "Finish" dialog is shown. Once it is it restarts everthing.

The text (status and errors) is actually painted, which means I can't copy it directly as text. I could do a screen shot each time it is finished. This wouldn't be good if you set it to run 500 loops, since that would create 500 screen shots. I'll have to think about this problem. Chances are the best I can do this weekend is the pile of screen shots solution.
 
Hey, thanks mccoyn. I thought some sort of Windows scripting might work ... (but it's way out of my realm of expertise.) Very nice!! -- Paul
 
Oh, this is awesome!

A SuperPi 32M variant that can be looped would be an incredible stress tester for both processors and memory. This program is possibly better than Prime... The 32M test is extremely stressful and an excellent indication of stability. It's much faster than running memtest86 looped too.
 
Last edited:
mccoyn said:
It should be possible to write a parent program that will launch super pi, press the correct buttons and then poll the application for its status...
Bingo. This is by far the easiest way to go about it. I was gonna do it myself, but I don't remember much of Win32 C++ anymore. Looks like you've got it covered though. :p

mccoyn said:
The text (status and errors) is actually painted, which means I can't copy it directly as text. I could do a screen shot each time it is finished. This wouldn't be good if you set it to run 500 loops, since that would create 500 screen shots. I'll have to think about this problem. Chances are the best I can do this weekend is the pile of screen shots solution.
Couldn't you just start a timer at the first iteration, and then return the time at the end of the last one?
 
just an update.
i went outa town last night and gained a nice hangover today.
but anyhow dawiper sent me a beta of what he came up with.

ill let him post it or do what ever he wants with it as its his work.thats the reason im not posting it.
but basicaly atm im just doing some sinple initial testing atm.
its very basic at this point with no interface just a dos type window.
i have yet to test its ability to error out and such.

also on a side note i asked about this in a coders forum.
seemed like very nice respectable guys there just like here.they gave me some tips on what to do but is jibberish to me someone who dont code.
but may help anyone wanting to take a shot at this.
http://www.gidforums.com/showthread.php?p=29048#post29048
 
deathstar13 said:
just an update.
i went outa town last night and gained a nice hangover today.
but anyhow dawiper sent me a beta of what he came up with.

ill let him post it or do what ever he wants with it as its his work.thats the reason im not posting it.
but basicaly atm im just doing some sinple initial testing atm.
its very basic at this point with no interface just a dos type window.
i have yet to test its ability to error out and such.

also on a side note i asked about this in a coders forum.
seemed like very nice respectable guys there just like here.they gave me some tips on what to do but is jibberish to me someone who dont code.
but may help anyone wanting to take a shot at this.
http://www.gidforums.com/showthread.php?p=29048#post29048

As soon as I/we know that my little program does what it's suppose to do, I will polish it some, add some features and post the link here for everyone to use.

I read that thread at gidforums. What the guy said is basically what I've done. My program does the same floating point calculation twice for each loop and compare the result.
It also does bit shifting to simulate multiply and divide. This is started with a random number that is multiplied several times thru bit shifting, the same number is then divided the same amount of times, and the point is that if everything is correct the final number should be the exact same as the starting one.
 
I've attached my work so far. I expect I will do more, but this should be enough to see what it does. Just unzip it and read the readme. Then ask me questions as I'm sure I didn't explain it well.

It takes screen shots after each loop. These are each 38k, so not too bad. I might look into compressing the screen shots to save space.

I don't know what usually happens when there is an error. Does the same "Finish" dialog come up, with the error only reported in the main window? If thats the case this should work fine, except that you have to check all the screen shot files manually to find an error. I expect to put that in the GUI somehow when I get around to it. Anyone know of a way to force an error?
 

Attachments

  • pi_loop.zip
    122.7 KB · Views: 76
mccoyn said:
I've attached my work so far. I expect I will do more, but this should be enough to see what it does. Just unzip it and read the readme. Then ask me questions as I'm sure I didn't explain it well.

It takes screen shots after each loop. These are each 38k, so not too bad. I might look into compressing the screen shots to save space.

I don't know what usually happens when there is an error. Does the same "Finish" dialog come up, with the error only reported in the main window? If thats the case this should work fine, except that you have to check all the screen shot files manually to find an error. I expect to put that in the GUI somehow when I get around to it. Anyone know of a way to force an error?


am i doing something wrong here?

 
another update.
first of all pls let me know if mccoyn's program is running for you and i didnt do something correctly? i really wanna try it out.

on dawipers ive done some intial testing.
it runs and seems to generate same heat as super pi,but i was unable to get it to error out.
to do this i ran my machine 4fsb higher without any voltage raising and on a highley oced machine we all know that will cause stability problems but not crash it.
super pi the original would error out in 30s-1 or 2 minutes. i ran the program i was testing and it didnt error at all.

werer getting closer guys.
but 1 thing i must stress in order to get this done right is the original super pi programs internals must remain intact.as its how it works and is able to take a system to its last mhz and show its stable imo.go 1 mhz higher and it errors and thats seems very accurate.
so i must insist how ever its done the originals internals must remain intact.
i know its asking alot mabey but i dont want you guys wasting time doing this and it not be used.
 
I'll get back to the drawingboard... I've probably been unclear about this but my program has nothing to do with superpi/pifast. It was a try to make something new. So far it looks like I've only been able to make a nice cpuheater.
 
deathstar13 said:
am i doing something wrong here?

I think it is having trouble finding the eula.txt file it needs. It will look for this file in the current directory. If you are launching it with a shortcut, this is the "Start in" directory. Set that the the directory that has the eula.txt file and it should work. I've already fixed this bug in my latest version, but I havn't uploaded that anywhere yet.

The version I posted earlier doesn't handle errors well. It just sort of stops, but doesn't bog down the system. You have to exit the two programs manually. I'll fix that too. I figured I can reliably cause an error by using speedfan to turn off one of my fans.
 
Back