Changeset 74589 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Oct 3, 2018 12:29:56 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/NEMR3Native-win.cpp
r74588 r74589 2515 2515 * 2516 2516 * Update on 17134. While expectantly testing a couple of newer builds (17758, 2517 * 17763) hoping for some increases in performance, the numbers turn out 2518 * to be generally worse than the initial test June test run. So, I went back 2519 * to the 1803 (17134) installation and re-tested, finding that the numbers had 2520 * somehow turned worse over the last 3-4 months. 2521 * 2522 * 2523 * 2524 * Suspects are security updates and/or microcode updates installed since then, 2525 * either hitting thread switching and/or hyper-V badly. I'm a bit puzzled why 2526 * AMD is affected this badly too. 2517 * 17763) hoping for some increases in performance, the numbers turned out 2518 * to altogether worse than the June test run. So, we went back to the 1803 2519 * (17134) installation, made sure it was fully up to date (as per 2018-10-02) 2520 * and re-tested. 2521 * 2522 * The numbers had somehow turned significantly worse over the last 3-4 months, 2523 * dropping around 70% for the WinHv API test, more for Hypercalls + VID. 2524 * 2525 * @verbatim 2526 TESTING... WinHv API Hypercalls + VID VirtualBox AMD-V * 2527 32-bit paged protected mode, CPUID : 33 270 ins/sec 33 154 2528 real mode, CPUID : 33 534 ins/sec 32 711 2529 [snip] 2530 32-bit paged protected mode, RDTSC : 102 216 011 ins/sec 98 225 419 2531 real mode, RDTSC : 102 492 243 ins/sec 98 225 419 2532 [snip] 2533 32-bit paged protected mode, Read CR4 : 2 096 165 ins/sec 2 123 815 2534 real mode, Read CR4 : 2 081 047 ins/sec 2 075 151 2535 [snip] 2536 32-bit paged protected mode, 32-bit IN : 32 739 ins/sec 33 655 2537 32-bit paged protected mode, 32-bit OUT : 32 702 ins/sec 33 777 2538 32-bit paged protected mode, 32-bit IN-to-ring-3 : 32 579 ins/sec 29 985 2539 32-bit paged protected mode, 32-bit OUT-to-ring-3 : 32 750 ins/sec 29 757 2540 [snip] 2541 32-bit paged protected mode, 32-bit read : 20 042 ins/sec 21 489 2542 32-bit paged protected mode, 32-bit write : 20 036 ins/sec 21 493 2543 32-bit paged protected mode, 32-bit read-to-ring-3 : 19 985 ins/sec 19 143 2544 32-bit paged protected mode, 32-bit write-to-ring-3 : 19 972 ins/sec 19 595 2545 2546 * @endverbatim 2547 * 2548 * 2549 * Suspects are security updates and/or microcode updates installed since then. 2550 * Given that the RDTSC and CR4 numbers are reasonably unchanges, it seems that 2551 * the Hyper-V core loop (in hvax64.exe) aren't affected. Our ring-0 runloop 2552 * is equally affected as the ring-3 based runloop, so it cannot be ring 2553 * switching as such (unless the ring-0 loop is borked and we didn't notice yet). 2554 * 2555 * The issue is probably in the thread / process switching area, could be 2556 * something special for hyper-V interrupt delivery or worker thread switching. 2557 * 2558 * Really wish this thread ping-pong going on in VID.SYS could be eliminated! 2527 2559 * 2528 2560 * … … 2612 2644 * 2613 2645 * The setups, builds and configurations are as in the previous benchmarks 2614 * (release r123172 on 1950X running 64-bit W10/17134 ). Please note that the2615 * exit optimizations hasn't yet been in tuned with NetPerf in mind.2646 * (release r123172 on 1950X running 64-bit W10/17134 (2016-06-xx). Please note 2647 * that the exit optimizations hasn't yet been in tuned with NetPerf in mind. 2616 2648 * 2617 2649 * The NAT network setup was selected here since it's the default one and the
Note:
See TracChangeset
for help on using the changeset viewer.