-
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
- metric
- Performance
- Programming
- Quadratic
- Rants
- Security
- Symbols
- Travel
- uiforetw
- Uncategorized
- Unicycling
- Visual Studio
- WLPG
- Xbox 360
- xperf
Meta
Category Archives: Investigative Reporting
Reflections on My Tech Career – Part 2
This is second and final part of the story of how my career as a software developer unfolded (part 1 is here). In this half I work at four different companies in the Seattle area, make my mark, and then … Continue reading
Posted in Bugs, Chromium, Floating Point, Investigative Reporting, Linux, Performance, Programming, Quadratic, Symbols, uiforetw, Unicycling, Xbox 360, xperf
Tagged career, Cavedog, Google, Humongous, Microsoft, Valve
20 Comments
Finding a VS Code Memory Leak
In 2021 I found a huge memory leak in VS code, totalling around 64 GB when I first saw it, but with no actual limit on how high it could go. I found this leak despite two obstacles that should … Continue reading
Posted in Bugs, Code Reliability, Debugging, Investigative Reporting, memory, Programming, Rants
Tagged ETW, handles, leaks, VS Code, Windows
17 Comments
Acronis True Image Costs Performance When Not Used
Over two years ago I installed Acronis True Image for Crucial in order to migrate my data to a new SSD I had just purchased. It worked. I then left True Image installed “just in case”, and what harm could … Continue reading
Posted in Investigative Reporting, Performance, uiforetw, xperf
Tagged acronis, process enumeration, shell extensions
17 Comments
What this blog is about
I’ve recently told a few people that I write, that I have a blog, and then I try to describe what I write about. I’m kinda proud of some of the stuff that I’ve covered here on randomascii over the … Continue reading
32 MiB Working Sets on a 64 GiB machine
Memory is a relatively scarce resource on many consumer computers, so a feature to limit how much memory a process uses seems like a good idea, and Microsoft did indeed implement such a feature. However: They didn’t document this (!) … Continue reading
Posted in Computers and Internet, Investigative Reporting, memory, Performance, Programming, uiforetw, xperf
Tagged memory, priority, working set
10 Comments
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
41 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