ATI Application
log in

Advanced search

Message boards : Number crunching : ATI Application

1 · 2 · 3 · 4 . . . 9 · Next
Author Message
Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 27 - Posted: 5 Jul 2009, 16:43:05 UTC

This thread is for discussing anything related to the ATI version of the Collatz application.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 28 - Posted: 5 Jul 2009, 17:21:23 UTC - in response to Message 27.

I am currently working on v1.08 of the ATI application. This version uses the CAL/Brook 1.4 SDK. As such, it requires version 9.2+ of the Catalyst drivers and copying and renaming several DLLs.

I'd like to thank Gipsel once again for sharing portions of the MW ATI code which should help with limiting the number of concurrent WUs running on multi-processor machines.

Those of you who have been waiting patiently for a Win32 version will need to wait no longer. Version 1.08 will have both 32 and 64 bit versions for Windows.

Features of the new version:
1. Should work with multiple ATI cards. I say should because I don't actually have a machine with two cards in it so I have no real way of knowing for sure. Someone out there must have an X2 card or multiple ATI cards in a box, right?

2. As part of the multi-device support, you now have the option to exclude a specific device, e.g. run MW on GPU 1 and Collatz on GPU 2. To do this, you need to change the Collatz app_info.xml and add a -xN cmdline parameter where N is the number of the card you wish to exclude. For example, to exclude the first GPU device, you would change it to

<cmdline>-x1</cmdline>
which should exclude the first GPU and allow it to only run on the second GPU.

2. Additional detailed information about the GPU and the Collatz app version is logged.

3. Only 1 WU will run per GPU device. This eliminates the problem of quads or V8's crashing when trying to run a WU for each CPU. Running more than one does not appear to gain any performance improvements.

Profile Crunch3r
Volunteer moderator
Project developer
Project tester
Avatar
Send message
Joined: 30 Jun 09
Posts: 219
Credit: 7,515,635,101
RAC: 12,688
Message 29 - Posted: 5 Jul 2009, 20:13:06 UTC - in response to Message 28.


3. Only 1 WU will run per GPU device. This eliminates the problem of quads or V8's crashing when trying to run a WU for each CPU. Running more than one does not appear to gain any performance improvements.


Are you sure about this ?
From what i've seen,running two WUs at once seemed to be more efficient than running only one.

Running one WU at a time resulted in crunch times of 900 to 930 sec /WU.
Running two WUs at once took about 1600 sec /WU.

Anyway, nice to see some fix for the crashes on V8 machines is available now.



____________

Team BOINC United.Join Science that matters.

Profile Gipsel
Volunteer moderator
Project developer
Project tester
Send message
Joined: 2 Jul 09
Posts: 279
Credit: 77,107,343
RAC: 77,502
Message 30 - Posted: 5 Jul 2009, 23:44:17 UTC - in response to Message 28.

I am currently working on v1.08 of the ATI application. This version uses the CAL/Brook 1.4 SDK. As such, it requires version 9.2+ of the Catalyst drivers and copying and renaming several DLLs.

If you use the SDK 1.4 you don't need to copy and rename the dlls. That's only the workaround for getting the newer drivers to work with an application build with the SDK 1.3.

