Comment by marcosdumay

Comment by marcosdumay 6 days ago

17 replies

Windows used to have that habit of making the processes CPU starved, and yet claiming the CPU was idle all the time.

Since the Microsoft response to the bug was denying and gaslighting the affected people, we can't tell for sure what caused it. But several people were in a situation where their computer couldn't finish any work, and the task-manager claimed all of the CPU time was spent on that line item.

nerdile 6 days ago

As a former Windows OS engineer, based on the short statement here, my assumption would be that your programs are IO-bound, not CPU-bound, and that the next step would be to gather data (using a profiler) to investigate the bottlenecks. This is something any Win32 developer should learn how to do.

Although I can understand how "Please provide data to demonstrate that this is an OS scheduling issue since app bottlenecks are much more likely in our experience" could come across as "denying and gaslighting" to less experienced engineers and layfolk

  • 1000100_1000101 6 days ago

    I'm not the original poster, but I ran into something similar late in Win 7 (Win 8 was in beta at the time). We had some painting software, and we used open-MP to work on each scan-line of a brush in parallel.

    It worked fine on Mac. On Windows though, if you let it use as many threads as there were CPUs, it would nearly 100% of the time fail before making it through our test suite. Something in scheduling the work would deadlock. It was more likely to fail if anything was open besides the app. Basically, a brush stoke that should complete in a tenth of a second would stall. If you waited 30-60 minutes (yes minutes), it would recover and continue.

    I vaguely recall we used the Intel compiler implementation of OpenMP, not what comes with MSVC, so the fault wasn't necessarily a Microsoft issue, but could still be a kernel issue.

    I left that company later that year, and MS rolled out Windows 8. No idea how long that bug stuck around.

RajT88 6 days ago

> Since the Microsoft response to the bug was denying and gaslighting the affected people

Well. I wouldn't go that far. Any busy dev team is incentivized to make you run the gauntlet:

1. It's not an issue (you have to prove to me it's an issue)

2. It's not my issue (you have to prove to me it's my issue)

3. It's not that important (you have to prove it has significant business value to fix it)

4. It's not that time sensitive (you have to prove it's worth fixing soon)

It was exactly like this at my last few companies. Microsoft is quite a lot like this as well.

If you have an assigned CSAM, they can help run the gauntlet. That's what they are there for.

See also: The 6 stages of developer realization:

https://www.amazon.com/Panvola-Debugging-Computer-Programmer...

  • Twirrim 6 days ago

    Even when you have an expensive contract with Microsoft and a direct account manager to help you run the gauntlet you still end up having to deal with awful support people.

    Years ago at a job we were seeing issues with a network card on a VM. One of my coworkers spent 2-3 days working his way through support engineer after support engineer until they got into a call with one. He talked the engineer through what was happening. Remote VM, can only access over RDP (well, we could VNC too, but that idea just confuses Microsoft support people for some reason.)

    The support engineer decided that the way to resolve the problem was to uninstall and re-install the network card driver. Coworker decided to give the support engineer enough rope to hang themselves with, hoping it'd help him escalate faster: "Won't that break the RDP connection?" "No sir, I've done this many times before, trust me" "Okay then...."

    Unsurprisingly enough, when you uninstall the network card driver and cause the instance to have no network cards, RDP stops working. Go figure.

    Co-worker let the support engineer know that he'd now lost access, and a guess why. "Oh, yeah. I can see why that might have been a problem"

    Co-worker was right though, it did finally let us escalate further up the chain....

  • ziddoap 6 days ago

    >If you have an assigned CSAM

    That's an unfortunate acronym. I assume you mean Customer Service Account Manager.

    • RajT88 6 days ago

      Customer Success Account Manager. And I would agree - it is very unfortunate.

      Definitely in my top 5 questionable acronym choices from MSFT.

  • thatfunkymunki 6 days ago

    Your reticence to accept the term gaslighting clearly indicates you've never had to interact with MSFT support.

    • RajT88 6 days ago

      On the contrary, I have spent thousands of hours interacting with MSFT support.

      What I'm getting at with my post is the dev teams support has to talk to, which they just forward along their responses verbatim.

      A lot of MSFT support does suck. There are also some really amazing engineers in the support org.

      I did my time in support early in my career (not at MSFT), and so I understand well it's extremely hard to hire good support engineers, and even harder to keep them. The skills they learn on the job makes them attractive to other parts of the org, and they get poached.

      There is also an industry-wide tendency for developers to treat support as a bunch of knuckle-dragging idiots, but at the same time they don't arm them with detailed information on how stuff works.

      • RHSeeger 6 days ago

        > What I'm getting at with my post is the dev teams support has to talk to, which they just forward along their responses verbatim.

        But the "support" that the end user sees is that combination, not two different teams (even if they know it's two or more different teams). The point is that the end user reached out for help and was told their own experiences weren't true. The fact that Dave had Doug actually tell them that is irrelevant.

gruez 6 days ago

I've never heard of this. How do you know it's windows "gaslighting" users, and not something dumb like thermal throttling or page faults?

  • marcosdumay 6 days ago

    It's gaslighting because it consists on people from Microsoft explicitly saying that it is impossible, it's not how Windows behave, and the user's system is idle instead of overloaded.

    Gaslighting customers was the standard Microsoft's reaction to bugs until at least 2007, when I last oversaw somebody interacting with them.