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

Lets talk .. Gromacs (!A must read for P4 folders!)

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

Gnerma

Senior Member
Joined
Aug 9, 2002
Location
Bakersfield, CA - USA
Lets talk .. Gromacs

UPDATED - March 17, 2003

The Gromacs core (core_78) is the new method Stanford is using to simulate the folding of proteins. The Gromacs core is 5 - 20 times more efficient than the tinker core (core_65). This does not mean that WUs will get done 5 - 20 times faster it means that the underlying calculations going on are getting 5 - 20 times more done in about the same amount of time. Stanford really likes the Gromacs core & you can probably figure why after reading the preceding statement. So much so in fact the current long-term plan is to phase out the tinker core. This probably won't happen for a long time, since there are things that the Gromacs core currently cannot do that the tinker core can do, but it is an eventuality.

The Gromacs core uses SSE, which stands for (oh boy..)

Streaming SIMD(Single Instruction Multiple Data) Extensions

Processors & applications that do not use SSE process one data element in one instruction, a processing style called Single Instruction Single Data, or SISD. In contrast, processors having the SIMD capability have the ability to process more than one data element in one instruction. In other words the processor can work harder with the same two hands (if you get the metaphor). Using SSE requires support from the application, the operating system & the CPU.

Processors that have SSE are as follows..

Athlon XP
Duron 1 GHz & above (morgan core)
Pentium 4
Pentium 3
Celeron 566 mhz & above (coppermine & tualatin cores)

Processors that do not have SSE are as follows..

Duron 950 & below (spitfire core)
Athlon (K7, K75, & Thunderbird cores)
K6-3
K6-2
Celeron 533 MHz & below
Pentium 2
Pentium
All Via/Cyrix CPU's

Anything released before the processors listed of course does not have SSE.

Any version of Windows after '98 supports SSE (95' may just not sure). Any newer Linux distro should have support as well.

The Gromacs core also uses AMD’s 3Dnow! which was first introduced in their K6-2 CPU’s and underwent a facelift beginning with Thunderbird core Athlons & all Durons. The new version is often called 3Dnow! Professional, Extended3Dnow! and 3Dnow!+. However, this from Vijay Pande the leader of the project..

originally posted by Vijay Pande
I think the 3D-now support is minimal/none, and only 3D-now-extended is really going to give any speed up.

The Via C3 also has 3Dnow!

So what does SSE/3Dnow! do for your frame times? It depends on what processor you have. But generally, a whole damn lot. With any SSE capable chip your points will increase significantly, as much as 500%. :eek:

Why? Well Stanford has to set their point values and deadlines based on chips that do not have assembly optimizations (SSE/3Dnow!). If they didn't the chips that had no assembly ops and got Gromacs proteins would never make the deadlines. Their benchmarking machine is in fact a P2 based Celeron running at 500mhz.

Pentium 4s get an especially large boost from the Gromacs core. So much so it almost seems silly. Why do the Pentium 4’s get such a big improvement? It is not because of SSE2, Gromacs does not use SSE2..

originally posted by Vijay Pande
Gromacs does better with faster memory bandwidth (P4) and Tinker does better with faster and more complex FPUs (Athlon).

So with the new core the entire folding game has been changed. Gone are the days when MHz was just about the only thing that matters. Memory bandwidth, & onboard cache size now play a role in frame times. The above quotes are from this thread.

So you have a SSE enabled CPU and you want Gromacs all the time? No problem, all you have to do is turn on the -advmethods flag, which is done like so..

Console & GUI
First off you must be using the 3.14 client or later. Make a shortcut to the console. Right click the shortcut & select properties. The target line should look something like this

"C:\Program Files\Folding@Home\FAH3Console.exe"

All you have to do is add -advmethods to the end of that line like so.

"C:\Program Files\Folding@Home\FAH3Console.exe" -advmethods

consoleFlagProperties.png


Remember to leave the quotes in! Click Apply then click Ok. Start the client with that shortcut and your chances of receiving Gromacs proteins will be increased significantly.