It would be nice if the use of SDK 1.4 also fixes the stability issues of the newer drivers under WinXP, but actually I doubt it (which is the reason I don't use the 1.4 for MW, yet).

Profile medictom
Volunteer tester
Send message
Joined: 29 Jun 09
Posts: 5
Credit: 24,988,271
RAC: 0
Message 31 - Posted: 6 Jul 2009, 3:00:06 UTC

I currently have the app only doing CPU work on my I7 core, with the ATI card, it just keeps locking or crashing the ATI card, no matter if I have changed .dll files or not, since MW is working fine on it, and I even disable it, no tasks, aborted all MW work and restarted MW, and still Collatz will crash the GPU, I have 8 out of 10 tasks on the I7 running, slower than I would like, but still not crashing, and I will get credit for them (hopefully).!!

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 35 - Posted: 10 Jul 2009, 17:34:41 UTC
Last modified: 10 Jul 2009, 17:40:56 UTC

Version 1.08 has been released.

Note: I do not have a 32bit machine with an ATI card in it, so the Win32 ATI app is 100% UNTESTED. If someone does use it and it works (or doesn't) please let me know.

If you look at the app_info with the new version, you will notice some command line parameters. They include:

-xN where N is from 0-3 and is the card you with to eXclude for GPU processing. To exclude multiple, just add more -x's. For example, -x0 -x1 -x2 would exclude devices 0 through 2.

-kN where N is the square root of the number of kernel iterations per block. The default is 128. Larger numbers (256, 384, 512) means the kernel will run longer but uses more GPU memory. Smaller numbers (16, 32, 64, or 128) will shorten the run time per iteration (but potentially increase the overall run time since it needs to do more iterations to do the same amount of work). Using a smaller value will use less GPU memory.

-nN (e.g. -N2) is the number of simultaneous WUs that will run at a time.

-wN sets the number of milliseconds 0 through 999999 (but only 1-50 are suggested). The default is 0 which tells the app to calculate the value automatically using 90% of the average GPU time of the first 100 iterations. If set too high and your CPU will still be sleeping when the GPU is finished. If set too low and your CPU utilization will increase dramatically as the CPU will check non-stop if the GPU is finished. If calculated automatically, the calculated value is displayed (in seconds) in the WU result which should give you an idea of what to set the value to manually.


The app_info has the avg_cpus set to 0.5 by default even though it uses less than 3% of the cpu. This value essentially tells the computer how many WUs to start at a time (the -n switch controls how many actually run). Starting too many may cause a GPU crash.

The 0.5 value works well if running 2 WUs on a single core machine. On quads with only 1 ATI card, I would suggest setting avg_cpus to 1.0. If the machine is a dual core and you want to run 2 WUs simultaneously on a single ATI card, it should also be set to 1.0.

Profile Gipsel
Volunteer moderator
Project developer
Project tester
Send message
Joined: 2 Jul 09
Posts: 279
Credit: 77,107,343
RAC: 77,502
Message 36 - Posted: 10 Jul 2009, 18:17:53 UTC - in response to Message 35.

This command line parameters look somehow familiar ;)

Profile Crunch3r
Volunteer moderator
Project developer
Project tester
Avatar
Send message
Joined: 30 Jun 09
Posts: 219
Credit: 7,515,635,101
RAC: 12,688
Message 37 - Posted: 10 Jul 2009, 18:54:00 UTC - in response to Message 36.
Last modified: 10 Jul 2009, 18:54:19 UTC

The 1.08 x64 app doesn't work. It crashes after a few sec.

http://boinc.thesonntags.com/collatz/result.php?resultid=10479
____________

Team BOINC United.Join Science that matters.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 38 - Posted: 11 Jul 2009, 1:56:33 UTC - in response to Message 37.

I discovered my wife's laptop has a HD 3200 card in it and Vista Home 64 bit so at least I can duplicate the error. I think it is in the section of code which is trying to create the semaphore and mutex.

The app works OK on Win2K3 Server x64 and on XP 64 but not Vista - or at least not Vista x64 with Catalyst 9.6.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 39 - Posted: 11 Jul 2009, 2:03:07 UTC - in response to Message 36.

This command line parameters look somehow familiar ;)


When in Rome...

I figured that, since most of the parameters are related to the multi-device code which you so graciously provided, I might as well stick with similar parameters as well, especially since most ATI users will already be familiar with them from MW apps.

Profile medictom
Volunteer tester
Send message
Joined: 29 Jun 09
Posts: 5
Credit: 24,988,271
RAC: 0
Message 40 - Posted: 11 Jul 2009, 2:06:52 UTC - in response to Message 37.

The 1.08 x64 app doesn't work. It crashes after a few sec.

http://boinc.thesonntags.com/collatz/result.php?resultid=10479


I downloaded the new app too, deleted the 1.07 app in the file, and put the 3 files from the zip in the folder...no 1.08 app is running, the 1.07 app is back in the data folder, and it is running the 1.07 app...suggestions? what did I do wrong? trying to put it on the 4890...

Profile Mumps [MM]
Volunteer tester
Avatar
Send message
Joined: 24 Jun 09
Posts: 16
Credit: 197,247,161
RAC: 88
Message 41 - Posted: 11 Jul 2009, 2:11:17 UTC

Oh well. I have to agree here. My Windows 7 x64 host doesn't like 1.08 either. But then, it didn't have any luck with any of the earlier releases either...

Profile Crunch3r
Volunteer moderator
Project developer
Project tester
Avatar
Send message
Joined: 30 Jun 09
Posts: 219
Credit: 7,515,635,101
RAC: 12,688
Message 43 - Posted: 11 Jul 2009, 11:49:12 UTC - in response to Message 41.

That ain't cool at all. I hope you can fix it asap.

Or i'll pull that ATI card and smash it on the floor.
____________

Team BOINC United.Join Science that matters.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 44 - Posted: 11 Jul 2009, 13:23:15 UTC - in response to Message 43.

I know Mumps was having problems with v1.07 on Win7 x64. Did the v1.07 ATI version work on Vista x64? Or, has it never worked at all on Vista?

Profile Crunch3r
Volunteer moderator
Project developer
Project tester
Avatar
Send message
Joined: 30 Jun 09
Posts: 219
Credit: 7,515,635,101
RAC: 12,688
Message 45 - Posted: 11 Jul 2009, 13:45:09 UTC - in response to Message 44.
Last modified: 11 Jul 2009, 13:45:19 UTC

