low c/s and no fan speed
#1
I've recently put together a new PC that uses a 5970 and two 5870s (4 GPUs total, crossfire bridges are not being used). This PC uses Ubuntu 12.04LTS and AMD v12.8 drivers that were installed per these directions. The only deviation I had from those instructions was issuing the command "sudo aticonfig -f --adapter=all --initial" so that all four GPUs would initialize.

Here is an output of lspci:
Code:
lspci | grep AMD
03:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Hemlock [Radeon HD 5900 Series]
03:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Cypress HDMI Audio [Radeon HD 5800 Series]
04:00.0 Display controller: Advanced Micro Devices [AMD] nee ATI Hemlock [Radeon HD 5900 Series]
05:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Cypress XT [Radeon HD 5870]
05:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Cypress HDMI Audio [Radeon HD 5800 Series]
08:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Cypress XT [Radeon HD 5870]
08:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Cypress HDMI Audio [Radeon HD 5800 Series]

and fglrxinfo:
Code:
fglrxinfo
display: :0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5900 Series
OpenGL version string: 4.2.11762 Compatibility Profile Context



display: :0  screen: 1
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5900 Series
OpenGL version string: 4.2.11762 Compatibility Profile Context



display: :0  screen: 2
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5800 Series
OpenGL version string: 4.2.11762 Compatibility Profile Context



display: :0  screen: 3
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5800 Series
OpenGL version string: 4.2.11762 Compatibility Profile Context

and aticonfig --list-adapters
Code:
sudo aticonfig --list-adapters
* 0. 03:00.0 ATI Radeon HD 5900 Series
  1. 04:00.0 ATI Radeon HD 5900 Series
  2. 05:00.0 ATI Radeon HD 5800 Series
  3. 08:00.0 ATI Radeon HD 5800 Series

* - Default adapter

I was excited to see the capabilities/horsepower of my new PC, so I executed an md5 benchmark in hashcat-lite v0.10.

Here is the output of that benchmark:
Code:
sudo ./oclHashcat-lite64.bin -b --benchmark-mode=1 -n 160 --gpu-loops=1000 -m 0
oclHashcat-lite v0.10 by atom starting...

Password lengths range: 1 - 55
Watchdog: Temperature abort trigger disabled
Watchdog: Temperature retain trigger disabled
Device #1: Cypress, 512MB, 725Mhz, 20MCU
Device #2: Cypress, 512MB, 725Mhz, 20MCU
Device #3: Cypress, 512MB, 725Mhz, 20MCU
Device #4: Cypress, 512MB, 725Mhz, 20MCU

NOTE: Runtime limit reached, aborting...


Hash.Type....: MD5
Speed.GPU.#1.:  4931.7M/s
Speed.GPU.#2.:  4781.1M/s
Speed.GPU.#3.:  5114.0M/s
Speed.GPU.#4.:  5266.1M/s
Speed.GPU.#*.: 20066.2M/s

Wow! I was very happy with my bechmark results considering the budget for it was relatively low. I thought it was odd that the detected memory was half of what the GPUs have, but it didn't bother me too much.

To get an idea of oclHashcat-plus64 performance, I issued a simply 6 keyspace brute force attack against the example0.hash list that comes in the zip file package.

Here are the results:
Code:
sudo ./oclHashcat-plus64.bin -a 3 -i -n 160 --gpu-loops=1000 example0.hash ?a?a?a?a?a?a
oclHashcat-plus v0.09 by atom starting...

Hashes: 6494 total, 1 unique salts, 6494 unique digests
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes
Workload: 1000 loops, 160 accel
Watchdog: Temperature abort trigger set to 90c
Watchdog: Temperature retain trigger set to 80c
Device #1: Cypress, 1024MB, 725Mhz, 20MCU
Device #2: Cypress, 1024MB, 725Mhz, 20MCU
Device #3: Cypress, 1024MB, 725Mhz, 20MCU
Device #4: Cypress, 1024MB, 725Mhz, 20MCU
Device #1: Kernel ./kernels/4098/m0000_a3.Cypress_938.2_1.4.1741.kernel (568644 bytes)
Device #2: Kernel ./kernels/4098/m0000_a3.Cypress_938.2_1.4.1741.kernel (568644 bytes)
Device #3: Kernel ./kernels/4098/m0000_a3.Cypress_938.2_1.4.1741.kernel (568644 bytes)
Device #4: Kernel ./kernels/4098/m0000_a3.Cypress_938.2_1.4.1741.kernel (568644 bytes)

[s]tatus [p]ause [r]esume [b]ypass [q]uit => WARN: ADL_Overdrive5_FanSpeedInfo_Get(): -1

Status.......: Exhausted
Input.Mode...: Mask (?a?a?a?a?a?a)
Hash.Target..: File (example0.hash)
Hash.Type....: MD5
Time.Running.: 1 min, 22 secs
Time.Left....: 0 secs
Time.Util....: 82031.5ms/500.7ms Real/CPU, 0.6% idle
Speed........:  8961.1M c/s Real,  9209.2M c/s GPU
Recovered....: 56/6494 Digests, 0/1 Salts
Progress.....: 735091890625/735091890625 (100.00%)
Rejected.....: 0/735091890625 (0.00%)
HWMon.GPU.#1.: 97% Util, 83c Temp, N/A Fan
HWMon.GPU.#2.: 94% Util, 82c Temp, N/A Fan
HWMon.GPU.#3.: 83% Util, 79c Temp, N/A Fan
HWMon.GPU.#4.: 76% Util, 55c Temp, N/A Fan

