Messages in this thread | | | Date | Mon, 26 Feb 2007 17:32:01 +0300 | From | Evgeniy Polyakov <> | Subject | Re: threadlets as 'naive pool of threads', epoll, some measurements |
| |
On Mon, Feb 26, 2007 at 01:50:54PM +0100, Ingo Molnar (mingo@elte.hu) wrote: > > I feared _ONLY_ situation when thousands of thereads are eating my > > brain - so case when 161 threads are running simultanesoulsy is not > > that bad compared to what micro-design can do (of its best/worst) at > > all! > > even with ten thousand threads it is still pretty fast. Certainly not > '10 times slower' as you claimed. And it takes only a single, trivial > outer event loop to lift it up to the performance levels of a pure event > based server.
I did not claim that it will be 10 times slower, I said that it will be slower, my '10 times slower', which are actually '15% of hte total time' is a reply to your 'fast as sync' model, no need to repaing the picture :)
> conclusion: currently i dont see a compelling need for the kevents > subsystem. epoll is a pretty nice API and it covers most of the event > sources and nicely builds upon our existing poll() infrastructure. > > furthermore, i very much contest your claim that a high-performance, > highly scalable webserver needs a kevent+nonblock design. Even if i > ignore all the obvious usability and maintainance-cost advantages of > threadlets.
Ok, I see your point, you insult something you did not ever try to understand, that is your right.
> > So, caching is good - threadlets do not spawn a new thread, kevent > > returns immediately, but in case of things are not that shine - > > threadlets spawnd a new thread, while kevent process next request or > > waits for all completed. > > no. Please read the evserver_threadlet.c code. There's no kevent in > there. There's no epoll() in there. All that you can see there is the > natural behavior of pure threadlets. And it's not a workload /I/ picked > for threadlets - it is a workload, filesize, parallelism level and > request handling function /you/ picked for "event-servers".
I know that there is no kevents there, that would be really strange if you would test it in your environment after all that empty kevent releases.
Enough, you say micro-thread design is superior - ok, that is your point.
> Ingo
-- Evgeniy Polyakov - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |