RE: [BUG] list implementation too slow.

"Oded Arbel" <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>
I use list_extract_first to grab messages from the queue, and
list_append to add messages to the queue - both are very slow if the
list gets too long (a couple of handreds can cause noticable slowing).
except for calling list_len on every list_append, I don't use any other
list_ functions.

I have a debug output on the loops that do append and extract. normally
the tight extract loop should extract MAX_MESSAGES in under a second,
but as the list grows, it takes it more time to complete the loop.

--
Oded Arbel
m-Wise Inc.
[email protected]

Did you know that "if" is the middle of the word "life"?
	-- from "Apocalypse Now"


> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]]On Behalf Of Paul Keogh
> Sent: Thursday, March 21, 2002 12:37 PM
> To: 'Kannel-devel (E-mail)'
> Subject: RE: [BUG] list implementation too slow.
> 
> 
> > Lately we've been doing some very high capacity testing on 
> > Kannel , and
> > found out some interesting stuff. mainly as queues (managed 
> by lists)
> > are filling up to over a few hundreds of messages, the boxes start
> > thrashing. 
> > I think this is directly related to the List implementation - 
> > it's just
> > too sssslllloooowwww. when we have more then a few hundreds 
> > of messages
> > in the List, extracting one item can sometimes take anywhere 
> > from 2 to 4
> > seconds (!!!).
> > 
> > Does any one have any information or experience regarding that ?
> 
> Do you have any insight into which particular list_() functions are
> causing this ? Some of the comments in list.c suggest possible
> inefficiencies, notably where the list has to grow to accomodate
> insert/append operations. Also, all of the list search functions
> are linear.
> 
> How are you measuring time spend in functions ? Quantify ? 
> 
>  
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.