24 Cores and the Mouse Won't Move: Engineer Diagnoses Windows 10 Bug (wordpress.com)
Longtime Slashdot reader ewhac writes: Bruce Dawson recently posted a deep-dive into an annoyance that Windows 10 was inflicting on him -- namely, every time he built Chrome, his extremely beefy 24-core (48-thread) rig would begin stuttering, with the mouse frequently becoming stuck for a little over one second. This would be unsurprising if all cores were pegged at 100%, but overall CPU usage was barely hitting 50%. So he started digging out the debugging tools and doing performance traces on Windows itself. He eventually discovered that the function NtGdiCloseProcess(), responsible for Windows process exit and teardown, appears to serialize through a single lock, each pass through taking about 200 microseconds each. So if you have a job that creates and destroys a lot of processes very quickly (like building a large application such as Chrome), you're going to get hit in the face with this. Moreover, the problem gets worse the more cores you have. The issue apparently doesn't exist in Windows 7. Microsoft has been informed of the issue and they are allegedly investigating.
*rimshot at Oregon retards*
Well... there's your problem.
Not a program, a process.
Only crack the nuts that crack. You don't put the ones that don't crack in the sack.
Not 200S each, which is off by a factor of one million. But, hey.
7 come 11. Baby needs new shoes.
We just don't have priority...
“He’s not deformed, he’s just drunk!”
With extremely minimal effort, I ported a script from Linux to MSYS2 so I could do the same task on Windows machines too. The fork cost was so much higher that it easily ran at 1/50 the speed. There's really no excuse for having such a high fork cost for a console-only application.
Well you should probably stop using Windows 98.
This would be unsurprising if all cores were pegged at 100%, but overall CPU usage was barely hitting 50%.
It would be surprising. A faulty hardware causing interrupt storms, a kernel level driver problem or a memory leak issue with slow swap space would be more likely to cause such issues. Although, after the previous cumulative update or the one before that the system have been less fair to the UI (stuttering) under heavy loads even with eight cores. The jury is out yet for the today's patch.
If there is an issue that keeps process termination and cleanup from being properly parallelized; I can understand why that might cause unexpectedly poor utilization of additional cores for computationally intensive tasks that also massacre lots of processes; but why would that cause the GUI to stop responding?
Unless moving the cursor also depends on terminating a bunch of processes; and hangs until that task is finished, wouldn't the inefficiency imposed on the build process be expected to keep the GUI more responsive; by preventing it from occupying as much CPU time as it otherwise would?
Am I just confused? Does keeping the desktop and cursor drawn actually involve lots of time sensitive process killing? Does this indeed not make sense?
Marketing - "How do we monetize this...."
Engineers - "You mean after we fix it?"
Marketing just begins laughing - "Only if it get more money then leaving it in and marketing it as a feature"
7 right?
any thing to make INTEL look good next the amd chips with more cores.
Intel is hitting rock bottom and is willing to pay off any one to keep AMD from being king this round.
being the only OS I've ever seen in my life move a window around screen w/o tearing. Yeah, it doesn't make much difference, but you'd think in 2017 my quad core CPU and 8 gigs of ram could do what a 400 mghz AMD K6 did in 1996 with 512 mb ram.
Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
It's not even wrong (to quote a famous scientist about a really ill-formed idea).
At this point with multi-core computers, the GUI and mouse etc should be on a completely separate core that is managed somewhat separately than all of the others.
Where are we going and why are we in a handbasket?
That could be related to the hardware acceleration. If I had to guess, the Windows desktop would need to wait for the game to release it's GPU resources and load its own in to the GPU memory.
Back in the XP days, going from game to desktop was very quick, but going from desktop back to game was very slow. When Vista came along, the Os started using the GPU to accelerate the desktop. Made it slow both ways
See? Shows how much of a clusterfuck Windows 10 is.
Windows 7 keeps proving that it is superior to its newer versions.
Made it slow both ways
And more expensive. Oh, the irony!
2 Core for DRM
2 Core for DRM Protection
2 Core for Telemetry
2 Core for Telemetry Protection
2 Core for Genuine Advantage
2 Core for Genuine Advantage Protection
2 Cores for Driver Signing Validation
2 Cores for Driver Signing Validation Protection
2 Cores for Cortana
2 Cores for Cortana Telemetry
2 Cores for Cortana Telemetry Protection
1 Core for the Base OS
1 Core, at 25% for user processes
98 was the best in terms of taking input. It would take input even while the GUI was frozen. Then when you filled the buffer the PC speaker made this neat chirping noise.
Use Unicode for micro, yo insensitive clod!
No, full screen gaming mode in windows is designed to provide resources and priority to the game as the last thing someone wants is, indexing, search, defraging etc etc chewing up cycles. so that is NOT the same issue at all and if anything is somewhat a feature, just one of the consequences of such prioritisation is that when you want to quickly switch back their is significant (noticeable) time and delays as resources are paged back in.
I've been working on various high load tests on my 6-cores deskptop Win10 machine and noticed the exact same thing. I even changed to a wired mouse thinking the wireless mouse may have a radio issue!
Remember "DOS isn't done until Lotus won't run"?
In my basement office I have six computers I use regularly. Two are running MacOSX, one is running Ubuntu, two are Windows XP, and one is Windows 10. I just went around the room and checked uptimes. All of them were up for more than 3 months, except the Windows 10 computer. This one computer is supposed to be pretty fast compared to the rest but it gets bogged down where I feel compelled to reboot it. It also has the nasty habit of demanding to reboot when I'm trying to get work done, but that's a different problem. After reading this I'm somewhat relieved to think I'm not doing something wrong that's making it run slow, or that I'm just imagining things.
One of the Windows XP computers claims to have been on for over 15 years. I know this is not true since it's not even that old. Does the system uptime clock rollover or something to where it cannot track uptime accurately after a few months?
I dislike rebooting or powering off computers, preferring instead to just allow them to go to sleep when I'm done with them. They tend to stay on unless there is a power outage, and the power has been unusually stable with so many lightning storms in the area. It wasn't that long ago when such lengthy periods of uninterrupted time between crashing was unheard of. I'd probably have had longer uptimes if the power had not blinked.
People may ask why I run Windows XP. It's because I have some old software that I like and it won't run on my newer Windows 10 computer. So long as the hardware keeps going I feel no need to upgrade them in any way.
People may ask why I run MacOSX. Because fuck you, that's why. I'd give a serious answer but few people ask this seriously, they just want to be snobs.
I am armed because I am free. I am free because I am armed.
Ticket marked as closed...
solution: Use MS Edge instead of chrome send to customer.
Use Unicode for micro, yo insensitive clod!
We're on Slashdot not Soylent, here's no Unicode support. You don't expect those who wrote Slashcode to be able to enable a feature that's ready since a decade ago, do you?
The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
This has happened when starting Chrome since first trying Chrome.
Tried limiting Chrome to 3/6 cores and even then mouse goes jerky.
It may not be the exact same cause, but it is the exact same symptom.
There's also the matter that until somewhat recently, most lower-end GPUs were designed to accelerate lower resolution and/or shallower bit depths than the max the card could use for Windows. For example, the card might have allowed up to 2560x1600 @ 24/32bpp, but only supported hardware 3D acceleration up to 1280x800@15/16bpp. Even when resolution finally caught up, bit depth w/acceleration was stuck at 16bpp until well into the Windows 7 era. This is why so many computers with semi-ok gaming specs still couldn't do Aero Glass transparency when Windows 7 came out... they couldn't hardware-accelerate 32-bit color.
The problem still semi-persists among many phones & tablets. If an Android device seems to get blurry for a moment during transitions, it's not your imagination... Android is dropping to lower-res/fewer colors to accelerate the transition, then going back to high-res/color dumb framebuffer mode when it's done (and text suddenly becomes sharp & clear a moment later)
Advanced power settings turn of hard disk never.
I found this fixed my ssd problems.
Yes. When everyone gets to high school, OS scheduling should be a priority. And if biology needs to be pushed out to make time for OS scheduling, then so be it. After all, noone needs to know the difference between a penis and a vagina. Transgenders don't. But I sure fuckin hope they know about OS scheduling! Fuckity FUCK!
I guess he doesn't use Excel.... because with windows 10 if i hit Ctrl+c to copy a cell and i try and move the mouse... nada for about one second as well... i'm actually looking to downgrade to windows 7 at this point. I know it's not a big deal but just knowing i dished out for an i7 laptop and it sputters on simple things drives me nuts. At what point and how many bugs/security issues will it take for microsoft to do a ground up new OS? with everything it's learned up to now there should be a room somewhere doing this.
Your mouse has moved.
Windows must be restated for the change to take affect.
Restart Windows ? [Yn]
Yeah, I spend way too much time watching the windows wheel spin around for no apparent reason other than the OS's inability to use more than one core.
I wonder if Process Lasso would fix the problem. It solved a weird issue with Xplane11 for me.
I'm waiting for Microsoft to tell customers to use less cores.
Not sure if this is worse that Jobs and the "Hold Different" meme for Antennagate.
Take the strawman and SPRINT with it!!!
This is normal with Windows 10 - its busy spying on the user!
If you create a process and have it inherit the parent console then this may happen when you have a long running parent that spawns a lot of child processes.
Android is dropping to lower-res/fewer colors to accelerate the transition
Or did it swap the high-res texture for a low-res one to save memory while it was not in use?
GPU's have been able to do 32bit acceleration for a long time.
Semi-OK gaming video cards that didn't support DirectX 9 couldn't run Vista Aero because it used the DirectX 9 API, required hardware based Pixel Shader 2.0 (not emulated in the driver) and at least 128MB of RAM. Not because of bit-depth.
GPU speeds things up quite a bit. Even with Intel graphics. Throwing everything on the cpu makes things like a browser a chop chop fest.
[
http://saveie6.com/
Just as a side note, Fedora uses about 1.8GB of RAM after boot/login.
The Gnome desktop frequently crashes, killing all open desktop applications with it, it's very easy to get mouse pointer freezes, and don't even get me started about the state of the video driver stack in Linux - especially NVidia.
But yeah, I switched away from Windows as well.
All operating systems are going to have pathological edge cases, but jumping on a niche problem and running around like sky is falling is pretty childish.
Sounds like they are already fixing it as we speak. Try getting a Linux kernel patch for this turned around so quick.
In the meantime, before kicking off your build, turn down the process priority on the shell that you are using to kick off your build and see if that helps.
I was kicked off the high school varsity team because I couldn't answer a pop quiz on operating system architecture.
“Common sense is not so common.” — Voltaire
Win10 on something with so much grunt?
Why turn an expensive system into a limited toy?
If you need to run MS compatible stuff MS Win7 and various MS server systems are available.
My experiences with Windows 10 are that unlike it's predecessors, sound glitches occur in the OS at various points when there is resource contention.
Windows 10 seems to have a much greater latency serving interrupts than previous versions of Windows. In my case I was able to improve things by judiciously exchanging hardware components for a mix that causes the problem less. But at the core - I think Windows 10 is doing some things less well then previous Windows versions.
My conjecture is that it is the same thing.
...compiling chrome on a windows box, when he could have compiled it on a linux box ?
then he could test it with WINE or a virtual windows computer afterwards!
Ok, I actually do develop software on a windows server, but that is not a choice made by me and I have yet to experience the desktop to be choppy. I do not believe the program I work on as nearly as large as the chrome project though
Windows is rather hoggish on hardware resources.
I am the unwilling control for my Origin.
We came from the BSD / Linux or Unix land where kernel space is different from X server and all types of GUI (Graphical User Interface) / DE(Desktop Environment) in Linux world.
In the world of Windows, even GUI and painting of windows and its background (including the scroll bar) were all transferred (switched only in some old versions of NT4.0 or NT3.5 forgot the exact version) to kernel space for speed reasons. Modern Windows still has that feature, where GUI stuff were ALL DUMPED into kernel space.
The mouse freezing and mouse latency felt by this programmer in TFA is probably caused by something else like M$ Telemetry and a couple of deep IRQ's being done by OS.
captcha: bloating
Slashcode and /. actually support Unicode just fine. They implement a whitelist of allowed Unicode codepoints because there was a LOT of abuse of Unicode to basically screw up the webpage. From excessive decorations of characters that cause any web browser to render 10000 pixels up and down the page unreadable to messing with the page layout using the various control codes like right-to-left override.
Unicode support was added a long time ago (there is/was a Slashdot Japan, which is where the support came from). It's just too many people abused it back in the day (when /. was one of the top sites and thus trolls loved messing around with the site pages to annoy everyone).
So the admins decided that since Unicode was an evolving format, you can't really blacklist "bad" codepoints (there are lots, and more added all the time, including character adornments) they decided to whitelist instead, by using a simple UTF-8 breaking filter of fixing the MSB to 0.
Soo, that means that a simple DoS is possible via old-school fork bombs ? In 2017 ? Well done Microsoft !
Right, so the whitelist can be expanded to include a few hundred **useful** code points to improve the usefulness of the site.
WTF can't that be done?
And anyway, we have abusive posts using just the ANSI codepoints. Here's one: overly restrictive Unicode limits on Slashdot are a pain in the fucking arse and the dickheads in charge lined up against the wall...
Original submission : Submitted by ewhac on Tuesday July 11, 2017 @08:44AM
https://slashdot.org/submissio...
Current article : Posted by BeauHD on Wednesday July 12, 2017 @02:10AM
When reading this article you can even see that he attributes ewhac
Longtime Slashdot reader ewhac writes:
title:
24 Cores and The Mouse Won't Move: Engineer Diagnoses Win10 Bug
article-text:
ewhac writes:
Bruce Dawson recently posted a deep-dive into an annoyance that Windows 10 was inflicting on him — namely, every time he built Chrome, his extremely beefy 24-core (48-thread) rig would begin stuttering, with the mouse frequently becoming stuck for a little over one second. This would be unsurprising if all cores were pegged at 100%, but overall CPU usage was barely hitting 50%. So he started digging out the debugging tools and doing performance traces on Windows itself. He eventually discovered that the function NtGdiCloseProcess(), responsible for Windows process exit and teardown, appears to serialize through a single lock, each pass through taking about 200S each. So if you have a job that creates and destroys a lot of processes very quickly (like building a large application such as Chrome), you're going to get hit in the face with this. Moreover, the problem gets worse the more cores you have. The issue apparently doesn't exist in Windows 7. Microsoft has been informed of the issue and they are allegedly investigating.
Is there some downvoting of stories going on to allow just certain people to be able to get their articles to the frontpage??
Windows has detected that your mouse has moved. Please restart your computer for the change to take effect.
Escher was the first MC and Giger invented the HR department.
Since when does moving the mouse involve closing a process? Oh wait! Microsoft Windows.
Did it occur to you that there could be more than 1 bug in Windows? (Or elsewhere)
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
I was going to say something like this: https://www.neowin.net/forum/t...
Yes. A whitelist that barely let's most of ASCII through. That hardly counts as support.
95.
Not a program, a process.
Yup.
Windows sucks at multi-processing. News at eleven.
REMINDER:
- That's why on windows multi-threading is much more popular (there's a lot less to teardown when the context is shared).
- That's part of reasons why microsoft developed the concept of pico-threads (way much more lightweight) so that Windows Service for Linux (WSL. aka Bash in Windows. aka Ubuntu in a terminal) could actually implement some decent multi-processing.
That's why most serious computer has since long shifted away to other OSes (see popularity of Linux among TOP500)
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Is there such a thing as firewalling or sandboxing a GPU for that?
Yes and no.
Yes, there's a possibility to firewall against hardware.
- that's what IOMMU is for on modern processors.
So hardware with DMA (Direct Memory Access. That can directly read the RAM e.g.: FireWire, Infiniband, 10Gigabit Ethernet, Thunderbolt, etc.) can be isolated and cannot be used to dump the whole PC memory (see earlier attack with FireWire RDMA on Windows).
- modern GPU processors have even implemented their own MMU layer for additional fencing - so that 3D game that you've downloaded (or even WebGL and WebVulkan online game) doesn't secretely try to peek into other applications on your dekstop.
No, it won't help at all in the problem of scheduling.
That's a software problem.
The kernel is scheduling CPU cycles to thread wanting execution, and it scheduling access to resource for I/O requests by thread.
It's the kernel job to decide when to interrupt one task to give access to another (either CPU cycles or I/O access).
Knowing that interrupting more often give chance to other background task to work (gives better responsivity, even the mouse cursor gets the necessary cycles while a big computation is in progress)
And knowing that keeping task uninterrupted lets them finish quicker (gives better performance).
Balancing this responsivity vs. performance is a complex dark art.
Windows simply sucks at this.
This is even complicated by the fact that the modern mouse comunicates over USB or Bluetooth instead of PS/2 which are much more protocols with more component in the complex stacks that handle them.
This requires even more time shares given to these component to make sure that the mouse moves responsively - while knowing that this will kill the performance.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
More specifically, why are OSes not designed, and computing hardware not designed, so that the GUI cannot be slowed down by other slow processes, process switching, or I/O / virtual memory thrashing.
That's why OSes such a Linux (not even over-optimized for responsivity) have an entire zoo of CPU schedulers and IO schedulers.
(with BFQ being the latest popular IO scheduler for responsivity),
and linux specifically has hte non-POSIX "CGROUPS" extension that enables it to arrange the various processes into a tree hierarchy with each node supporting its own scheduling tactics between its childern (see demos of 256 GCC compiler jobs launched in parallel and the GUI still being responive).
(That's also part of the reasons why modern complex manager like systemd are getting popular, they have modules to handle all this : session, seats, etc. concepts that POSIX lacks)
BeOS was an OS whose entire purpose was exactly that : no matter what, keep UI responsive and avoid media stuttering.
(Well, running initially on architecture with less expensive context switches did also help a lot).
The UI and user input devices should be a completely separate set of processes and memory than the rest of application processing.
Actually, in most OSes, they already are.
It should operate as a service, through data pipelines, to the rest of the applications.
That's a tiny bit less obvious. Some graphical tool-kits run their UI in the main thread.
Some software would need to have the processing moved into a background thread or process.
WebApps are an obvious counter-exemple where the UI is an entirely different process (And depending on where the sever is executed - even different machine).
Or failing that, certain aspects of GUI, such as program kill controls, should be highly prioritized over pretty much everything else.
Again, slow and over-used everything else should not slow the UI and user input processes.
And then you'd complain that any complex calculation (compression of a video) takes ages, because the process is constantly being interrupted to give time to your GUI and mouse (i.e.: to the various driver and daemons and libraries processing USB and/or Bluetooth) even if they don't need.
Balancing responsivity (i.e. constantly interrupting everything just to be sure that everyone get their share of CPU cycles and IO) and performance (running as much un-interrupted as possible so the task finishes as fast as possible) is a complex dark art.
But, yeah, Windows is significantly worse at this compared to everyone else.
Which also explains you'll never see any deployment of Windows on the TOP500 (it's nearly Linux all the way, with a few excption like BSD - i.e. other Unix-type of OSes), and Azure is the only known cloud running it.
It's also why Linux is popular in most embed systems (modems, routers, smartphone, tons of IoT gizmos, smart TVs, etc. - basically nearly anything with a CPU that is not a desktop computer is likely to run some Unix-like kernel like Linux)
It's not that Linux is magic, it's that Windows is *THAT* awfully bad at anything.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
I heard this differently: that the database /. uses is currently in ISO-8859-1, and would need to be migrated to UTF-8; the front-end can be switched between both.
The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
...you will have a quantum computer and the mouse will still get stuck.
No. If you have adequate RAM (system AND GPU) and using the same resolution as the desktop, switching to and from a full-screen app is instantaneous. 100 bucks says he's using an Intel GPU with shared RAM. *facepalm*
It will STILL take thirty seconds to show a list of files in a folder.
When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
I read the title and thought it was about the Disney corporation.
This problem exists in both Windows Server 2012 AND Windows Server 2016. It's annoying as hell.
I do not respond to trolls (AKA Anonymous Cowards)
Few now recall, but Microsoft built NT as a quick-n-dirty stop-gap OS while they 'completed' their new 'semantic' OS. Win10 is but the latest version of NT. The race to 'semantic' OS/File System designs crashed and burnt for mainstream computers- and ended up as a 'mobile' computing concept instead.
The consequence is that NT is a mess - a mass of bodges that have moved the OS onto multi-core and massive memory designs, with a GUI design that never moved from a single-core concept. Multi-tasking on NT still 'thinks' in terms of time-slicing on a single core. Bodges move the threads onto mutliple cores today, of course- but the 'logic' of the OS still 'thinks' in terms of one core.
This makes drivers particularly awful. The GUI prone to catastophic refresh failure. Individual programs on Windows can code to multi-cores much more effectively- although they are still at the mercy of an OS designed for one core when talking to resources beyond the CPU (like HDD, input devices etc).
Intel is largely to blame for when multi-core x86 designs first appeared from AMD, Intel's response was to pay tech sites to trash AMD and pay Microsoft millions to keep Windows Intel 'friendly'. Many of Windows horrible issues with driver latency and memory paging are down to Intel insisting that MS used poor coding methodology that made Intel parts SEEM faster than AMD.
Windows is the best GP OS we have by far, but it is still godawful compared to what it should be like after all these years. And the focus of Win10 doesn't help things.
Screen refresh tech makes use of modern GPU functionality. But the CPU is so fast, it can do the 2D rendering at lightening speed as well. Modern browsers can switch between software and hardware render output with little difference save for video.
Modern Windows has a state-of-the-art screen composition engine again using the power of modern GPUs. How well this works depends on the application. Windows offers coding methods dating back to the stone age of the first versions of the OS- so apps need to use modern APIs to get the best from the OS.
Screen tearing is a VERY complex issue (ask any experienced gamer about 'vsync'). Methods to avoid tearing have pros and cons, and often the cons ain't worth it.
The GUI issue can be best explained by looking at the godawful Firefox as a metaphor. Firefox was designed around ONE THREAD - and current versions of Firefox are an NT like bodge attempting to move a horrible codebase to a multi-core situation. Firefox thusly scales like crap to more RAM or more cores. NT likewise was designed for one CPU core. Across the years it too has been bodged to a multi-core situation with loads more RAM.
Of course, MS uses the excuse of the insanely poor Intel designed driver model as why fixing things hardly matters. As soon as your program needs to talk to drivers on a regular basis, things grind to a halt anyway.
Perhaps they should block apostrophes?
FFS, it wasn't even a plural.
No, you were kicked off because you masturbate in gym class. I remember.
Actually it's more of a red herring than a strawman, as I was fully aware of when I posted it.
Perhaps in this situation the PS/2 mouse would be smooth, since it uses interrupts whereas USB mice use polling. PS/2 mouse tends to operate in bad conditions.
Obviously, good luck clicking on stuff and having it take effect then.
This looks very complex. What if say, explorer.exe is the misbehaving process, or the window manager/graphics subsystem trying to deal with hundreds of megabytes of dung is having a leak?
If you have 16,000 files and an application is spawning 16,000 threads to generate thumbnails or extract and present metadata, is that a GUI issue?
I agree some task killer would be good. In linux you have the alt-SysrRq thing but I haven't look how to enable/disable it and what's the key to kill a big task, but what I'd really want is just enough "reserved memory" to log in on the ctrl-alt-f1 consoles and have a few megs to run things like top, ps and kill. In Windows there's the task manager for that but as the desktop is a "3D" desktop you'll need some reserved GPU resources/memory as well.
There's also tasklist / taskkill commands in cmd.exe but I suppose less than 1% users know about them (and likewise, the command prompt is "3D accelerated" whether you care or not)
Backwards compatibility in userland is definitely not always easy in Linux.
i have observed (ateast since 1989), that every year cpus get faster or denser but boot time remains the same.
This is why I never like to comment by phone. Autocorrect decided I didn't want to use a verb in my sentence.
1 core to rule them all, 1 core to find them,
1 core to bring them all and in the darkness bind them
__
Men with no respect for life must never be allowed to control the ultimate instruments of death.
GW Bu
Comment removed based on user account deletion
RICH PEOPLE'S PROBLEMS
If your mouse won't move, try applying some cleaning product to your desktop. In the future, drink less Mt. Dew and find a sock to use for watching Redtube.
https://www.eff.org/https-everywhere
The scheduling algorithm in Linux is also configurable. Microsoft could make the choice to allow alternate schedulers without changing the default schedulers. They *could* be alot more creative and flexible in what they allow, but they have little to no incentive to do so.
They forced Win10 down people's throats complete with forced updates and advertising. They need only look at Adobe's huge rise in profitability as they moved to a subscription-only model that Adobe moved to because they couldn't be troubled to produce products anymore that would motivate people to upgrade and/or buy. Microsoft is in a similar position -- new development costs too much -- they desktop dreams of Bill Gates introducing use of 3D graphics and relational file system for information processing and presentation never materialized, with Win7 being MS's pinnacle of desktop systems as the masses are separated from their general purpose creativity stations (PC's), and are given consumer devices that need cloud (read "mainframe") support again that will be time shared just like computer systems in the 70's.
Sorry, guess I veered off from MS's lack of incentive to improve technological innovation or attempt excellence into market directions. Remember the movie "Pirates of Silicon Valley", where Gates claimed he had won? Did he?
NtGdiCloseProcess() is the function that cleans up the given process' association with the system graphics context. This being serialized is not that surprising. It is possible that a prior implementation was faster but involved more locks and had a possible deadlock scenario.
What's with all the rabid Microsoft hate on this? Linux still has a single-threaded kernel file stat. This is WAY more damaging to overall performance than having a 200 microsecond lock on process exit which in the normal Windows system usage case is a fairly rare event. After all Microsoft threads are heavier than Unix processes. People who design software to run on Microsoft systems avoid creating and destroying threads, process creation and destruction is an even bigger no--no. The real problem here is a build tool chain that uses an archaic approach to task management. Microsoft's C# build compiles and links millions of lines of code in thousands of files in seconds using a single process.
Rest assured, that your finding have been forwarded to Microsoft's legal team. Expect a cease and desist letter soon. If you do not desist, Microsoft will explore further legal actions to stop you investigating this problem, and others in the future. Even if Microsoft cannot find a legal reason to stop you, they will just sue you into the ground
Thank you for using Microsoft. Remember, our code does not have any bugs, only features.
Microsoft, Apple, Google, Amazon what's the difference? All steal money from devs and control with walled gardens.
Anti-malwarebytes makes my computer freeze!
that sounds more like a shitty build system tbh though ...
Then whoever is responsible for maintaining that whitelist is really, really incompetent and unresponsive to user comments. Where's Rei when you need him, with his comment about not being able to type his name, which includes a thorn letter. And the number of times I get Cyrillic script mangled by the back-end ... it's going to get worse when I start learning Arabic.
I never knew about Slashdot Japan. As a Go player (note the incorrect letter "o" in that name), I would have liked to see some evidence of correct handling of any of the Japanese scripts.
Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
This is a school example of how [not] to use synchronization mechanisms. A total lockup of a trillion-core system is easily achieved if the programmer doesn't understand the implications of when to use locking and when not to. Of course it's appealing to use sometheing like a semaphore to solve some problems. But when thinking BIG you have to employ a different way of thinking. Not an easy feat.
Still sticking with Windows 7.