New: Need confirmation How to run multiple threads on a GPU?

If you're new to FAH and need help getting started or you have very basic questions, start here.

Moderators: Site Moderators, FAHC Science Team

7im
Posts: 10179
Joined: Thu Nov 29, 2007 4:30 pm
Hardware configuration: Intel i7-4770K @ 4.5 GHz, 16 GB DDR3-2133 Corsair Vengence (black/red), EVGA GTX 760 @ 1200 MHz, on an Asus Maximus VI Hero MB (black/red), in a blacked out Antec P280 Tower, with a Xigmatek Night Hawk (black) HSF, Seasonic 760w Platinum (black case, sleeves, wires), 4 SilenX 120mm Case fans with silicon fan gaskets and silicon mounts (all black), a 512GB Samsung SSD (black), and a 2TB Black Western Digital HD (silver/black).
Location: Arizona
Contact:

Re: New: Need confirmation How to run multiple threads on a

Post by 7im »

Again, fah is very different than other DC projects. The next version of gromacs software, that will eventually make its way in to a new fahcore, does have significant speed advantages, according to gromacs.org. And the speed comes from FMA support (part of AVX). We just won't know the real world speedup until released, like any software update. Could be .2x, 2x, or 20x.
How to provide enough information to get helpful support
Tell me and I forget. Teach me and I remember. Involve me and I learn.
bruce
Posts: 20824
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: New: Need confirmation How to run multiple threads on a

Post by bruce »

What percentage of home computers have the latest generation hardware? ... the previous generation hardware? ... hardware from several generations ago? (etc.) Multiply those numbers by some factor that describes the optimization level for each class of hardware and add them all together and you'll approximate this massive distributed supercomputer that runs FAH. If there are a lot of slightly older computers and a few of the latest, it doesn't pay for FAH to optimize for the latest yet, but it will as people upgrade... yet a lot of home computers don't get upgraded if they're still working for what they were originally purchased for.

GPUs and SSE require a lot of work from the programmers, but it can produce very good DC code. As I understand it (and I could be wrong here) it's easier for a compiler to create acceptable DC code for AVX and AVX2 (i.e.-less efficient than a good programmer could do, but if the hardware is inherently faster, it may work out okay). Unfortunately the code has to be compiled with a variety of specific options depending on who makes your CPU and which features it has or does not have and other factors like that creating a multitude of FahCores that have to be tested and then supported.

When commonplace hardware changes FAH has to re-do code to take advantage of the new stuff but they have to continue supporting all the existing hardware from previous generations -- based on the real popularity of each type of hardware that needs it's own type of optimization. Somebody that doesn't have an AVX computer but they do have an SSE computer won't be able to run a new FahCore supporting AVX whenever one is produced. The same is probably true for AVX2 vs. AVX(1).
StitchExperimen
Posts: 37
Joined: Thu Jul 04, 2013 9:29 pm

Re: New: Need confirmation How to run multiple threads on a

Post by StitchExperimen »

For people reading this the web link has to include the www for http://www.gromacs.org or it doesn't work.
http://www.gromacs.org

I believe AVX origionally released in Q1 2011 and then Q3 2011 AMD was a 20% boost.
But development of GPU sorta places cpu on a back burner of code development since it appears that AVX3 isn't capable of a 300% boost of DC.
7im
Posts: 10179
Joined: Thu Nov 29, 2007 4:30 pm
Hardware configuration: Intel i7-4770K @ 4.5 GHz, 16 GB DDR3-2133 Corsair Vengence (black/red), EVGA GTX 760 @ 1200 MHz, on an Asus Maximus VI Hero MB (black/red), in a blacked out Antec P280 Tower, with a Xigmatek Night Hawk (black) HSF, Seasonic 760w Platinum (black case, sleeves, wires), 4 SilenX 120mm Case fans with silicon fan gaskets and silicon mounts (all black), a 512GB Samsung SSD (black), and a 2TB Black Western Digital HD (silver/black).
Location: Arizona
Contact:

Re: New: Need confirmation How to run multiple threads on a

Post by 7im »

20% boost in what? Any change has to tie in the how FAH processes work units. Here is how this ties in...

FMA in AVX doubles the SSE bit width, so theoretically, FMA support could crunch double the number of SSE instructions per clock cycle. This means as much as a 100% speed increase because FAH uses so much SSE code. Of course real world numbers never live up to the marketing hype. ;)
How to provide enough information to get helpful support
Tell me and I forget. Teach me and I remember. Involve me and I learn.
StitchExperimen
Posts: 37
Joined: Thu Jul 04, 2013 9:29 pm

Re: New: Need confirmation How to run multiple threads on a

Post by StitchExperimen »

