[freetds] FreeTDS performance

Frediano Ziglio freddyz77 at tin.it
Sat May 17 08:12:54 EDT 2003

Il ven, 2003-05-16 alle 19:07, Lowden, James K ha scritto:
> > From: Bort, Paul [mailto:pbort at tmwsystems.com]
> > Sent: May 16, 2003 11:37 AM
> > 
> > Also, what dirty tricks is Query Analyzer pulling under the hood? 
> None.  What could it do?  The answer has to come from the server.  Windump
> will confirm.  
> > You might want to try the command-line version (isql.exe) instead.
> Apples and oranges.  QA is ODBC over TDS 7.0  isql is a db-lib app using TDS
> 4.2, meaning the varchar data are represented as ASCII.  
> A better test would compare bcp.exe to freebcp, using native data formats.
> That would bypass the binary->character conversions and the terminal I/O.
> The last time I did such a test -- a couple of months ago, discussed in the
> archives -- freebcp held its own against bcp.exe.  
> Our numeric->char conversion was inordinately slow, but Frediano since fixed
> that.  Money is now the bad guy, and I hope we'll solve that when we
> eventually get Bill Thompson's 8-byte integer version working on both sides
> of the Endian divide.  
> I'm at a loss to explain what Frediano's bumped into.  I hope it turns out
> to be --extra-checks or DMALLOC or something of that ilk.  

I disable display saving some seconds.
I enabled log and time did not change that much...
I execute this command (out.txt is dump)

cat out.txt | grep ^Received | perl -ne 'if (/header/) {
s/(\d+\.\d{6})//; $begin = $1; if ($end) { while ($begin < $end) {
$begin += 60; } $local += $begin - $end } } else { s/(\d+\.\d{6})//;
$end = $1; if ($begin) { while ($end < $begin) { $end += 60; } $wire +=
$end - $begin } } END {print "wire time $wire - local time $local\n";}'

To get time spent on wire and local (well, is not accurate, some wire
time are marked as local..)

wire time 26.7019729999999 - local time 18.7550250000001

So it spend most of the time waiting data (if server was slower than
local wire should be much lower)...


More information about the FreeTDS mailing list