On 11/10/2018 12.14, Nadav Har'El wrote:
On Thu, Oct 11, 2018 at 12:10 PM Pekka Enberg <[email protected] <mailto:[email protected]>> wrote:



    On Thu, Oct 11, 2018 at 11:50 AM Nadav Har'El <[email protected]
    <mailto:[email protected]>> wrote:


        tests/misc-ctxsw.cc

        To run it in OSv you can do "scripts/build image=tests" and
        then "scripts/run.py -e tests/misc-ctxsw.so"

        What this test does is to create two threads (on the same
        core, or on two different cores) which alternate waking the
        other thread and then waiting (via a condition variable).
        Strangely I just tested this again on my laptop (which is
        newer than the paper), and got (for the colocated case) in OSv
        is around 400ns, and in Linux around 1800ns, so the difference
        is even more pronounced today.


    Perhaps you are seeing the effects of Meltdown mitigation in Linux
    context switching paths?


Perhaps, I didn't look into this carefully, I just ran it now to make sure I was pointing the OP to the right test :-) Does meltdown mitigation have a performance cost even when switching between two threads belonging to the same process?



Yes, the kernel and userspace run in different address spaces (CR3 switch on every kernel entry and exit). It's not a thread context switch cost, but a syscall cost.

--
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to