Re: Adding epoll support to Kannel
Donald Jackson <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <CALzQDrAysqMnBKZ2xsywOKSHukJr9oweROfeOmf1cAX9K19QtA@mail.gmail.com> |
The reason I am asking is just because as our own instances of Kannel increase their number of SMPP connections we see more and more context switching and overall reduced performance (although not massively so) - so I am considering options for alleviating this - although it would be such a drastic change to the current model it may not be worth it. I might built an alternative SMPP driver using libevent to see what I can extract from that - time permitting :) On 14 November 2014 23:43, Vincenzo Romano <[email protected]> wrote: > Epoll can lead to more efficient code. > Fewer CPU cycles per SMS. > And, in my opinion, why not? > > Il 14/nov/2014 22:39 "Andreas Fink" <[email protected]> ha scritto: > >> the question to ask is "what kind of problem are we trying to solve"? >> >> I could imagine having a SMPP driver which has one thread reading all the >> incoming packets by sitting on a single poll call dealing with all the >> connections in parallel. This reduces the amount of threads but it also >> increases the workload per thread up to the extent that multi core CPU's >> would be not so efficiently used. It depends a lot on the environment you >> are in as well. So far I have not see any performance issues with Kannel and >> its threading model. >> >> Also epoll is not supported on my favourite operating system and seems to >> exist only under Linux. >> >> Am 14.11.2014 um 22:27 schrieb Porter, Kelvin R. >> <[email protected]>: >> >> Hi, >> >> Epoll generally adds a lot of complexity. Generally, using epoll implies >> thread-pooling, use of semaphores, etc. Is this consideration being driven >> by profiling indicating that the processes are somehow being thread-bound? >> Or some other consideration? >> >> Regards, >> >> Kelvin R. Porter >> >> -----Original Message----- >> From: devel [mailto:[email protected]] On Behalf Of Donald Jackson >> Sent: Friday, November 14, 2014 3:21 PM >> To: kannel_dev_mailinglist >> Subject: Adding epoll support to Kannel >> >> Hi all, >> >> Do any of you have any comments or concerns about potentially adding epoll >> support to Kannel ? >> >> I think long term this could be used for better connection management >> rather than the 'connection per thread' approach we currently make use of >> (mostly). >> >> Cheers, >> Donald >> >> >> >> >> >> Andreas Fink >> >> CEO DataCell ehf >> CEO Backbone ehf >> >> --------------------------------------------------------------- >> Tel: +41-61-6666330 Fax: +41-61-6666331 Mobile: +41-79-2457333 >> Address: Clarastrasse 3, 4058 Basel, Switzerland >> E-Mail: [email protected] >> www.datacell.com, www.backbone.is, www.finkconsulting.com www.fink.org >> --------------------------------------------------------------- >> Jabber/XMPP: [email protected] >> ICQ: 8239353 Skype: andreasfink >> >> >> >> > -- Donald Jackson