ralphymoto / pyrit

Automatically exported from code.google.com/p/pyrit
0 stars 0 forks source link

pyrit-calpp v2 - testing required #148

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
I'm attaching new version of CAL++ computing core. It's about 8-9% faster
than the one in svn. 
I have to admit that this is a little strange solution and I'm not sure how
it will behave on other ATI cards. So it needs a little bit of testing :).

Standard pyrit core works in the following way
- prepares data 
- transfers to gpu, 
- gpu runs 
- transfer data from gpu
- postprocess data. 
Simple timing analysis shows that this approach shouldn't waste more than
1-2% of time ( when gpu is not working ). 

The new calpp v2 core is trying to mask transfer/data processing by gpu
computations ( so we start computation and then when gpu is busy we process
data on cpu ). It should be only 1-2% faster. But it isn't :).

First of all the simple analysis doesn't take into account driver/card
behavior. ATI's driver are really sensitive to cpu performance and probably
are hiding some actions.

Now to the interesting part :). The v2 core doesn't do explicit data
transfer at all. Trying to send data to gpu while it was working resulted
in some performance degradation. So now all the data are in host memory and
gpu is taking it directly during computations. Fortunately in the case of
pyrit amount of computations is so huge that transfer from host memory can
be masked by computations from other gpu threads.
This may not be true for 5xxx cards where kernel is smaller and faster.
Also memory<->gpu transfer speed may have some impact.

So please test the v2 core and post here your results.
Also you should try to change line 453 in pyrit/cpyrit/cpyrit.py from
'ncpus-=1' to 'ncpus-=2' ( or 'ncpus-=4' ) and test impact of more
available cpu cores on performance.

The v2 core works with svn version of CAL++ library (it has been attached)

Original issue reported on code.google.com by hazema...@gmail.com on 16 Apr 2010 at 3:44

Attachments:

GoogleCodeExporter commented 8 years ago
Hello hazeman,

  thank you for the great work. Installed calpp-svn.tar.gz and pyrit-calpp-v2.tar.gz
without a problem. Then I'm getting some errors .....

system is Ubuntu 9.10 - fglrx 10.2 - AMD X4 965 - HD 4850

 ./setup.py build
svn: ».« ist keine Arbeitskopie
running build
running build_ext
Building modules...
building 'cpyrit._cpyrit_calpp' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall 
-Wstrict-prototypes
-fPIC -I/home/cal/atistream2/include -I/usr/include/python2.6 -c 
_cpyrit_calpp.cpp -o
build/temp.linux-x86_64-2.6/_cpyrit_calpp.o -DVERSION="0.3.1-dev"
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for 
Ada/C/ObjC
but not for C++
_cpyrit_calpp.cpp: In function ‘void start_kernel(CALDevice*, int)’:
_cpyrit_calpp.cpp:248: error: ‘class cal::CommandQueue’ has no member named 
‘isEventDone’
_cpyrit_calpp.cpp: In function ‘void send_pmklist(CALDevice*, gpu_inbuffer*, 
int)’:
_cpyrit_calpp.cpp:263: error: ‘CAL_RESALLOC_REMOTE’ was not declared in 
this scope
_cpyrit_calpp.cpp:264: error: ‘CAL_RESALLOC_REMOTE’ was not declared in 
this scope
_cpyrit_calpp.cpp: In function ‘PyObject* cpyrit_receive(CALDevice*, 
PyObject*)’:
_cpyrit_calpp.cpp:396: error: ‘class cal::CommandQueue’ has no member named 
‘isEventDone’
_cpyrit_calpp.cpp:399: warning: comparison between signed and unsigned integer
expressions
error: command 'gcc' failed with exit status 1

Original comment by datapirates@googlemail.com on 16 Apr 2010 at 5:55

GoogleCodeExporter commented 8 years ago
It looks like you didn't install CAL++ library properly ( you can just copy 
directory
include/cal from svn version to /usr/local/include/cal )

Original comment by hazema...@gmail.com on 16 Apr 2010 at 6:03

GoogleCodeExporter commented 8 years ago
Yep, you are right. I did something wrong during installation. Now it compiles 
and
I'm getting 'core dies'. rev250 did work.

 pyrit benchmark
init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Calibrating... Exception in thread CAL++ Device #1 'ATI RV770':
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
    self.run()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 111, in run
    self._testComputeFunction(101)
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 100, in
_testComputeFunction
    self.solve(Core.TV_ESSID, [Core.TV_PW] * i))):
AttributeError: 'CALCore' object has no attribute 'solve'

Exception in thread CPU-Core (SSE2):
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
    self.run()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 108, in run
    essid, pwlist = self.queue._gather(self.buffersize, timeout=0.5)
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 582, in _gather
    self._check_cores()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 440, in
_check_cores
    raise SystemError("The core '%s' has died unexpectedly" % core)
SystemError: The core 'CAL++ Device #1 'ATI RV770'' has died unexpectedly

Exception in thread CPU-Core (SSE2):
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
    self.run()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 108, in run
    essid, pwlist = self.queue._gather(self.buffersize, timeout=0.5)
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 582, in _gather
    self._check_cores()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 440, in
_check_cores
    raise SystemError("The core '%s' has died unexpectedly" % core)
SystemError: The core 'CAL++ Device #1 'ATI RV770'' has died unexpectedly

Exception in thread CPU-Core (SSE2):
Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 525, in __bootstrap_inner
    self.run()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 108, in run
    essid, pwlist = self.queue._gather(self.buffersize, timeout=0.5)
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 582, in _gather
    self._check_cores()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 440, in
_check_cores
    raise SystemError("The core '%s' has died unexpectedly" % core)
SystemError: The core 'CAL++ Device #1 'ATI RV770'' has died unexpectedly

Traceback (most recent call last):
  File "/usr/local/bin/pyrit", line 6, in <module>
    pyrit_cli.Pyrit_CLI().initFromArgv()
  File "/usr/local/lib/python2.6/dist-packages/pyrit_cli.py", line 110, in initFromArgv
    func(self, **options)
  File "/usr/local/lib/python2.6/dist-packages/pyrit_cli.py", line 903, in benchmark
    cp.enqueue('foo', ['barbarbar'] * 500)
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 514, in enqueue
    self._check_cores()
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/cpyrit.py", line 440, in
_check_cores
    raise SystemError("The core '%s' has died unexpectedly" % core)
