This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Loading code with an Abatron BDI2000
- From: Shaun Jackman <sjackman at gmail dot com>
- To: gdb at sources dot redhat dot com, Abatron Support <support at abatron dot ch>, Ultimate Solutions Support <support at ultsol dot com>
- Date: Fri, 8 Jul 2005 11:52:33 -0700
- Subject: Re: Loading code with an Abatron BDI2000
- References: <7f45d939050708094342de60b@mail.gmail.com>
- Reply-to: Shaun Jackman <sjackman at gmail dot com>
A little searching through GDB's manual turned up "set remote
memory-write-packet-size" and "set download-write-size". On my target
these values defaulted to 336 and 512 respectively. I found that
increasing them to 1025 and 8192 did improve performance somewhat. I
used 1025 because I found the TCP packet size sent by GDB was limited
to 1024 for some reason unknown to me (anyone else know?) and the "+"
acknowledgement was sent in a TCP packet all to its own, but still
counted against the memory-write-packet-size. How can I increase the
TCP packet size to 1460, the TCP MSS, to get more date bytes out of
each packet? Any other thoughts on how else I can improve the transfer
rate?
Cheers,
Shaun
set remote memory-write-packet-size 1025
set remote memory-write-packet-size fixed
set download-write-size 8192
For the curious, a typical transfer between gdb and the BDI2000 is as
follows. The left column is elapsed milliseconds since t0.
0 +
0 $X and 1024 bytes of data
1 ACK the +
3 ACK the $X
14 ACK window update
27 ACK window update
29 +
39 $OK
69 +
70 $X and 1024 bytes of data
... and so forth.
There's quite a gap (30 ms) between the BDI's $OK the gdb's +. Could
this be improved?
On 7/8/05, Shaun Jackman <sjackman@gmail.com> wrote:
> I'm using gdb 6.2.1 to debug an ARM7TDMI with an Abatron BDI2000, a
> device which speaks the gdb remote protocol natively over Ethernet.
> Loading code with gdb is a slower process than I had hoped.
...