tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: revivesa status 2008/07/09
christos%astron.com@localhost (Christos Zoulas) wrote:
> >Would not be so sure about significant performance benefit. Can you provide
> >a practical application where SA outperforms 1:1?
>
> Yes, on a uniprocessor an application that has many threads and does not
> do a lot of kernel waiting will always beat 1:1 just because it does not
> have to use the kernel to context switch.
Well, question in previous email still valid:
- Do you have a real-world scenario, that is application, when you need many
threads on UP system which do not do any blocking (no I/O, no syscalls, no
or limited synchronisation)?
- Avoiding the overhead of user-space <-> kernel-space switches, run queues,
full context switch - that would definitely increase the performance. But I
doubt that very significantly, keeping in mind that context switch is
performed, let's say, every 100 ms (traditional RR time).
- I still think that one can achieve the same performance by re-designing
such application.
> >Well, it is "well-understood" in theory. SA was a kind of nice idea from
> >theoretical perspective, but was not proven practically in any relevant
> >environment and system. At least two systems which tried migrated to 1:1.
>
> Let's not confuse N:M to SA. Which other system do you know that used SA?
OK, not sure what was Solaris' M:N implementation, but FreeBSD's KSE were
similar to SA by Anderson. From what I understand looking at the code (see
kern_kse.c), the same upcalls and new-thread-on-block way was used.
Recently they removed KSE from -current.
> Once SA is merged it will be easy to measure.
>
Since there is a branch, it could be measured without merging.
--
Best regards,
Mindaugas
www.NetBSD.org
Home |
Main Index |
Thread Index |
Old Index