-
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
- Rants
- Security
- Symbols
- Travel
- uiforetw
- Uncategorized
- Unicycling
- Visual Studio
- WLPG
- xperf
Follow me on Twitter
My TweetsMeta
Category Archives: Performance
Making Windows Slower Part 2: Process Creation
Windows has long had a reputation for slow file operations and slow process creation. Have you ever wanted to make these operations even slower? This weeks’ blog post covers a technique you can use to make process creation on Windows … Continue reading
Posted in Code Reliability, Investigative Reporting, Performance, Programming
Tagged Application Verifier, crashing, pageheap
20 Comments
24-core CPU and I can’t type an email (part two)
In my last post I promised to give more details about some rabbit holes that I went down during the investigation, including page tables, locks, WMI, and a vmmap bug. Those details are here, along with updated code samples. But … Continue reading
Posted in Investigative Reporting, memory, Performance
Tagged cfg, chrome, control flow guard, vmmap
26 Comments
24-core CPU and I can’t type an email (part one)
I wasn’t looking for trouble. I wasn’t trying to compile a huge project in the background (24-core CPU and I can’t move my mouse), I was just engaging in that most mundane of 21st century tasks, writing an email at … Continue reading
Posted in Investigative Reporting, memory, Performance
Tagged cfg, chrome, control flow guard, vmmap
58 Comments
Making Windows Slower Part 1: File Access
Windows has long had a reputation for slow file operations and slow process creation. Have you ever wanted to make these operations even slower? This weeks’ blog post covers a technique you can use to make all file operations on … Continue reading
Posted in Investigative Reporting, Performance, Programming, xperf
Tagged FileSystemWatcher, notifications, Windows
25 Comments
Zombie Processes are Eating your Memory
Zombies probably won’t consume 32 GB of your memory like they did to me, but zombie processes do exist, and I can help you find them and make sure that developers fix them. Tool source link is at the bottom. … Continue reading
Posted in Debugging, Investigative Reporting, Performance, Programming, Rants
Tagged handles, leaks, zombies
81 Comments
What We Talk About When We Talk About Performance
TL;DR – the phrase “90% faster” is interpreted by people in two different ways: 90% less time The speed (ops/sec or km/h) is 90% greater I strongly prefer #2 but due to the ambiguity this phrase should never be used. … Continue reading
Delete an inline function, save 794 kB
In the previous episode of “Simple Changes to Shrink Chrome” I discussed how deleting ‘const’ from a few key locations could lead to dramatic size savings, due to a VC++ compiler quirk. In this episode I’ll show how deleting an … Continue reading
Add a const here, delete a const there…
Update, February 2019: Two years later the VC++ bug I reported here still exists, even in VS 2019 preview. However Chromium no longer builds with VC++ so I’m reverting the changes where I deleted const in order to make some … Continue reading
ETW Flame Graphs Made Easy
A bit over three years ago I wrote about how to use flame graphs to visualize CPU Usage (Sampled) data from ETW, and a year ago I added flame graph support to UIforETW. However these techniques are clumsy and slow … Continue reading
Zeroing Memory is Hard (VC++ 2015 arrays)
Quick, what’s the difference between these two C/C++ definitions of initialized local variables? char buffer[32] = { 0 };char buffer[32] = {}; One difference is that the first is legal in C and C++, whereas the second is only legal … Continue reading