-
Recent Posts
Categories
- AltDevBlogADay
- Bugs
- Chromium
- Code analysis
- Code Reliability
- Commuting
- Computers and Internet
- Debugging
- Documentation
- Drinks
- Environment
- Floating Point
- Fractals
- Fun
- Gaming
- Investigative Reporting
- Linux
- Math
- memory
- Performance
- Programming
- Quadratic
- Rants
- Security
- Symbols
- Travel
- uiforetw
- Uncategorized
- Unicycling
- Visual Studio
- WLPG
- Xbox 360
- xperf
Follow me on Twitter
My TweetsMeta
Author Archives: brucedawson
Slower Memory Zeroing Through Parallelism
While investigating some performance mysteries in Chrome I discovered that Microsoft had parallelized how they zero memory, and in some cases this was making it a lot slower. This slowdown may be mitigated in Windows 11 but in the latest … Continue reading
11 mm in 1.25 nanoseconds
In 2004 I was working for Microsoft in the Xbox group, and a new console was being created. I got a copy of the detailed descriptions of the Xbox 360 CPU and I read it through multiple times and suddenly … Continue reading
Determinism Bugs, Part Two, Kernel32.dll
It was literally the day after I cracked the __FILE__ determinism bug that I hit a completely different build determinism issue. I was asked to investigate why the Chrome build number reported for Chrome crashes on Windows 11 was lagging … Continue reading
Posted in Bugs, Chromium, Computers and Internet, Investigative Reporting, Programming, Symbols
Tagged determinism, minidumps, symbol servers
19 Comments
Two Deterministic Build Bugs
‘Twas the week before Christmas and I ran across a deterministic-build bug. And then another one. One was in Chromium, and the other was in Microsoft Windows. It seemed like a weird coincidence so I thought I’d write about both … Continue reading
Posted in Bugs, Chromium, Computers and Internet, Debugging, Programming
Tagged compilers, determinism, __FILE__
14 Comments
Windows Performance Analyzer, From Store or SDK
ETW is the best way to analyze performance on Windows, and Windows Performance Analyzer (WPA) has been the preferred tool for analyzing ETW traces for ten years now, generally obtained either by running UIforETW or by getting it from the … Continue reading
Finding Windows HANDLE leaks, in Chromium and others
Three years ago I found a 32 GB memory leak caused by CcmExec.exe failing to close process handles. That bug is fixed, but ever since then I have had the handles column in Windows Task Manager enabled, just in case … Continue reading
Posted in Bugs, Code Reliability, Investigative Reporting, uiforetw, xperf
Tagged handles, leaks
20 Comments
Arranging Invisible Icons in Quadratic Time
Near the end of January I was pointed to a twitter thread where a Windows user with a powerful machine was hitting random hangs in explorer. Lots of unscientific theories were being proposed. I don’t generally do random analysis of … Continue reading
Posted in Investigative Reporting, Performance, Programming, Quadratic, Rants, Symbols
Tagged dawson's first law of computing, Quadratic
18 Comments
Windows Timer Resolution: The Great Rule Change
The behavior of the Windows scheduler changed significantly in Windows 10 2004 (aka, the April 2020 version of Windows), in a way that will break a few applications, and there appears to have been no announcement, and the documentation has … Continue reading
Ditching WhatsApp
WhatsApp has served me well as a communications medium for my family, but I was never thrilled with its ownership by Facebook, and the recently announced privacy changes made it necessary for me to move on.
ARM and Lock-Free Programming
I was inspired by the release of Apple’s M1 ARM processor to tweet about the perils of lock-free programming which led to some robust discussion. The discussion went pretty well given the inanity of trying to discuss something as complicated … Continue reading
Posted in Uncategorized
6 Comments