iWARP and soft-iWARP interop testing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



So, Jason and I were discussing the soft-iWARP driver submission, and he
thought it would be good to know if it even works with the various iWARP
hardware devices.  I happen to have most of them on hand in one form or
another, so I set down to test it.  In the process, I ran across some
issues just with the hardware versions themselves, let alone with soft-
iWARP.  So, here's the results of my matrix of tests.  These aren't
performance tests, just basic "does it work" smoke tests...

Hardware:
i40iw = Intel x722
qed1 = QLogic FastLinQ QL45000
qed2 = QLogic FastLinQ QL41000
cxgb4 = Chelsio T520-CR



Test 1:
rping -s -S 40 -C 20 -a $local
rping -c -S 40 -C 20 -I $local -a $remote

                    Server Side
	i40iw		qed1		qed2		cxgb4		siw
i40iw	FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]
qed1	FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]
qed2	FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]
cxgb4	FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]		FAIL[1]
siw	FAIL[2]		FAIL[1]		FAIL[1]		FAIL[1]		Untested

Failure 1:
Client side shows:
client DISCONNECT EVENT...
Server side shows:
server DISCONNECT EVENT...
wait for RDMA_READ_ADV state 10

Failure 2:
Client side shows:
cma event RDMA_CM_EVENT_REJECTED, error -104
wait for CONNECTED state 4
connect error -1
Server side show:
Nothing, server didn't indicate anything had happened

Obviously, rping appears to be busted on iWARP (which surprises me to be
honest...it's part of the rdmacm-utils and should be using the rdmacm
connection manager, which is what's required to work on iWARP, but maybe
it just has some simple bug that needs fixed).

Test 2:
ib_read_bw -d $device -R
ib_read_bw -d $device -R $remote

                    Server Side
	i40iw		qed1		qed2		cxgb4		siw
i40iw	PASS		PASS		PASS		PASS		PASS
qed1	PASS		PASS		PASS		PASS		PASS[1]
qed2	PASS		PASS		PASS		PASS		PASS[1]
cxgb4	PASS		PASS		PASS		PASS		PASS
siw	FAIL[1]		PASS		PASS		PASS		untested

Pass 1:
These tests passed, but show pretty much worst case performance
behavior.  While I got 600MB/sec on one test, and 175MB/sec on another,
the two that I marked were only at the 1 or 2MB/sec level.  I thought
they has hung initially.

Test 3:
qperf
qperf -cm1 -v $remote rc_bw

                    Server Side
	i40iw		qed1		qed2		cxgb4		siw
i40iw	PASS[1]		PASS		PASS[1]		PASS[1]		PASS
qed1	PASS[1]		PASS		PASS[1]		PASS[1]		PASS
qed2	PASS[1]		PASS		PASS[1]		PASS		PASS
cxgb4	FAIL[2]		FAIL[2]		FAIL[2]		FAIL[2]		FAIL[2]
siw	FAIL[3]		PASS		PASS		PASS		untested

Pass 1:
These passed, but only with some help.  After each client ran, the qperf
server had to be restarted or else the client would show this error:
rc_bw:
failed to receive RDMA CM TCP IPv4 server port: timed out

Fail 2:
Whenever cxgb4 was the client side, the test would appear to run
(including there was a delay appropriate for the test to run), but when
it should have printed out results, it printed this instead:
rc_bw:
rdma_disconnect failed: Invalid argument

Fail 3:
Server side showed no output
Client side showed:
rc_bw:
rdma_connect failed

So, there you go, it looks like siw actually does a reasonable job of
working, at least at the functionality level, and in some cases even has
modestly decent performance.  I'm impressed.  Well done Bernard.

-- 
Doug Ledford <dledford@xxxxxxxxxx>
    GPG KeyID: B826A3330E572FDD
    Key fingerprint = AE6B 1BDA 122B 23B4 265B  1274 B826 A333 0E57 2FDD

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux