Zbr's days.
February
Sun Mon Tue Wed Thu Fri Sat
       
22
     
2007
Months
Feb

About TODO Blog RSS Old blog Projects Gallery Notes

Thu, 22 Feb 2007

New syslet/threadlet release by Ingo Molnar.[ND]


Feature set include new entity called threadlet - it is a function, which will be executed in a sync context, and if it blocks (for example in some syslet) new thread will be created on behalf of that function, thus this approach allows to have a mssively parrallel execution.
Unfortunately there are serious caveats in the design - threadlets are not even designed to work with network, where essentially most of the calls sleep.
Main problem here is the fact, that havin the whole thread to handle a simple execution context is wrong - it does not scale - rescheduling is damn to slow in kernelspace->userspace boundary crossing, that is why I develop an alternative M:N threading model in userspace.
I also doubt about its usefullness - people who care will create own thread for that, since POSIX thread creation overhead generally much smaller than time function executes.

Among other changes:

  • get rid of locked pages for completion ring. (Just as prognosed, what else among implemented in kevent ideas will get its place in syslets?)
  • multiple completion rings
  • removed initialization and celanup functions, instead parameters are explicitly transferred into execution syscall
  • bug fixes

/devel/kevent/aio :: Link / Comments (0)

Please solve this captcha to be allowed to post (need to reload in a minute): 33 - 29

Comments are closed for this story.