[Qt-interest] QSslSocket: poor throughput over long fat pipes ?
Thiago Macieira
thiago.macieira at trolltech.com
Mon Jul 27 20:50:38 CEST 2009
Em Segunda-feira 27 Julho 2009, às 17:24:30, Stephen Collyer escreveu:
> I have a client who has reported poor throughput with a
> QTcpServer/QSslSocket
> based app when run over a long fat pipe with a bandwidth-delay product of
> about 1.2MB (b/w of 622Mb/s and latency of 15ms).
>
> When using a curl client and Apache server on this link, throughput was
> about 60MB/s.
>
> When using a curl client and the QTcpServer/QSslSocket (in unencrypted
> mode) throughput was about 20MB/s.
>
> Both tests were run on the same Opensuse 10.3 installation.
>
> Does anyone know if there are inherent limitations in the Qt socket
> implementation (in the event loop maybe) that could limit QSslSocket
> performance to such an extent ?
I can get way more than 20 MB/s if I use localhost here. With QTcpSocket, I
can get over 600 MB/s (megabytes, not bits).
The next best connection I have is a FastEthernet, at 100 Mbit/s. Using that
pipe, I can get 10 MB/s easily.
When working over the network, the servers are not running Qt. But even in
encrypted client mode, the throughput gets to 10 MB/s.
I don't have any networks faster than that to test.
Can you check if your Qt program is saturating one CPU? The Qt overhead would
explain for a 3x performance drop compared to curl if the problem is CPU. But
usually it isn't: the limiting factor is bandwidth and Qt should reach the
bandwidth limit.
--
Thiago Macieira - thiago.macieira (AT) nokia.com
Senior Product Manager - Nokia, Qt Software
Sandakerveien 116, NO-0402 Oslo, Norway
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20090727/7f851957/attachment.bin
More information about the Qt-interest-old
mailing list