Console & EMIII
Again you must be using the 3.14 client or later. EMIII is a 3rd party add-on for the Folding console. It was written & is updated by The WeatherMan, a folder for hardOCP. It can be found here. Starting with version 2.0.0 EMIII comes with support for such flags. This option has been known to be problematic however so make sure you have the latest version. Just click on the microscope in the upper left of the GUI, click your box name in the center pane, check 'use extra launch commands' and type

-advmethods

into the text box. Then click 'Save Editing' then 'Save & exit'. Restart EMIII and you should be good to go(after your current WU finishes).

EMIIIcommandline.gif


This method is only for clients that EMIII starts. For other folding rigs that you monitor with EMIII use the shortcut method above. Or if setup as a scheduled tasks, add the command line switch to the 'run' box.

The -advmethods flag has a broader purpose than just giving you gromacs WU's. It is an indication to the assignment servers that your client wants to participate in the newest projects & let your computer run the newest code coming out of Stanford. Commonly called beta testing. At the time of this writing that means you'll be getting Gromacs WU's. In the future, it could mean something completely different. Also, Gromacs aren't always around! Sometimes you will get a Tinker WU here and there and other times there are no active Gromacs projects at all. During these times you'll get normal WUs just like everybody else.

Another thing you need to know about the Gromacs core is that it works your processor harder than the Tinker core did so your overclock that was stable while folding Tinker WUs may not be stable while folding Gromacs WUs. So if your processor gets a Gromacs WU and it errors, this is what you need to do. First off back your overclock off a bit and then download prime95. Run prime95's torture test for 24 hours. If it does not make it to 24 hours back your O/C off bit by bit until it does. If you CPU can pass a 24-hour prime95 torture test, it should be able to handle the Gromacs WUs without errors. Although I've personally seen CPUs that have been stable forever in prime that choke on Gromacs. So you may need to back your overclock down ever further.

Before you start folding again you need to do one more thing. You see, the guys at Stanford built a safeguard into the current client that will turn off your assembly optimizations given instability. you'll know that this has happened by looking at your log file or the command line window. If your assembly optimizations is on you should see this..


...........
[21:27:32] Looking at optimizations...
[21:27:32] Files status OK
[21:27:33] Done: 248149 -> 1325401 (decompressed 534.1 percent)
[21:27:33] - Project: 903 (Run 16, Clone 32, Gen 7)
[21:27:33] Writing local files:
[21:27:33] Assembly optimizations on if available
[21:27:33] Entering M.D.
[21:27:39] arc file found...
[21:27:39] ... and we'll restart from it.
[21:27:39] Protein: PTrpCage
[21:27:40] Writing local files
[21:27:40] Completed 158000 out of 500000 steps (31%)
[21:31:08] Writing local files
............


If your assembly optimizations are off the line highlighted in red will not be present. Assembly Ops are of course ON by default in chips that support it. Assuming you've done the prime95 stability tests above, and you're confident of the stability of your system, here is how you turn it back on. Delete the 'core.dat' file in your folding@home folder. It's as simple as that. It should turn the assembly optimizations back on when restarted.

There is also a flag you can use to force it on, that being -forceasm. If your doing this in concert with -advmethods just put it right on the end with a space in between, like so in a shortcut for Console & GUI..

"C:\Program Files\Folding@Home\FAH3Console.exe" -advmethods -forceasm

And your 'use extra launch commands' should look like this in EMIII

-advmethods -forceasm

IMPORTANT! DO NOT use the -forceasm flag if you haven't thoroughly tested your systems stability. The only time you should use this flag is when you don't really need to.

Also, your assembly optimizations will be turned off if you system is generally unstable. Like if you get a lot of lock ups, you have to do a lot of hard reboots, or you have a lot of OS crashes. If you have this problem for god's sake fix it! If you can't consider using the -forceasm flag or turning off folding when participating in whatever it is that crashes your system.

Links
The official Gromacs site
The Gromacs FAQ at Stanford
An excellent thread to help you if you are having Gromacs stability problems.

Comments & corrections welcome, thanks.
 
Last edited:
Excellent post Gnerma. This may level out the playing field for all of the Intel people. Also a good point about the overclock. The memory speed does play a more important role with Gromacs than it does with the Tinker core. I would encourage everyone to read that post more than once.
 
Good job Gnerma.

You don't have to delete your work if the optimizations get turned off, though. You just have to shut down the client, delete core.dat and restart the client.