There are three issues seen:
  1. WARN: ADL_Overdrive5_FanSpeedInfo_Get(): -1
  2. low c/s compared to lite's benchmark (8961.1M c/s Real, 9209.2M c/s GPU)
  3. the two 5870s are only at 725mhz (I presume this is because of my 5970 though, so it's probably not a problem, just a configuration)

I overcame the fan issue by manually setting my fans to 100%. The command I used for that was sudo aticonfig --pplib-cmd "set fanspeed all 100". While this method works, it would be nice if I did not have to manually set this everytime. Has anyone else experienced this issue before? I tried searching the forums, but did not find anything.

The low c/s is very disappointing. Why would the benchmark in lite be so much higher? For grins and giggles, I purged my fglrx/12.8 installations and installed 12.10. Doing this was even worse because only GPU.#1 would work, so I rolled back to 12.8.

I love my new set up, but it seems the numbers are not where they should be. Sad

Does anyone have troubleshooting suggestions? I've tried my best to investigate and troubleshoot on my own, but I'm completely stumped.

Thanks in advance for any assistance!

edit-- possible "DOH!" on my part.... could the reason be because this is 'technically' a mixed GPU set up?
#2
Quote:There are three issues seen:

1. WARN: ADL_Overdrive5_FanSpeedInfo_Get(): -1
2. low c/s compared to lite's benchmark (8961.1M c/s Real, 9209.2M c/s GPU)
3. the two 5870s are only at 725mhz (I presume this is because of my 5970 though, so it's probably not a problem, just a configuration)

Your three issues aren't issues. Everything is just fine.

1. You will receive this "error" on a 5970 because the 5970 has two GPUs and only one of them knows about the fan. Attempts to get info about the fan or set the fan speed through the slave BIOS on a 5970 will fail. It's just something you will have to live with. Or disable Hashcat's fan control.

EDIT: However, you should be able to get/set fan speed on your 5870s. You should flash those with a newer BIOS.

2. You cannot compare the speed of lite to plus. Lite is optimized for single hash brute force, and thus can achieve much higher numbers than the multihash kernels in plus are capable of. Your numbers are right where they should be. Also, using benchmark mode with lite will ignore your -n and --gpu-loops values, and will use -n 800 --gpu-loops 1024 for -m 0. You can get better numbers out of plus if you use the same settings.

3. Mixed clock rates are currently not supported. Your cards will run at whatever the lowest common clockrate is.
#3
I knew that lite was optimized for single hashes, but I did not anticipate such a large discrepency between lite and plus. Now that I'm looking at the benchmarks listed on lite and plus, I see the differences.

Thank you for the information. I'll be sure to read more before posting next time.
#4
Well, I've set all GPU clocks to the same speed (850mhz,1200mhz) for a slight performance increase. This was accomplished with the command: aticonfig --adapter=all --od-setclocks=850,1200. You'll have to use aticonfig --odcc as well.

My XFX 5970 2GB Black Edition seems to handle 850mhz/1200mhz with no problems, but I'm not sure if this will be the case with all 5970s. It would be wise to try small increments from the stock 725mhz.
#5
5970 cannot safely do 850Mhz without overvolting.

I would recommend flashing your 5970s with an overclocked & overvolted BIOS if you plan to continue overclocking. I use the "Pre OC vbios 800/1100 1.15v VDDC 1.15v VDDCI" found in the first post of this page http://forums.bit-tech.net/showthread.php?t=185918 on all four of my 5970s, and then push the clocks up to 825Mhz with amdconfig. This configuration allows them to run cool and stable on air.

You may also want to consider dropping your memory clocks. The VRM's on the 5xxx series get very hot. If you're doing brute force you can safely drop your memory clocks down to 300Mhz. If you are doing wordlist based attacks, you can set the memory clocks equal to, or slightly higher than, the core clocks. This will help keep your temps low while also ensuring good performance.
#6
Also worth noting that oclHashcat-plus v0.12 was released yesterday which does support mixed clocks. Smile
#7
Yea, I saw the new release! I'm going to play around with it tonight.

Thanks for letting me know about the overvolted BIOS. I'll experiment with that tonight as well. I've never used atiflash before, and from what I've seen on the forum link you posted, it looks like a windows application (I downloaded atiflash-3.91.exe).

edit-- I suppose I can install my 5970 into my Win7 computer temporarily for atiflash or create a bootable USB drive as described here. After the 5970 is flashed and reinstalled in my Linux computer, will I need to reinstall catalyst 12.8?
#8
I used the DOS version, not the Windows version. I would probably recommend you do the same, not sure how well I trust Windows.

I used the exact instructions there in that post, and they worked very well for me. Just make sure you flash the BIOSes in the correct order. Master BIOS first, then slave BIOS, then reboot. And if you're going to flash more than one GPU, make sure you reboot in between flashing each card. The instructions did not cover that, and I found out that if you try to do more than one without rebooting you will brick your card. It's recoverable, but you will need an old-school PCI GPU to recover it.
#9
My 5970 has been successfully flashed with the Pre-OC VBIOS 800M and 800S files that you are using, and I clocked it to 825,1000 afterwards using aticonfig. Everything seems stable and running well so far! Big Grin

I'm going to play around with the memory clocks as you mentioned to see how temps are affected. Thanks again for the advice and information!
#10
Awesome, glad to hear it Smile