-
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
When Debug Symbols Get Large
TL;DR – upgrade your tools, including Visual Studio, windbg, and Windows Performance Toolkit, if you want to handle Chromium’s symbol files. Details: Death, taxes, and browser engines relentlessly growing – those are the three things that you can really be … Continue reading
No Start Menu for You
I tend to launch most programs on my Windows 10 laptop by typing the <Win> key, then a few letters of the program name, and then hitting enter. On my powerful laptop (SSD and 32 GB of RAM) this process … Continue reading
Posted in Code Reliability, Debugging, Investigative Reporting, Performance, Programming, Rants, uiforetw, xperf
Tagged hangs, pageheap, Windows 10 abandonware
28 Comments
Compiler Tricks to Avoid ABI-Induced Crashes
Last month I wrote about an odd crash that was hitting a few Chrome users. Something was corrupting the XMM7 register and that was causing Chrome to crash. We fixed a couple of bugs in Chrome and we were able … Continue reading
Posted in Chromium, Debugging, Investigative Reporting, Symbols
Tagged ABI, asm, assembly, sse
2 Comments
Please Restore Our Registers When You’re Done With Them
“Hey, you. Yes you, that function over there. When you’re cleaning up please remember to restore all of my registers. Yes, that one too – what do you think this is, Linux?” That’s the problem I was dealing with in … Continue reading
Posted in Chromium, Debugging, Investigative Reporting, Symbols
Tagged ABI, assembly, sse
25 Comments
Why Modern Software is Slow–Windows Voice Recorder
I apologize for this title because there are many things that can make modern software slow. Blindly applying one explanation without a bit of investigation is the software equivalent of a cargo cult. That said, this post describes one example … Continue reading
Posted in Investigative Reporting, Performance, uiforetw, xperf
Tagged runtimebroker, voice recorder, winrt
33 Comments
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