Glad you clarified this issue. I was under the impression that the Gromac core used SSE2 and that was why it was faster. Thanks for explaining it!
 
Do you need to have already completed a Gromacs (core_78) wu to be able to use the -advmethods parameter? On both my XP machines, a shortcut made with the parameter added wont start?!? A DOS window blinks then disappears. No F@H processes are running in the background after this happens either.....
Any ideas?

btw, great write up! :)
 
advmethods

Same happened to me. Seems the text-only console doesn't work the same way. I just tried doing the method thru EM3, but have to wait until my current Wu finishes to see if it works. Wonder if EM3 will do this to all my home rigs. Only 2 of the 4 would benefit if it did.
 
Indeed a great write up! So given this info mb selection for future farming may need to be reconsidered.
 
What version of the folding@home client are you having trouble with. Do you have 3.14? Are you putting a space between the command and -advmethods. (Example: "C:\Program Files\Folding@Home\FAH3Console.exe" -advmethods)
 
Arkaine23, EMIII probably won't put the switch on your remote machines I'm not sure. I thought EMIII could only monitor remote machines and thats it..

Are you guys still having the problem?
 
advmethods

Yeah, EM3 can start the clients from all of the LAN comps, but it'll start them on the comp running EM3- so you'd have multiple clients going from one machine, not good. That's controlled by the check boxes at the top. Only check the comp running EM3.

The shortcut method did not work for me on the text-client... perhaps b/c I already had a tinker WU going? It would open the DOS window for a second and then shut it. Yes, I was using a space -advmethods as the switch at the end of the target line. I'll attempt to let EM3 start it up with the -advmethods switch, but later. I'm not going to be home again for a few days so if I tried it now like that and EM3 had the same problem I experienced with altering the shortcut, my rig would not be folding until I came home again. I'll try it when I'm home and near the end of a tinker WU, towards the end of the week.
 
Hmm added some images that I had meant to add right from the beginning. They may help you, they may not. By the way Arkaine, the text-client is the client I know this works on. I haven't tested it on Stanford's GUI client. You are using the 3.14 client right? I'm pretty sure you have to be to use the switch.
 
clients

I'm pretty sure I upgraded to 3.14, but there's so many boxen maybe I didn't. Will check it later when I'm home. That very well may be the problem.
 
Even tho the 3.14 client was in use, I redownloaded it and that seems to have been the trouble. Since downloading it, the shortcut works using the added parameters. Thanx for the help!
 
Gromacs

Tested it out on a P3 and saw a 17% improvement in points per week vs. P180/182 Wu's.

Trying it out on a Duron Spitfire for the heck of it. Started a thread where we can compare Tinker vs. Gromacs times for various CPU's.
 
Last edited:
I have only been folding for a week but have read this post and one of the links to it, so this is what I need to do to my understanding:

I need to enable the shortcut command. I know how to do that.

My question is do I need the Electron Microscope monitor to use the core 78 or am I ok without it. I ask because I already have FoldMonitor 5.1.4. Second question is, for the second flag, do I just add that behind the first flag in the shortcut.

Other importants things:
I am running a 1.3 P4 stock, so no stability problems there.
I have 512 PC800 RDRAM, so I think that will help.
I am running F@H 3.14

I think I may have answered my own question, but I want to be sure I am making the most of my foldings.

Thanks
 
Which version of the Folding@Home client are you running and how are you running it?

If you are using the GUI version, then you probably have a shortcut to it on your startup folder. When you see the shortcut, right click on it and go to "Properties". You will see a field that says. "C:\Program Files\......."
Just add -advmethods to the end of that command line
It should now read "C:\Program Files\....." -advmethods

Now, the next time you start the program, it will be running with -advmethods. Of course, it won't download a new core and new work unit until it finishes the work unit it is working on, now.

If you are using the text-only console version, you do the same thing. Modify the shortcut that starts the program.

You don't have to use EMIII.
 
Your good to go Mowman. No you don't need to use electron microscope. I'm not exactly sure how fold monitor works but if there is no built in command line options just try it with the shortcut.

Yes just add the second flag behind the first flag, with a space in the middle. :beer:

EDIT - He he all three of us attacked him at once!
 
Back