AVX1 has been in use other DC projects and as I recall the gain was 20 percent. From 128 bit register to 256 bit register was one big change at the time and the ability to to do the math equation c=a+b saving both registers instead of a=a+b.

Test info in some real world tasks.
http://www.sisoftware.net/?d=qa&f=cpu_intel_sb
P5-133XL
Posts: 2948
Joined: Sun Dec 02, 2007 4:36 am
Hardware configuration: Machine #1:

Intel Q9450; 2x2GB=8GB Ram; Gigabyte GA-X48-DS4 Motherboard; PC Power and Cooling Q750 PS; 2x GTX 460; Windows Server 2008 X64 (SP1).

Machine #2:

Intel Q6600; 2x2GB=4GB Ram; Gigabyte GA-X48-DS4 Motherboard; PC Power and Cooling Q750 PS; 2x GTX 460 video card; Windows 7 X64.

Machine 3:

Dell Dimension 8400, 3.2GHz P4 4x512GB Ram, Video card GTX 460, Windows 7 X32

I am currently folding just on the 5x GTX 460's for aprox. 70K PPD
Location: Salem. OR USA

Re: New: Need confirmation How to run multiple threads on a

Post by P5-133XL »

Until there is a core it is just total speculation what performance gains are going to occur with AVX. Is someone volunteering to write one? It is not a trivial task.
Image
bruce
Posts: 20824
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: New: Need confirmation How to run multiple threads on a

Post by bruce »

In the early days of GROMACS, it used part x87 code for floating point operations. When 3DNow! and SSE were introduced, hand optimized assembly language inner loops were introduced. In theory, SSE could do floating point 4x as fast but to do that, the programmer had to pack the data for four sets of operations into registers before telling SSE to perform the simultaneous operations on all four segments of the registers. Then you had to move the data back to four result locations ... and all with a minimum of conditional branch operations. Sometimes the number of identical operations wasn't divisible by 4 and sometimes other operations took time, too, but in spite of real-world constraints, FAH ran 3.8x as fast.

If I read the gromacs.org objectives, adding the AVX code means that SSE code will be REMOVED from future versions. As I said above, that puts a bit of a kink in the plans for folding on today's most popular hardware. The trick is activating enough cores to simultaneously support everybody who wants to fold.
StitchExperimen
Posts: 37
Joined: Thu Jul 04, 2013 9:29 pm

Re: New: Need confirmation How to run multiple threads on a

Post by StitchExperimen »

I know that some projects the manipulation cannot be converted over to GPU and it's beyond me at this point in time. But Help Conquer Cancer was a 6 year project with a lot of mechanical groundwork done by high speed robotic automation creating 300 million samples that were then put through x-ray. In the latter 8 months when the GPU started coming on board and all types of GPU most AMD got on board and the growth grew rapidly the project was finished. One person with dual Radeon 7950s had completed 1% of the project. What this means is 100 dual 7950's could have completed the whole project. HD 7950's can be had for $300. That's 100 machines that can put a serious dent in a computing project. If your worried about noise from cooling 2 GPUs then just make 200 machines.
Now the draw back to this example is that parallel wu could be processed (8) and the wu time would decrease to 30 seconds.
But it seems I'm just joining when Core_17 is coming out and I don't know what your situation is on being able to deliver but if you can I might, might be able to add some more from another team I use to associate with while doing Help Conquer Cancer. They helped me write and re-write the ever changing Boinc software, config.xml file.
Also when are they going to label these 8900 files?
bruce
Posts: 20824
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: New: Need confirmation How to run multiple threads on a

Post by bruce »

Yes, the 7950 is a powerful piece of equipment, but if Help Conquer Cancer can be completed is a relatively short time by a few hundred devices, it's small compared to FAH. FAH runs many dozens of projects simultaneously and the scientists are constantly starting new projects because they keep finding new things to study. They've said that they cannot see far enough in the future to see FAH running out of new things to study. It's nice when a project that was once predicted to be a 6 year can be completed much more quickly, but that's still a tiny bit of what's unknown about protein dynamics.

The role of the software developer is to make the most of your hardware. The role of the Assignment Server is to direct every computer to a piece of analysis that each donated computer can help with. The role of the scientists is to formulate new questions in terms that the Donors can help with and to summarize what has been learned into a scholarly paper that can be published for everyone to read. [See http://en.wikipedia.org/wiki/Scientific_publication].

See also What has the project completed so far? and follow the link to the Results page if you're interested.
error-id10t
Posts: 3
Joined: Sat Jul 06, 2013 3:03 am

Re: New: Need confirmation How to run multiple threads on a

Post by error-id10t »

Sorry about the late response, thanks very much for the advise. Good reading the additional questions too.
Post Reply