The Evolution of the Windows Kernel

Discussion in 'HardForum Tech News' started by cageymaru, Oct 18, 2018.

  1. cageymaru

    cageymaru [H]ard as it Gets

    Messages:
    19,300
    Joined:
    Apr 10, 2003
    Hari Pulapaka of the Windows Kernel Team at Microsoft has explained the evolution of the Windows kernel and how it can scale from an ATM machine to a pre-release Windows DataCenter class machine with 896 cores supporting 1792 logical processors and 2TB of RAM. The discussion starts its focus on Windows refactoring for a DLL, statistics such as how many lines of code are in the kernel, and then transitions to the Windows scheduler and the design principles implemented to scale past 64 logical processors.

    Windows 10 brought us another innovation in the scheduler space with CPU Sets. CPU Sets allow a process to partition the system such that its process can take over a group of processors and not allow any other process or system to run their threads on those processors. Windows Kernel even steers Interrupts from devices away from the processors that are part of your CPU set. This ensures that even devices cannot target their code on the processors which have been partitioned off by CPU sets for your app or process. Think of this as a low-tech Virtual Machine.
     
  2. Jim Kim

    Jim Kim 2[H]4U

    Messages:
    3,315
    Joined:
    May 24, 2012
    tHiS is so cool.
    The data mining portion is seperate from the marketing portion is seperate from teh candy crush portion.;)
     
  3. EODetroit

    EODetroit [H]ard|Gawd

    Messages:
    1,486
    Joined:
    Oct 20, 2004
    If this doesn't mean I can play Crisis at a higher FPS, I don't really care.
     
  4. DPI

    DPI Nitpick Police

    Messages:
    10,955
    Joined:
    Apr 20, 2013
    LMAO
     
    gigatexal likes this.
  5. BSmith

    BSmith [H]ard|Gawd

    Messages:
    1,324
    Joined:
    Nov 9, 2017
    All the pretty tech terns in the world mean poop if the damn thing is not stable. I have had the pleasure of rolling back customers to Windows 7 due to the problems with Windows 10 and its insane updates. While I like the steady work, I am at an age where I would like to dial it back a bit.

    EDIT: The ones I have rolled back were not installed by me. Those guys got fired due to the problems. From what I can tell, they are the standard issue problems (updates resetting paramters is the big one).
     
    GHRTW and Lakados like this.
  6. Lakados

    Lakados [H]ard|Gawd

    Messages:
    1,394
    Joined:
    Feb 3, 2014
    I am pretty sure Microsoft worked out the setting reset issue a long while back. That being said I’m ditching Windows 10 left and right, not for any of those issues mind you. ChromeOS + Citrix server does everything we need at a lower price point with fewer stoppages and slowdowns with a fraction of the IT overhead. The Google metric tracking is just as easy to midigate and licensing for google admin is cheaper than my Enterprise licensing for all those desktops.
     
    /dev/null likes this.
  7. KarVi71

    KarVi71 n00b

    Messages:
    25
    Joined:
    Dec 14, 2016
    Its a nice article.

    And I'm quite certain the Windows kernel is weel thought through, robust, and reasonably well optimized.
    Something the developers could and should be proud off.

    Its a shame its let down so much by the rest of the OS. Especially Windows update has become a nuisance. In the last week it has given me problems on 2 out 3 machines I have worked with.

    Prompting that an update (1803) is ready, shows that its compatible, but fails somewhere during the update. And the update system then tries again and agian and again, and you cant stop it, and no other updates are seemingly installed meanwhile.
    No help is given as to how to fix the problems, besides a reinstall, which is often not a disereable option.
    You are caught in an endless update loop that eats your CPU resources and your time, each time you wait for a failed attempt.

    They really need to work on this.
     
  8. BloodyIron

    BloodyIron 2[H]4U

    Messages:
    3,440
    Joined:
    Jul 11, 2005
  9. BSmith

    BSmith [H]ard|Gawd

    Messages:
    1,324
    Joined:
    Nov 9, 2017
    No, they are still resetting parameters back to default with no notification of doing so. I just wrestled with another batch of systems that got updated and everything broke. Really did not break, but had reset back to defaults and required the tedium of setting them again.

    From a consultant perspective Windows 10 is awesome! It has increased my billable hours by 132%! From a user perspective,...well hell, as long as they pay the bills,...why should I care?

    On server side, I do not do Windows. If they want Windows, they can get someone else.
     
    Lakados likes this.
  10. Lakados

    Lakados [H]ard|Gawd

    Messages:
    1,394
    Joined:
    Feb 3, 2014
    In a domained Enterprise environment I can’t say this ever happened on this end, but I have been avoiding the latest update. I do use the GPO setting to delete profile data older than 1 year old, as the user data deletion glitch seems to happen because of that I am waiting for the all clear before I push it out. I really should try Home edition at some point to see what all this hate is about.
     
  11. tetris42

    tetris42 [H]ardness Supreme

    Messages:
    4,518
    Joined:
    Apr 29, 2014
    Why?
     
    Jim Kim likes this.
  12. diehardman

    diehardman n00b

    Messages:
    43
    Joined:
    Jan 17, 2017
    I always wait for any Win 10 build to be "Business ready" before deploying it, especially if its an in-place upgrade.
     
    ManofGod likes this.
  13. ManofGod

    ManofGod [H]ardForum Junkie

    Messages:
    10,122
    Joined:
    Oct 4, 2007
    Well, how come they are having such issues with the AMD 2990WX not scaling above 16 cores then?
     
    heatlesssun likes this.
  14. gamerk2

    gamerk2 [H]ard|Gawd

    Messages:
    1,547
    Joined:
    Jul 9, 2012
    Because the workloads people are trying to use do not scale. Not every task is going to scale toward infinity.
     
    Sulphademus likes this.
  15. Shadowed

    Shadowed Limp Gawd

    Messages:
    482
    Joined:
    Mar 21, 2018
    I think that was a reference at the scaling tests done by Phoronix on linux vs the poor scaling on Windows.
     
  16. haz_mat

    haz_mat Limp Gawd

    Messages:
    324
    Joined:
    Sep 14, 2012
    Interesting they mention Game Mode offering this new "CPU Sets" functionality. I've been wondering if that mode was just some marketing BS or if there were any real technical benefits. Reserving some cores for a game is something that could prove useful as CPUs with 8+ cores become more mainstream. Windows always seemed to me to have a bad habit of jumping threads around for no good reason, so even if you have the CPU power to multitask while gaming you still might get some stuttering. I usually just set CPU affinity and priority, but this seems to go a bit further.

    Hopefully this API can be used outside the requirement tying game mode to windows store apps only. But knowing microsoft, they'll shamefully waste good tech for the chance to lock you in.
     
  17. Galvin

    Galvin 2[H]4U

    Messages:
    2,688
    Joined:
    Jan 22, 2002
    I been using process lasso to run games on certain cores and firefox on the other. Creates a very smooth gaming experience
     
  18. gamerk2

    gamerk2 [H]ard|Gawd

    Messages:
    1,547
    Joined:
    Jul 9, 2012
    That test was specifically for a NUMA architecture; in that type of situation Window's thread scheduling design will hinder performance due to threads being assigned to different cores (resulting in significantly more memory access, which you do NOT want in a NUMA architecture). What Phoronix uncovered wasn't Windows lack of scaling, but Windows scheduling deficiencies in a NUMA environment.
     
    painintheworld likes this.
  19. ManofGod

    ManofGod [H]ardForum Junkie

    Messages:
    10,122
    Joined:
    Oct 4, 2007
    And also the issues that Kyle has been pointing out.
     
  20. ManofGod

    ManofGod [H]ardForum Junkie

    Messages:
    10,122
    Joined:
    Oct 4, 2007
    Yeah, the thread jumping did not help the FX8350 in any way. (Those were good processors for what they were capable of but, oh well, they did run better under Linux, from what I was told.)
     
  21. Ordeith

    Ordeith Limp Gawd

    Messages:
    380
    Joined:
    May 30, 2013
  22. socK

    socK 2[H]4U

    Messages:
    3,650
    Joined:
    Jan 25, 2004
    There's no shortage of janky shit in Windows but IO Completion Ports are basically awesome and definitely something that's really done right.