On Mon, Jun 23, 2014 at 8:12 AM, Antti Kantee <[email protected]> wrote: > On 22/06/14 23:08, Justin Cormack wrote: >>>> Why not? >>>> 1. No parallelism. The NetBSD network stack is being made much for >>>> multi processor friendly, so you might lose performance. >>> >>> I still think that if you can partition the network correctly, running n >>> networking stacks on 1 core each is faster than 1 stack on n cores. >> >> Yes I think so, with modern hardware you can create virtual network >> devices or queues on demand, with the expected model being one per >> core to avoid lock contention anyway, so this fits very well. > > You still need one address per networking stack, which is a shoe that > might not fit.
That is not usually a huge problem. More significant is that you then probably need to do IPC of some form between your multiple instances, if they are not completely independent. > Though, given rumprun was possible, I'm sure you can figure out a way to > cram multiple networking stacks into one process for some clever > multiplexing ;) Well you can fork a running kernel as it has no threads, which must have some use case, I just haven't thought of it yet... >>>> 2. Some stuff missing - I deleted eg the block device driver as it was >>>> using threads, daemonize support etc. These are intended to be put >>>> back, they just need some thought and were optional so were >>>> temporarily removed. >>> >>> For bio you can just delete half and run everything in the caller's >>> context. It won't be efficient, but it'll at least work. >>> (not that the bio stuff still is very efficient even with threads) >> >> It is probably worth integrating polling of io into the (currently >> very dumb) scheduler. > > Using the friendly aio interface? Yes, that should fit much better. Need to be careful about the cases where aio says it may still block. Also need to fix the scheduler as it currently busy waits even when all processes are sleeping, it could do a host sleep there, or poll for io with a timeout. Justin ------------------------------------------------------------------------------ HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems _______________________________________________ rumpkernel-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/rumpkernel-users
