Wireshark-dev: Re: [Wireshark-dev] About a faster wireshark
From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Wed, 10 Oct 2007 15:56:53 -0700

On Oct 7, 2007, at 5:04 PM, Didier wrote:

Is it ok if I upload the diff (~ 250 KB) in the wiki?

From looking at the version you uploaded as an attachment to

	http://wiki.wireshark.org/Development/Optimization

it looks as if one of the components is a new CList implementation.

Is that the part that's "glibc anbd gcc only"?

And what does the new implementation do? I have a CList implementation that doesn't store the strings for the columns, but, instead, calls a supplied callback routine to get the column values when needed. It also has some rough edges (as in "not ready to submit yet" - and it's currently GTK+ 1.2[.x]-only, but it could probably be made to work with both), but speeds up initial loading (no need to allocate and copy the column values when loading), reduces memory use by a *LOT* (no copies made of the column values), and can make some display updates happen *much* faster (e.g., changing the time stamp format - it doesn't need to regenerate all the columns, it just needs to tell the CList to update itself, and the column values change because the callback now supplies different strings).

There also appear to be some other changes, such as a tvb_new_child_real_data() routine, some changes to name resolution, etc; do you have a description of what the changes are?

- It was for running on G4 Macs ie a not registers starved CPU with rather
slow memory.

Well, I just bought a Mac with a register-starved CPU :-) (well, I guess you get 16 registers in 64-bit mode, at least...), so I can see how it'll work there.