SystemError: The core 'CAL++ Device #1 'ATI RV770'' has died unexpectedly

Original comment by datapirates@googlemail.com on 16 Apr 2010 at 6:39

GoogleCodeExporter commented 8 years ago
You need to delete previous version of pyrit :). Pyrit engine ( not 
pyrit-calpp-v2 )
is trying to run cpyrit-calpp-v2 core.
Delete everything with pyrit in name from directory
/usr/local/lib/python2.6/dist-packages/ and /usr/local/bin. And reinstall
pyrit-calpp-v2 and cpyrit-calpp-v2.

Original comment by hazema...@gmail.com on 16 Apr 2010 at 7:00

GoogleCodeExporter commented 8 years ago
Now it's running. You didn't mention that in your manual :-)
calpp-v2 is a bit slower. One of the four CPUs is always below 10% usage.

pyrit benchmark
init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Running benchmark (16770.5 PMKs/s)... \ 

Computed 17448.12 PMKs/s total.
#1: 'CAL++ Device #1 'ATI RV770'': 16616.3 PMKs/s (RTT 1.5)
#2: 'CPU-Core (SSE2)': 509.5 PMKs/s (RTT 2.8)
#3: 'CPU-Core (SSE2)': 540.4 PMKs/s (RTT 3.0)
#4: 'CPU-Core (SSE2)': 586.6 PMKs/s (RTT 2.7)
#5: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

For comparing rev250:

pyrit benchmark
Pyrit 0.3.1-dev (svn r250) (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+
Running benchmark (20321.5 PMKs/s)... / 
Computed 20659.88 PMKs/s total.
#1: 'CAL++ Device #1 'ATI RV770'': 18391.1 PMKs/s (RTT 2.8)
#2: 'CPU-Core (SSE2)': 766.6 PMKs/s (RTT 3.0)
#3: 'CPU-Core (SSE2)': 784.5 PMKs/s (RTT 2.9)
#4: 'CPU-Core (SSE2)': 790.3 PMKs/s (RTT 2.9)

Original comment by datapirates@googlemail.com on 16 Apr 2010 at 7:31

GoogleCodeExporter commented 8 years ago
You could try to update drivers. But it probably won't change anything :).
On 4770 I've got 17k on svn version and 18200-18500 on v2. But I have intel cpu 
and
chipset. But that's why I want to see some test. I had a feeling that this 
version
can act strangly :).

Original comment by hazema...@gmail.com on 16 Apr 2010 at 7:43

GoogleCodeExporter commented 8 years ago
Did some tests with different ncpus and with fglrx 10.3. Didn't change much.

cheers, dapi

pyrit benchmark Cal++SVN 4850 10.2 ncpus-=2
init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+
Running benchmark (14671.0 PMKs/s)... \ 
Computed 15028.92 PMKs/s total.
#1: 'CAL++ Device #1 'ATI RV770'': 16854.5 PMKs/s (RTT 1.1)
#2: 'CPU-Core (SSE2)': 629.2 PMKs/s (RTT 2.8)
#3: 'CPU-Core (SSE2)': 531.0 PMKs/s (RTT 2.7)
#4: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

pyrit benchmark  Cal++SVN 4850 10.2 ncpus-=4
init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+
Running benchmark (14320.1 PMKs/s)... - 
Computed 15010.81 PMKs/s total.
#1: 'CAL++ Device #1 'ATI RV770'': 16552.0 PMKs/s (RTT 1.3)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

pyrit benchmark Cal++SVN 4850 10.3 ncpus-=1
init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+
Running benchmark (16035.5 PMKs/s)... - 
Computed 17377.94 PMKs/s total.
#1: 'CAL++ Device #1 'ATI RV770'': 16499.5 PMKs/s (RTT 1.7)
#2: 'CPU-Core (SSE2)': 490.7 PMKs/s (RTT 2.9)
#3: 'CPU-Core (SSE2)': 459.8 PMKs/s (RTT 3.3)
#4: 'CPU-Core (SSE2)': 476.4 PMKs/s (RTT 3.1)
#5: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Original comment by datapirates@googlemail.com on 16 Apr 2010 at 8:43

GoogleCodeExporter commented 8 years ago
here my data:

debian lenny.
bost compiled and installed version 1.42.0
pyrit r250
pyrit compile and installed
BUT when I try t compile cpyrit_calpp i got 

_cpyrit_calpp.cpp:25:23: error: cal/calpp.hpp: No such file or directory.

What have I to install to got that missed file?

Original comment by pyrit.lo...@gmail.com on 16 Apr 2010 at 9:36