I know Mumps was having problems with v1.07 on Win7 x64. Did the v1.07 ATI version work on Vista x64? Or, has it never worked at all on Vista?


1.07 was working on Vista x64 using catalyst 9.4/9.5 . I didn't try catalyst 9.6 since i do not think that it's related to that problem.
____________

Team BOINC United.Join Science that matters.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 46 - Posted: 11 Jul 2009, 16:36:23 UTC - in response to Message 45.

I know Mumps was having problems with v1.07 on Win7 x64. Did the v1.07 ATI version work on Vista x64? Or, has it never worked at all on Vista?


1.07 was working on Vista x64 using catalyst 9.4/9.5 . I didn't try catalyst 9.6 since i do not think that it's related to that problem.


I don't think the version is the problem either. When I run a WU manually outside of BOINC using v1.08 it runs fine on Vista. That's good because I know it works and generates proper output even with a HD 3200 ATI card.

The bad part is that there isn't a real good way to debug it when BOINC is running the WUs so I'm in the process of building an ATI version with extreme verbose logging that I hope will lead me to the problem. Luckily it errors out within a few seconds so the log shouldn't be too bad.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 52 - Posted: 11 Jul 2009, 18:05:31 UTC

Here is the new version: ATI v1.09 for Vista x64

It is running fine on a core 2 w/ a HD 3200 card on Vista Home x64 edition using the same settings as in the app_info.xml in the zip file above. (OK, make that slowly, but without errors.) Running 2 WUs at a time (4 started but only 2 really running) video response is very sluggish on the 3200 card.

With the Catalyst driver 9.6 I did have to shut down the Catalyst Control Center which Vista was kind enough to hide in the taskbar since it considers it an "unused item".

Versions 1.07, 1.08, and 1.09 are all defined in the app_info.xml so if you make changes to the parameters, make sure to make them in each version listed.

On a quad core with one ATI card, I would highly recommend setting the avg_cpus in the app_info to 1.0 instead of 0.5 and leaving the number of WUs set to 2 (-n2) in the command parameters. That will allow it to run 2 WUs with another 2 started but not actually running.

In other words:
<avg_ncpus>1.0</avg_ncpus>
and
<cmdline>-k128 -n2</cmdline>

If it works OK, then you can try using -k256 or -k384 which may shave a few seconds off each WU. If you feel really brave, you can try -n3 and run 3 at a time.

If it does not finish, try putting the files in some other folder and copying one of the WU files (e.g. collatz_nnnnnnnnnn_nnn_n) there as well. Rename the wu file to in.txt and try running the exe manually (outside of boinc) and see if it errors out there (look in the stderr.txt file when it is finished).

Lastly, the verbose parameter is -v which will log many, many megabytes of data in the stderr file. It will literally log one line for every method called. Please turn this on only for debugging a single WU by suspending all tasks but one. For example:

<cmdline>-k128 -n1 -v</cmdline>

If this does work, let me know and I'll add a link in the opt apps page.

Profile Crunch3r
Volunteer moderator
Project developer
Project tester
Avatar
Send message
Joined: 30 Jun 09
Posts: 219
Credit: 7,515,635,101
RAC: 12,688
Message 54 - Posted: 11 Jul 2009, 18:32:53 UTC - in response to Message 52.

1.09 works but it's slow,very slow. So that one is no option either.

____________

Team BOINC United.Join Science that matters.

Profile Slicker
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist
Avatar
Send message
Joined: 11 Jun 09
Posts: 2525
Credit: 740,580,099
RAC: 2
Message 59 - Posted: 11 Jul 2009, 20:27:23 UTC - in response to Message 54.

1.09 works but it's slow,very slow. So that one is no option either.


OK, at least it worked. Here's the same version but with debug turned off for the linker and the verbose output lines commented out:

http://boinc.thesonntags.com/collatz/download/collatz_1.09b_windows_x86_64__ati_SSE2.zip

Profile Crunch3r
Volunteer moderator
Project developer
Project tester
Avatar
Send message
Joined: 30 Jun 09
Posts: 219
Credit: 7,515,635,101
RAC: 12,688
Message 63 - Posted: 11 Jul 2009, 21:05:25 UTC - in response to Message 59.

1.09 works but it's slow,very slow. So that one is no option either.


OK, at least it worked. Here's the same version but with debug turned off for the linker and the verbose output lines commented out:

http://boinc.thesonntags.com/collatz/download/collatz_1.09b_windows_x86_64__ati_SSE2.zip


Yeah, that one's way faster :) ~12 min/WU running two wus at once.

____________

Team BOINC United.Join Science that matters.

1 · 2 · 3 · 4 . . . 9 · Next
Post to thread

Message boards : Number crunching : ATI Application


Main page · Your account · Message boards


Copyright © 2018 Jon Sonntag; All rights reserved.