ATI vs NV, analysis and results
#1
So, there seem to be quite a few posts regarding which is better, ATI or NVidia. I am by no means an expert on this subject, and I do ask that the experts contribute so that we may all be enlightened. I know atom and Rolf kicked this idea around in IRC the other day, but I hadn't seen a post appear.

I am running Ubuntu 10.04 LTS x64 on an i7 980X, 12 gig DDR3 2000, and 4x GTX 480's. This has been averaging me 4400M/s. Not really the speeds I would have expected from (until recently) NVidia's flagship card, but not bad. Let it also be known I am not a fanboy of Intel/AMD/NVidia. I want what works best, and is in my price range.

From what I understand:

ATI pros:
Cheap
fast (ATI can double comparable NVidia speeds on small # of hashes)
Low power
Less heat
Many overclocking tools available for all cards on windows/linux

ATI cons:
Poor stream support in linux/windows
Poor driver support in linux
Less precise WPA cracking

NVidia pros:
Excellent CUDA support in linux/windows
Good driver support for windows/linux
More precise WPA cracking
Have yet to see an issue with needing a monitor per card

NVidia cons:
Slower overall cracking (unless large # of hashes)
Cards run really hot
Cards consume ALOT of power
Expensive

Please feel free to correct me as I am new to hashcat, or add your experience with XX vendor.

Reply
#2
Well I'll add my reasons for going with Nvidia.

#1 There are a lot more applications out there that use CUDA instead of opencl
#2 You can support more cards with nvidia. Ati doesn't scale well, and more than 4 cards isn't supported. Currently I'm running 8 nvidia cards.

On top of that nvidia works very well with large list list. And I'm not holding my breath but when/if nvidia ever supports bit align ati will drop a peg or two.
Reply
#3
i will also throw in some argument, we can merge them later:

advantages:
===========

ATI:

- better performance-to-price ratio
- excellent single-hash performance in general which is required when cracking modern hashes like $1$, $6$ or phpass

NV:

- performance loss on unsalted multi-hashes is less than 10% even on huge hashtables because of better memory access
- produces nearly 0% cpu usage even on multi gpu systems

disadvantages:
==============

ATI:

- user manually needs to disable crossfirex
- requires kernel code written with proper vector datatype usage to get full performance but not all algorithms are compatible with that.
- opencl runtime is not installed by catalyst drivers per default (requires special APP version)
- linux specific: requires running X and a user logged into xsession that runs oclhashcat
- windows specific: each gpu needs to be connected to monitor

NV:

- no bitalign instruction. some workarounds are known but that are accessible by cuda only (not opencl)
- no cross compiler, make usage of special higher instructions impossible
- binary kernels in propretiary format

bugs:
=====

ATI:

- hd5970 only 1st gpu is supported (ati said they fix it with sdk v2.3)
- hd6xxx are not suppored at all (ati said they fix it with sdk v2.3)
- linux specific: multi-gpu is not supported at all (ati said they fix it with sdk v2.3)
- linux specific: each gpu produces 100% cpu load

Reply
#4
update after SDK v2.3:

advantages:
===========

ATI:

- better performance-to-price ratio
- excellent single-hash performance in general which is required when cracking modern hashes like $1$, $6$ or phpass

NV:

- performance loss on unsalted multi-hashes is less than 10% even on huge hashtables because of better memory access

disadvantages:
==============

ATI:

- requires kernel code written with proper vector datatype usage to get full performance but not all algorithms are compatible with that.
- linux specific: requires running X and a user logged into xsession that runs oclhashcat
- windows specific: each gpu needs to be connected to monitor

NV:

- no bitalign instruction. some workarounds are known but that are accessible by cuda only (not opencl)

bugs:
=====

ATI:

- hd5970 only 1st gpu is supported (windows only)
Reply
#5
Dummy plug / each card connected to a monitor is no longer needed. The new catalyst fixed that :-)
Reply