GoogleCodeExporter commented 8 years ago
install CAL++ library ( it's in calpp-svn.tar.gz )

Original comment by hazema...@gmail.com on 16 Apr 2010 at 10:00

GoogleCodeExporter commented 8 years ago
Sorry, it is late in the night and my brain works slow :(

Ok, here i came with my data with pyrit r250 on phenom 4 core:

(I runned 'pyrit benchmark')

HD5870 from 41000 to 55000 PMK/s (+35%)
HD5770 from 23000 to 31000 PMK/s (+35%)

it is to report that the 2 "free" core slow down form ~740 to ~620-670 PMK/s 
(-13%)

All in all, I did some 'real' test using 'passtrough' option and the whole 
system
(5870 + 5770 + 2 CPU cores) moved from 66000 PMK to 85700 (+30%) and the only 
word to
define this is _GREAT_, but I wonder why that little regression on CPU, maybe it
deserve to be investigated. (Anyway, again, +30%, WOW!)

Original comment by pyrit.lo...@gmail.com on 16 Apr 2010 at 11:24

GoogleCodeExporter commented 8 years ago
Regression on cpu's is due to ATI driver trying to utilize those cores. It's 
really
cpu hog. Btw if you disable computations on those cores you may have better 
overall
results ( look at the issue 147 ). 

Original comment by hazema...@gmail.com on 16 Apr 2010 at 11:58

GoogleCodeExporter commented 8 years ago
If you can please test v2 version. I'm really interested how it behaves on 5xxx 
cards.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 12:02

GoogleCodeExporter commented 8 years ago

ati 5770 860Mhz , 1GB 1200Mhz (Sapphire HD 5770 Vapor-X Overclock Edition)

Pyrit 0.3.1-dev (svn r250) (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Computed 482.16 PMKs/s total.
#1: 'CPU-Core (SSE2)': 236.3 PMKs/s (RTT 2.9)
#2: 'CPU-Core (SSE2)': 235.1 PMKs/s (RTT 3.0)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

### svn OpenCL without CPU
#############################################################################

Running benchmark (21259.9 PMKs/s)... |

Computed 21594.01 PMKs/s total.
#1: 'OpenCL-Device 'Juniper'': 21654.8 PMKs/s (RTT 2.6)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Running benchmark (20541.0 PMKs/s)... -

Computed 21703.12 PMKs/s total.
#1: 'OpenCL-Device 'Juniper'': 21571.1 PMKs/s (RTT 2.6)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

### svn OpenCL with CPU
################################################################################
##

Running benchmark (22037.2 PMKs/s)... -

Computed 22065.45 PMKs/s total.
#1: 'OpenCL-Device 'Juniper'': 21332.0 PMKs/s (RTT 2.6)
#2: 'CPU-Core (SSE2)': 231.0 PMKs/s (RTT 2.9)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Running benchmark (21675.9 PMKs/s)... -

Computed 21650.80 PMKs/s total.
#1: 'OpenCL-Device 'Juniper'': 21245.2 PMKs/s (RTT 2.6)
#2: 'CPU-Core (SSE2)': 235.7 PMKs/s (RTT 2.9)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

### svn CAL++ without CPU
#############################################################################

Running benchmark (26357.8 PMKs/s)... |

Computed 27951.16 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 27979.4 PMKs/s (RTT 2.7)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Running benchmark (26160.4 PMKs/s)... |

Computed 27807.62 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 28019.5 PMKs/s (RTT 2.7)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

### svn CAL++ with CPU
#########################################################################

Running benchmark (27590.9 PMKs/s)... |

Computed 28162.57 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 27820.1 PMKs/s (RTT 2.7)
#2: 'CPU-Core (SSE2)': 192.0 PMKs/s (RTT 3.0)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Running benchmark (26694.7 PMKs/s)... |

Computed 28492.60 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 27515.9 PMKs/s (RTT 2.7)
#2: 'CPU-Core (SSE2)': 204.2 PMKs/s (RTT 3.0)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

### V2 without cpu
###########################################################################
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Running benchmark (34368.4 PMKs/s)... |

Computed 35335.12 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 34491.9 PMKs/s (RTT 0.9)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Running benchmark (33751.6 PMKs/s)... \

Computed 34602.10 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 33798.5 PMKs/s (RTT 0.8)
#2: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

### V2 with
CPU#############################################################################

Running benchmark (32390.8 PMKs/s)... \

Computed 32494.00 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 33664.1 PMKs/s (RTT 1.1)
#2: 'CPU-Core (SSE2)': 187.4 PMKs/s (RTT 2.9)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Running benchmark (36307.7 PMKs/s)... \

Computed 36307.68 PMKs/s total.
#1: 'CAL++ Device #1 'ATI JUNIPER'': 34211.5 PMKs/s (RTT 1.1)
#2: 'CPU-Core (SSE2)': 196.4 PMKs/s (RTT 2.9)
#3: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)

Original comment by LINUTECH...@gmail.com on 17 Apr 2010 at 1:34

GoogleCodeExporter commented 8 years ago
here my report done with 'pyrit benchmark'

before callpp
HD5870 from 41000 PMK/s
HD5770 from 23000 PMK/s

with callpp pyrit r250
HD5870 55000 PMK/s
HD5770 31000 PMK/s

with callpp v2
HD5870 43000 PMK/s
HD5770 32300 PMK/s

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 8:54

GoogleCodeExporter commented 8 years ago
I forgot to report the follow: I run twm as GUI to not use the eavy KDE/GNOME 
and I
work with xterm inside twm.
I installed konsole to have a better look&feel, but to run pyrit inside kopete 
"eats"
a lot of GPU cicles! Beware of kotete, guys! Use only xterm.

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 9:00

GoogleCodeExporter commented 8 years ago
Wow this xterm thing is really strange. On my system ( 4770 card ) cpu pentium 
core 2
duo ( 2.7 ghz ) , g33 chipset, kubuntu 9.04. I have desktop effects disabled.
v2 version running from xterm - 16k, v2 version running from kde default 
console -
18400. 
ATI drivers have so many issues ...

Original comment by hazema...@gmail.com on 17 Apr 2010 at 9:13

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
sorry, I said "but to run pyrit inside kopete "eats" a lot of GPU cicles! 
Beware of
kotete, guys! Use only xterm."

I wrote "KOPETE/KOTETE" you have to read "KONSOLE"

eh, I have to stop to work late in the night :)

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 10:11

GoogleCodeExporter commented 8 years ago
I'm attaching simple script to run pyrit benchmark without terminal (it uses
kdialog). You can run script by pressing alt-f2 and typing 'script 
location/test_pyrit'
Also please disable desktop effects. They have negative effect on gpu's 
performance.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 11:26

Attachments:

GoogleCodeExporter commented 8 years ago
All benchmark run from xterm before gnome session
All benchmark use ncpus=4 and uncomment line 42 in 
/usr/local/include/cal/cal.hpp
#define __CAL_USE_NON_BLOCKING_WAIT 1

Original comment by odl...@gmail.com on 17 Apr 2010 at 12:34

Attachments:

GoogleCodeExporter commented 8 years ago
On my system trying to use xterm ( before kde session or during ) leads to huge
performance drop in v2 version.
Odlan3 could you try v2 without using xterm ? The best would be through 
test_pyrit
script.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 1:26

GoogleCodeExporter commented 8 years ago
Ok,but I'm on Gnome.need some modification to your script

Original comment by odl...@gmail.com on 17 Apr 2010 at 3:22

GoogleCodeExporter commented 8 years ago
Anyway from xterm i do
pyrit benchmark > pyritV2BenchMark.txt
I don't think that this could decrease performance

Original comment by odl...@gmail.com on 17 Apr 2010 at 3:26

GoogleCodeExporter commented 8 years ago
This from gnome-terminal
odlan@H3ll:~$ pyrit benchmark > /tmp/pyrit-benchmark.txt

odlan@H3ll:~$ gedit /tmp/pyrit-benchmark.txt

init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Calibrating... 
Running benchmark (0.0 PMKs/s)... \ 
Running benchmark (0.0 PMKs/s)... | 
Running benchmark (0.0 PMKs/s)... / 
Running benchmark (37577.6 PMKs/s)... - 
Running benchmark (45607.3 PMKs/s)... \ 
Running benchmark (45607.3 PMKs/s)... | 
Running benchmark (45607.3 PMKs/s)... / 
Running benchmark (36260.3 PMKs/s)... - 
Running benchmark (36260.3 PMKs/s)... \ 
Running benchmark (38314.8 PMKs/s)... | 
Running benchmark (47893.5 PMKs/s)... / 
Running benchmark (57472.2 PMKs/s)... - 
Running benchmark (48804.2 PMKs/s)... \ 
Running benchmark (55776.3 PMKs/s)... | 
Running benchmark (54513.9 PMKs/s)... / 
Running benchmark (54970.6 PMKs/s)... - 
Running benchmark (55235.7 PMKs/s)... \ 
Running benchmark (55461.3 PMKs/s)... | 
Running benchmark (55654.1 PMKs/s)... / 
Running benchmark (59935.2 PMKs/s)... - 
Running benchmark (59811.9 PMKs/s)... \ 
Running benchmark (63799.3 PMKs/s)... | 
Running benchmark (63433.0 PMKs/s)... / 
Running benchmark (63021.8 PMKs/s)... - 
Running benchmark (60184.0 PMKs/s)... \ 
Running benchmark (60073.1 PMKs/s)... | 
Running benchmark (63076.7 PMKs/s)... / 
Running benchmark (62116.4 PMKs/s)... - 
Running benchmark (64939.8 PMKs/s)... \ 
Running benchmark (64608.6 PMKs/s)... | 
Running benchmark (64328.3 PMKs/s)... / 
Running benchmark (66901.4 PMKs/s)... - 
Running benchmark (66467.8 PMKs/s)... \ 
Running benchmark (66181.5 PMKs/s)... | 
Running benchmark (65871.0 PMKs/s)... / 
Running benchmark (65505.1 PMKs/s)... - 
Running benchmark (67688.6 PMKs/s)... \ 
Running benchmark (69872.1 PMKs/s)... | 
Running benchmark (68169.0 PMKs/s)... / 
Running benchmark (70234.7 PMKs/s)... - 
Running benchmark (69810.2 PMKs/s)... \ 
Running benchmark (71804.8 PMKs/s)... | 
Running benchmark (70759.1 PMKs/s)... / 
Running benchmark (72671.5 PMKs/s)... - 
Running benchmark (71752.3 PMKs/s)... \ 
Running benchmark (73592.1 PMKs/s)... | 
Running benchmark (72677.0 PMKs/s)... / 
Running benchmark (74449.6 PMKs/s)... - 
Running benchmark (74010.7 PMKs/s)... \ 
Running benchmark (75731.9 PMKs/s)... | 
Running benchmark (74614.9 PMKs/s)... / 
Running benchmark (74152.8 PMKs/s)... - 
Running benchmark (73758.3 PMKs/s)... \ 
Running benchmark (72993.9 PMKs/s)... | 
Running benchmark (74514.7 PMKs/s)... / 
Running benchmark (74445.2 PMKs/s)... - 
Running benchmark (75934.1 PMKs/s)... \ 
Running benchmark (77423.0 PMKs/s)... | 
Running benchmark (75952.3 PMKs/s)... / 
Running benchmark (77385.3 PMKs/s)... - 
Running benchmark (77385.3 PMKs/s)... \ 
Running benchmark (74819.4 PMKs/s)... | 
Running benchmark (76179.8 PMKs/s)... / 
Running benchmark (76080.9 PMKs/s)... - 
Running benchmark (75636.0 PMKs/s)... \ 
Running benchmark (74978.1 PMKs/s)... | 
Running benchmark (76248.9 PMKs/s)... / 
Running benchmark (77519.7 PMKs/s)... - 
Running benchmark (76638.1 PMKs/s)... \ 
Running benchmark (76004.1 PMKs/s)... | 
Running benchmark (77210.5 PMKs/s)... / 
Running benchmark (78416.9 PMKs/s)... - 
Running benchmark (77552.9 PMKs/s)... \ 
Running benchmark (78727.9 PMKs/s)... | 
Running benchmark (78361.1 PMKs/s)... / 
Running benchmark (77924.1 PMKs/s)... - 
Running benchmark (77546.9 PMKs/s)... \ 
Running benchmark (77214.2 PMKs/s)... | 
Running benchmark (78301.7 PMKs/s)... / 
Running benchmark (77926.9 PMKs/s)... - 
Running benchmark (77315.4 PMKs/s)... \ 
Running benchmark (78360.2 PMKs/s)... | 
Running benchmark (79405.0 PMKs/s)... / 
Running benchmark (78633.0 PMKs/s)... - 
Running benchmark (79654.3 PMKs/s)... \ 
Running benchmark (79272.6 PMKs/s)... | 
Running benchmark (80276.0 PMKs/s)... / 
Running benchmark (79938.3 PMKs/s)... - 
Running benchmark (79309.3 PMKs/s)... \ 
Running benchmark (80276.4 PMKs/s)... | 
Running benchmark (79880.2 PMKs/s)... / 
Running benchmark (80831.2 PMKs/s)... - 
Running benchmark (80702.4 PMKs/s)... \ 
Running benchmark (79403.0 PMKs/s)... | 
Running benchmark (78853.0 PMKs/s)... / 
Running benchmark (79749.0 PMKs/s)... - 
Running benchmark (79346.0 PMKs/s)... \ 
Running benchmark (79028.7 PMKs/s)... | 
Running benchmark (79897.2 PMKs/s)... / 
Running benchmark (80765.6 PMKs/s)... - 
Running benchmark (80431.8 PMKs/s)... \ 
Running benchmark (81287.4 PMKs/s)... | 
Running benchmark (80384.5 PMKs/s)... / 
Running benchmark (81221.8 PMKs/s)... - 

Computed 85468.11 PMKs/s total.
#1: 'CAL++ Device #1 'ATI CYPRESS'': 42492.5 PMKs/s (RTT 1.2)
#2: 'CAL++ Device #2 'ATI CYPRESS'': 51672.8 PMKs/s (RTT 1.0)

Original comment by odl...@gmail.com on 17 Apr 2010 at 3:33

GoogleCodeExporter commented 8 years ago
Thank you. Unfortunately I have more tests :). 
I've created version 2b. This one also masks transfer but uses pinned memory.
On my system it's about 5-8% faster than svn version. I think that this version
should work consistently on all cards. So everyone please test it :).
You need to remove version v2 and install v2b ( so remove anything with pyrit 
in name
from directories /usr/local/bin/*pyrit* /usr/local/lib/python2.6/dist-packages )

Original comment by hazema...@gmail.com on 17 Apr 2010 at 3:48

Attachments:

GoogleCodeExporter commented 8 years ago
I modified your script, leaving only.
# /bin/bash
pyrit benchmark> /tmp/pyrit-benchmark.txt

If I launch this directly,not from terminal,
this is the output

init_cpyrit_calpp
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Calibrating... 
Running benchmark (0.0 PMKs/s)... \ 
Running benchmark (0.0 PMKs/s)... | 
Running benchmark (0.0 PMKs/s)... / 
Running benchmark (0.0 PMKs/s)... - 
Running benchmark (0.0 PMKs/s)... \ 
Running benchmark (0.0 PMKs/s)... | 
Running benchmark (0.0 PMKs/s)... / 
Running benchmark (0.0 PMKs/s)... - 
Running benchmark (0.0 PMKs/s)... \ 
Running benchmark (0.0 PMKs/s)... | 
Running benchmark (11902.4 PMKs/s)... / 
Running benchmark (23804.9 PMKs/s)... - 
Running benchmark (25458.6 PMKs/s)... \ 
Running benchmark (19369.2 PMKs/s)... | 
Running benchmark (20934.4 PMKs/s)... / 
Running benchmark (25121.3 PMKs/s)... - 
Running benchmark (27413.6 PMKs/s)... \ 
Running benchmark (29402.4 PMKs/s)... | 
Running benchmark (33077.7 PMKs/s)... / 
Running benchmark (33064.1 PMKs/s)... - 
Running benchmark (36370.5 PMKs/s)... \ 
Running benchmark (33876.8 PMKs/s)... | 
Running benchmark (36699.9 PMKs/s)... / 
Running benchmark (36899.4 PMKs/s)... - 
Running benchmark (39535.0 PMKs/s)... \ 
Running benchmark (39231.2 PMKs/s)... | 
Running benchmark (40065.4 PMKs/s)... / 
Running benchmark (42422.2 PMKs/s)... - 
Running benchmark (41944.8 PMKs/s)... \ 
Running benchmark (44152.5 PMKs/s)... | 
Running benchmark (41833.5 PMKs/s)... / 
Running benchmark (43825.5 PMKs/s)... - 
Running benchmark (44336.0 PMKs/s)... \ 
Running benchmark (44980.7 PMKs/s)... | 
Running benchmark (46854.9 PMKs/s)... / 
Running benchmark (44447.7 PMKs/s)... - 
Running benchmark (44847.3 PMKs/s)... \ 
Running benchmark (46508.3 PMKs/s)... | 
Running benchmark (46398.6 PMKs/s)... / 
Running benchmark (47998.5 PMKs/s)... - 
Running benchmark (47616.1 PMKs/s)... \ 
Running benchmark (46813.2 PMKs/s)... | 
Running benchmark (47136.9 PMKs/s)... / 
Running benchmark (47434.2 PMKs/s)... - 
Running benchmark (47713.6 PMKs/s)... \ 
Running benchmark (49076.9 PMKs/s)... | 
Running benchmark (48806.2 PMKs/s)... / 
Running benchmark (48978.5 PMKs/s)... - 
Running benchmark (49354.3 PMKs/s)... \ 
Running benchmark (49725.0 PMKs/s)... | 
Running benchmark (50084.7 PMKs/s)... / 
Running benchmark (50109.1 PMKs/s)... - 
Running benchmark (50343.1 PMKs/s)... \ 
Running benchmark (50566.7 PMKs/s)... | 
Running benchmark (50676.2 PMKs/s)... / 
Running benchmark (50829.6 PMKs/s)... - 
Running benchmark (50963.2 PMKs/s)... \ 
Running benchmark (52047.5 PMKs/s)... | 
Running benchmark (51840.4 PMKs/s)... / 
Running benchmark (52898.4 PMKs/s)... - 
Running benchmark (51830.1 PMKs/s)... \ 
Running benchmark (51089.2 PMKs/s)... | 
Running benchmark (51230.5 PMKs/s)... / 
Running benchmark (52197.2 PMKs/s)... - 
Running benchmark (52194.4 PMKs/s)... \ 
Running benchmark (51704.4 PMKs/s)... | 
Running benchmark (52627.7 PMKs/s)... / 
Running benchmark (52531.3 PMKs/s)... - 
Running benchmark (52584.9 PMKs/s)... \ 
Running benchmark (53476.1 PMKs/s)... | 
Running benchmark (53421.6 PMKs/s)... / 
Running benchmark (54297.4 PMKs/s)... - 
Running benchmark (53147.1 PMKs/s)... \ 
Running benchmark (53251.5 PMKs/s)... | 
Running benchmark (53304.5 PMKs/s)... / 
Running benchmark (53438.2 PMKs/s)... - 
Running benchmark (53553.7 PMKs/s)... \ 
Running benchmark (53668.3 PMKs/s)... | 
Running benchmark (54457.6 PMKs/s)... / 
Running benchmark (54441.8 PMKs/s)... - 
Running benchmark (54624.0 PMKs/s)... \ 
Running benchmark (54082.1 PMKs/s)... | 
Running benchmark (53657.3 PMKs/s)... / 
Running benchmark (53722.2 PMKs/s)... - 
Running benchmark (54448.2 PMKs/s)... \ 
Running benchmark (54350.0 PMKs/s)... | 
Running benchmark (54472.9 PMKs/s)... / 
Running benchmark (54416.7 PMKs/s)... - 
Running benchmark (55114.4 PMKs/s)... \ 
Running benchmark (54708.5 PMKs/s)... | 
Running benchmark (55392.4 PMKs/s)... / 
Running benchmark (55293.9 PMKs/s)... - 
Running benchmark (55448.6 PMKs/s)... \ 
Running benchmark (54923.0 PMKs/s)... | 
Running benchmark (54959.5 PMKs/s)... / 
Running benchmark (55001.7 PMKs/s)... - 
Running benchmark (55641.2 PMKs/s)... \ 
Running benchmark (55194.2 PMKs/s)... | 
Running benchmark (55821.4 PMKs/s)... / 
Running benchmark (55794.4 PMKs/s)... - 
Running benchmark (55931.2 PMKs/s)... \ 

Computed 58976.65 PMKs/s total.
#1: 'CAL++ Device #1 'ATI CYPRESS'': 57664.2 PMKs/s (RTT 0.7)
#2: 'CPU-Core (SSE2)': 578.7 PMKs/s (RTT 2.4)
#3: 'CPU-Core (SSE2)': 630.5 PMKs/s (RTT 3.0)
#4: 'CPU-Core (SSE2)': 547.9 PMKs/s (RTT 2.6)
#5: 'CPU-Core (SSE2)': 676.1 PMKs/s (RTT 2.9)

Now I can see only one GPU and the performance seems better...but only one 
GPU....

Original comment by odl...@gmail.com on 17 Apr 2010 at 3:57

GoogleCodeExporter commented 8 years ago
This one device thingy must be some bug somewhere :). But anyway I'm happy to 
see
improved performance :). I would guess that it's something in lines 450-453 in
cpyrit.py file. I see that you have ncpus-=4 ( which isn't standard ), maybe 
you have
changed indentation there. Or you haven't reinstalled pyrit

Original comment by hazema...@gmail.com on 17 Apr 2010 at 4:24

GoogleCodeExporter commented 8 years ago
If I do pyrit benchmark from gnome-terminal wihtout touch line 453 in cpyrit.py
(ncpus-=2)I can see 2 GPU whit slower performance but if I double-clik on
test_pyrit.sh I have in /tmp/pyrit-benchmark.txt only one GPU whit better 
performance..
Difference in switching ncpus from 2 to 4 are rilevant only if I run pyrit 
benchmark
from terminal

Original comment by odl...@gmail.com on 17 Apr 2010 at 5:00

GoogleCodeExporter commented 8 years ago
You add extra print ( so we can check how many cores detects CAL ) to line 451
So the lines starting from 450 looks like
        if 'cpyrit._cpyrit_calpp' in sys.modules:
            print _cpyrit_calpp.listDevices()       
            for dev_idx, device in enumerate(_cpyrit_calpp.listDevices()):
                self.cores.append(CALCore(queue=self, dev_idx=dev_idx))
                ncpus -= 1

Original comment by hazema...@gmail.com on 17 Apr 2010 at 5:09

GoogleCodeExporter commented 8 years ago
Also change 
pyrit benchmark> /tmp/pyrit-benchmark.txt in script to
pyrit benchmark 2>&1 > /tmp/pyrit-benchmark.txt
so if there are some errors they will be written to file

Original comment by hazema...@gmail.com on 17 Apr 2010 at 5:18

GoogleCodeExporter commented 8 years ago
Ok, I cleaned the directory /usr/locales/lib.python2.6/site-packages.

I work now with cpyrit_calpp-v2b.tar.gz and pyrit-calpp-v2b.tar.gz, here the 
result
of pyrit benchmark

computated 78241 PMK total
HD 5770 31849 PMKs
HD 5870 51599 PMKs

Note that:
A. CPU 3rd and 4th disappeared.
B. The PMK are similar than v2.
C. total computated value is so different than GPU1 GPU2 sum of PMK
D. I runned test 5-6 times before to get that good 31K and 51K, it seems the 
PMK is
so variable in random mode.

I tried to use test_pyrit in command line but I got command not found related to
kdialog: so me too I runned directly from command line:

pyrit benchmark >> /tmp/pyrit-benchmark.txt

in alt-F2, but after 5 minutes it still not finished, so I gone back in Alt-F7
(graphic mode) and runned the script there sometimes, here the result saved in
/tmp/pyrit_benchmark.txt

===============================
computated 64373 PMK total
HD 5770 33188 PMKs
HD 5870 38550 PMKs

computated 67040 PMK total
HD 5770 32766 PMKs
HD 5870 39930 PMKs

computated 64068 PMK total
HD 5770 32685 PMKs
HD 5870 36452 PMKs

===============================

NOTE: 5770 scale so well, it move from 23000PMK (in pre-calpp) to 32600 in v2b, 
it
means +40% but 5870 DECREASE performances from 41000 (in pre-calpp) to 
36000-39000 in
v2b.
It seems v2b is not able to feed 5870 fast enough.

I suspect v2b is not able to manage different type of videocard (5870 is 1600 
stream
processor, 5770 is 800 stream processor, both 5870 and 5770 are mono GPU), let 
me
test one by one, I will be back with news soon.

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 5:20

GoogleCodeExporter commented 8 years ago
OK I add export DISPLAY:0 to script and now is working fine (obviously the
environment variables are not considered if the script is lunched directly).
But anyway the performance are not good
Pyrit 0.3.1-dev (C) 2008-2010 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

(('ATI CYPRESS',), ('ATI CYPRESS',))
Calibrating... 
Running benchmark (0.0 PMKs/s)... \ 
Running benchmark (0.0 PMKs/s)... | 
Running benchmark (0.0 PMKs/s)... / 
Running benchmark (0.0 PMKs/s)... - 
Running benchmark (0.0 PMKs/s)... \ 
Running benchmark (15645.4 PMKs/s)... | 
Running benchmark (31290.7 PMKs/s)... / 
Running benchmark (34350.2 PMKs/s)... - 
Running benchmark (38955.7 PMKs/s)... \ 
Running benchmark (48694.6 PMKs/s)... | 
Running benchmark (58433.5 PMKs/s)... / 
Running benchmark (51121.9 PMKs/s)... - 
Running benchmark (52373.8 PMKs/s)... \ 
Running benchmark (58920.5 PMKs/s)... | 
Running benchmark (60518.3 PMKs/s)... / 
Running benchmark (66570.1 PMKs/s)... - 
Running benchmark (65362.9 PMKs/s)... \ 
Running benchmark (65045.3 PMKs/s)... | 
Running benchmark (65045.3 PMKs/s)... / 
Running benchmark (65045.3 PMKs/s)... - 
Running benchmark (65045.3 PMKs/s)... \ 
Running benchmark (57904.1 PMKs/s)... | 
Running benchmark (58280.6 PMKs/s)... / 
Running benchmark (62166.0 PMKs/s)... - 
Running benchmark (62507.1 PMKs/s)... \ 
Running benchmark (66184.0 PMKs/s)... | 
Running benchmark (66262.3 PMKs/s)... / 
Running benchmark (69749.8 PMKs/s)... - 
Running benchmark (69749.8 PMKs/s)... \ 
Running benchmark (65580.6 PMKs/s)... | 
Running benchmark (68703.5 PMKs/s)... / 
Running benchmark (65782.5 PMKs/s)... - 
Running benchmark (68642.7 PMKs/s)... \ 
Running benchmark (68557.8 PMKs/s)... | 
Running benchmark (71300.1 PMKs/s)... / 
Running benchmark (70617.7 PMKs/s)... - 
Running benchmark (69736.8 PMKs/s)... \ 
Running benchmark (72227.4 PMKs/s)... | 
Running benchmark (72539.9 PMKs/s)... / 
Running benchmark (74957.9 PMKs/s)... - 
Running benchmark (74693.4 PMKs/s)... \ 
Running benchmark (74306.0 PMKs/s)... | 
Running benchmark (73679.1 PMKs/s)... / 
Running benchmark (75846.1 PMKs/s)... - 
Running benchmark (75277.1 PMKs/s)... \ 
Running benchmark (75257.7 PMKs/s)... | 
Running benchmark (77291.7 PMKs/s)... / 
Running benchmark (75841.9 PMKs/s)... - 
Running benchmark (74902.2 PMKs/s)... \ 
Running benchmark (76774.8 PMKs/s)... | 
Running benchmark (78647.3 PMKs/s)... / 
Running benchmark (78286.2 PMKs/s)... - 
Running benchmark (80106.8 PMKs/s)... \ 
Running benchmark (78032.5 PMKs/s)... | 
Running benchmark (77499.9 PMKs/s)... / 
Running benchmark (79184.7 PMKs/s)... - 
Running benchmark (78590.6 PMKs/s)... \ 
Running benchmark (78192.5 PMKs/s)... | 
Running benchmark (79788.2 PMKs/s)... / 
Running benchmark (81384.0 PMKs/s)... - 
Running benchmark (78431.6 PMKs/s)... \ 
Running benchmark (78127.1 PMKs/s)... | 
Running benchmark (79601.2 PMKs/s)... / 
Running benchmark (78974.4 PMKs/s)... - 
Running benchmark (80410.3 PMKs/s)... \ 
Running benchmark (80635.9 PMKs/s)... | 
Running benchmark (82050.6 PMKs/s)... / 
Running benchmark (81377.6 PMKs/s)... - 
Running benchmark (82756.8 PMKs/s)... \ 
Running benchmark (81277.6 PMKs/s)... | 
Running benchmark (82610.0 PMKs/s)... / 
Running benchmark (82413.5 PMKs/s)... - 
Running benchmark (82172.9 PMKs/s)... \ 
Running benchmark (82192.0 PMKs/s)... | 
Running benchmark (81660.1 PMKs/s)... / 
Running benchmark (82897.3 PMKs/s)... - 
Running benchmark (82749.9 PMKs/s)... \ 
Running benchmark (82682.1 PMKs/s)... | 
Running benchmark (83880.3 PMKs/s)... / 
Running benchmark (81946.0 PMKs/s)... - 
Running benchmark (81478.5 PMKs/s)... \ 
Running benchmark (81587.9 PMKs/s)... | 
Running benchmark (82705.5 PMKs/s)... / 
Running benchmark (83823.1 PMKs/s)... - 
Running benchmark (83365.9 PMKs/s)... \ 
Running benchmark (82905.8 PMKs/s)... | 
Running benchmark (81942.7 PMKs/s)... / 
Running benchmark (82993.3 PMKs/s)... - 
Running benchmark (81980.2 PMKs/s)... \ 
Running benchmark (81559.7 PMKs/s)... | 
Running benchmark (81235.1 PMKs/s)... / 
Running benchmark (81260.5 PMKs/s)... - 
Running benchmark (82239.6 PMKs/s)... \ 
Running benchmark (81555.5 PMKs/s)... | 
Running benchmark (82514.9 PMKs/s)... / 
Running benchmark (82334.1 PMKs/s)... - 
Running benchmark (83280.5 PMKs/s)... \ 
Running benchmark (83187.9 PMKs/s)... | 
Running benchmark (84122.6 PMKs/s)... / 
Running benchmark (82507.9 PMKs/s)... - 
Running benchmark (82121.8 PMKs/s)... \ 
Running benchmark (81762.1 PMKs/s)... | 
Running benchmark (82641.3 PMKs/s)... / 
Running benchmark (83520.5 PMKs/s)... - 
Running benchmark (83391.4 PMKs/s)... \ 
Running benchmark (82261.4 PMKs/s)... | 
Running benchmark (86254.5 PMKs/s)... / 

Computed 86254.46 PMKs/s total.
#1: 'CAL++ Device #1 'ATI CYPRESS'': 48408.6 PMKs/s (RTT 1.0)
#2: 'CAL++ Device #2 'ATI CYPRESS'': 41537.6 PMKs/s (RTT 1.2)
#3: 'CPU-Core (SSE2)': 558.5 PMKs/s (RTT 2.7)
#4: 'CPU-Core (SSE2)': 652.6 PMKs/s (RTT 3.1)
#5: 'CPU-Core (SSE2)': 681.7 PMKs/s (RTT 2.9)
#6: 'CPU-Core (SSE2)': 599.4 PMKs/s (RTT 2.6)
#7: 'CPU-Core (SSE2)': 594.1 PMKs/s (RTT 2.5)
#8: 'CPU-Core (SSE2)': 578.3 PMKs/s (RTT 2.6)

Currently the best performance for me are whit original calpp and cpyrit_calpp

Original comment by odl...@gmail.com on 17 Apr 2010 at 5:40

GoogleCodeExporter commented 8 years ago
Following comment 32.
A. unplug 5770
B. fixed /etc/X11/xorg.conf cos 5770 was primary videocard (NOTE: 5870 was PCI
06:00.0 but after i unplug 5770 lspci says it is 05:00.0 so i changed into 
xorg.conf)
C. startx, twm starts, open xterm
D. pyrit benchmark report:

computated 67860 PMK total
#1 HD 5870 66540 PMKs
#2 cpu sse2  605 PMKs
#3 cpu sse2  645 PMKs

So we see: 5870 scale 41000->66540, +60% so huge improvment, more, 2 CPU core 
"came
back" but core #4 still missed.

Then i replug 5770, rerun sometimes the test: 5770 confirm a stable value of 
about
33K, instead 5870 move up and down in the range 34-39K PMK. I user also option 
2>
error_list.txt but no one error was reported.

For the moment, if I want to run both 5770 and 5870 togheter, I must go back to 
r250.
Anyway, v2b shows to be able to do better performances, I hope that this lack 
when 2
different card are in, will be solved soon.

I will provide test and feedback. 

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 6:19

GoogleCodeExporter commented 8 years ago
The 4th cpu core disappeared cause of the line 453 ( I left ncpus-=2 by 
accident :) ).
I'm including debug version of 2b core. Which prints a lot of timing 
informations -
so I'll be able to detect where is the slowdown.
Please test also effect of ncpus-=2 & ncpus-=4. Remember that ATI's driver is 
cpu
hungry to feed the gpus.
BTW the difference of total PMK computed and per core is due some changes in 
core
feeding - so the total value isn't really accurate ( it can be fixed later ).

Original comment by hazema...@gmail.com on 17 Apr 2010 at 6:51

Attachments:

GoogleCodeExporter commented 8 years ago
For accurate timings debug version must have output redirected to file. It 
prints so
much info that when you write it to terminal it's slows down gpu.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 6:52

GoogleCodeExporter commented 8 years ago
Odlan3 results with 6 cpus cores are invalid. You must run max 4 cpu cores so 
the
values have any meaning. With 6 "cores" driver is fighting with 2 computing 
cores for
resources and simply can't feed gpu. 
PS. Please don't include running benchmark - this issue is really long now :).

Original comment by hazema...@gmail.com on 17 Apr 2010 at 6:57

GoogleCodeExporter commented 8 years ago
Error in compiling cpyrit_calpp-v2b-debug 
/usr/bin/ld: cannot find -lboost_date_time-mt
collect2: ld returned 1 exit status
error: command 'g++' failed with exit status 1

Original comment by odl...@gmail.com on 17 Apr 2010 at 7:12

GoogleCodeExporter commented 8 years ago
One more thing. You can change BUFFER_SIZE from 2 to 3 ( or 4 ) - line 37 in
_cpyrit_calpp.cpp file.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 7:18

GoogleCodeExporter commented 8 years ago
I got cpyrit_calpp-v2b-debug.tar.gz  but error when I compile cpyrit_calpp with
'python2.6 setup.py build'

bla bla bla
/usr/bin/ld: cannot find -lboost_date_time-mt

NOTE: when I do "tar zxvf cpyrit_calpp-v2b-debug.tar.gz", I got warning because
timestamp in 6400 s in future.

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 7:21

GoogleCodeExporter commented 8 years ago
I have changed BUFFER_SIZE from 2 to 4 - line 35 in
_cpyrit_calpp.cpp file.But there are some warning about buffer

_cpyrit_calpp.cpp:291: warning: ‘void copy_gpu_inbuffer(CALDevice*, const
gpu_inbuffer*, boost::array<cal::Image2D, 5ul>&, int)’ defined but not used
_cpyrit_calpp.cpp:303: warning: ‘void copy_gpu_outbuffer(CALDevice*, 
gpu_outbuffer*,
boost::array<cal::Image2D, 2ul>&, int)’ defined but not used
g++ -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions
build/temp.linux-x86_64-2.6/_cpyrit_calpp.o
build/temp.linux-x86_64-2.6/_cpyrit_calpp_kernel.o -lssl -laticalrt -laticalcl 
-o
build/lib.linux-x86_64-2.6/cpyrit/_cpyrit_calpp.so

Original comment by odl...@gmail.com on 17 Apr 2010 at 7:34

GoogleCodeExporter commented 8 years ago
boost_date_time-mt - you need to install multithreading version of boost library
date_time component. Also there is a chance it has slightly different name on 
your
system. Check in /usr/lib/ directory and change accordingly in setup.py file.

copy_gpu_inbuffer, copy_gpu_outbuffer - these are unused functions at the 
moment :).

Original comment by hazema...@gmail.com on 17 Apr 2010 at 7:43

GoogleCodeExporter commented 8 years ago
timestamp issue - we could be in different time zone or something.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 7:44

GoogleCodeExporter commented 8 years ago
I compiled and installed boost 1.42.0 from source, following the basic 
instruction.
Now I am reading the documentation of boost but it is a huge bulk of pages... 
have
you the fast trick to compile bost as needed?

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 8:06

GoogleCodeExporter commented 8 years ago
I think i found the problem. The receive function was blocking other threads 
while
waiting and benchmarking code wasn't able to feed gpu cores.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 8:10

Attachments:

GoogleCodeExporter commented 8 years ago
"have you the fast trick to compile bost as needed?" - I think there is none :).
Boost is huge library :). Usually I install from repositories. And when I need 
to
build then it's few hours job.

Original comment by hazema...@gmail.com on 17 Apr 2010 at 8:11

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
cpyrit_calpp-v2-1.tar.gz  should be named cpyrit_calpp-v2b-1.tar.gz  

Original comment by hazema...@gmail.com on 17 Apr 2010 at 8:14

GoogleCodeExporter commented 8 years ago
hazeman11, you are the man!
here the report:

5770: 33227 PMK
5870: 66128 PMK

To me, v2-1 works so well, and it also make 5870 double 5770 as it is aspected 
to have. 

GOOD!

Original comment by pyrit.lo...@gmail.com on 17 Apr 2010 at 8:23

GoogleCodeExporter commented 8 years ago
I'll think it will work on all cards :). So please people with older cards 
report
your results :). My 4770 gives 18300 :) ( 16000 with opencl ).

Original comment by hazema...@gmail.com on 17 Apr 2010 at 8:25