Messages in this thread | | | Date | Tue, 27 Feb 2007 11:16:11 +0300 | From | Evgeniy Polyakov <> | Subject | Re: threadlets as 'naive pool of threads', epoll, some measurements |
| |
On Mon, Feb 26, 2007 at 09:23:38PM +0100, Ingo Molnar (mingo@elte.hu) wrote: > > * Evgeniy Polyakov <johnpol@2ka.mipt.ru> wrote: > > > > 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. > > i havent got around figuring out the last v2.6.20 based kevent release, > and your git tree is v2.6.21-rc1 based. Do you have some easy URL for me > to fetch the last v2.6.20 kevent release?
I use kevent-36 release patches on top of 2.6.20 tree. There are some syscall numbers overlap with thrteadlet patches, but rejectsa re trivial.
> > Enough, you say micro-thread design is superior - ok, that is your > > point. > > note that threadlets are not 'micro-threads'. A threadlet is more of an > 'optional thread' (as i mentioned it earlier): whenever it does anything > that makes it distinct from a plain function call, it's converted into a > separate thread by the kernel. Otherwise it behaves like a plain > function call and returns.
I know. But it is rare case for the most situations, when things do not block, so I called it micro-thread, since it spawns a new thread (get from preallocated pool) for parallel processing.
> 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/
| |