Pigs Can Fly

Windows performance, development, and related issues(and maybe some not so related...)

Blog - About

About Pigs Can Fly

I'm Richard Russell, a dev manager on the Windows client performance team, this blog is focused on Windows peformance, development in general, and related issues (and maybe some not so related...) 

Our team's charter is to make Windows better - faster, smaller, more efficient.   Our team works in two general areas - performance analysis and Windows feature development.  On the analysis side, we design and impliment solutions to solve performance performance problems, and work with other teams to impliment performance improvements.  We also designed and developed several Vista features such as SuperFetch, ReadyBoost, ReadyDrive, runtime performance diagnostics, and the Windows Experience Index.

Here is a good Channel9 video interview with Mike Fortin that porivdes a good overview of our team, and goes into detail on SuperFetch, disk layout and defrag and other interesting topics.

Our unofficial team mascot is a flying pig :)

  • Pigs Can Fly

    Xperf, a new tool in the Windows SDK

    • 15 Comments
    The SDK team just shipped the latest version of the Windows SDK which supports Windows Server 2008 and Vista SP1.  The SDK now includes an important new tool; the Windows Performance Tool Kit from the Windows performance team (we call them the xperf...
  • Pigs Can Fly

    How Vista Enables Windows Aero - New Document Available

    • 13 Comments
    Windows Aero is Vista's new user interface and is based on desktop composition which is the process where each window and the desktop background is drawn separately and then composed by using the 3‑D graphics engine to create the desktop image a user...
  • Pigs Can Fly

    Using Xperf to take a Trace (updated)

    • 9 Comments
    Lets get to it!  Here is how to take a basic trace then look at CPU and disk utilization.    Its really simple, just three commands to turn on tracing, turn it off, and then view the trace. The next article in this series is Xperf...
  • Pigs Can Fly

    Beyond Hello World - My First WPF Application (with source)

    • 7 Comments
    My pet project for the holiday vacation has been writing a WPF application to view data from my code line counting tool CLC.EXE (soon to be released on Codeplex). CLC produces counts of lines, code, comments, and other statistics per file, per directory and for entire directory trees. When complete, the CLC data viewer (CLCV) will read a CLC data file and display various visualizations of the data such as a tree map (see also, and also), some pie charts and perhaps a histogram or two. I’ve included the first working CLCV application shell in the attached zip file. ...
  • Pigs Can Fly

    Steve Jobs Just Doesn't Get It...

    • 6 Comments
    Steve really doesn't understand what it means to build a platform. Apple's deicsion to close the iPone ensures its success only as a niche product. His recent comments about the iPhone are telling - quoting from the MSNBC article here : “You don...
  • Pigs Can Fly

    Using the Windows Sample Profiler with Xperf

    • 6 Comments
    Using the xperf tools, ETW, and the kernel sample profile interrupt all together provides a very effective and easy to use sample profiler for the analysis of both application and system wide performance.  At each sample interrupt, the ETW sub-system...
  • Pigs Can Fly

    Xperf support for XP

    • 5 Comments
    "Do the xperf tools support XP or Windows Server 2003?" is a frequently ask question.  The answer is no mostly, and yes for a few things.  The next article in this series is Using the Windows Sample Profiler with Xperf xperf.exe can...
  • Pigs Can Fly

    What does "Lines of Code" mean for a XAML file?

    • 5 Comments
    I have a utility that measures lines of code (CLC.EXE). It works with C, C++, C#, Perl, x86 assembly language, command files and make files. Now that I'm developing XAML code, I need to teach CLC how to measure XAML. However, XAML is XML and isn't arranged...
  • Pigs Can Fly

    Xperf Tools Landing Page and Update

    • 3 Comments
    The WHDC folks now have web page setup for the Windows Performance Toolkit (aka the 'xperf tools').  The page includes downloads for updates to the versions that ship in the SDK.  In the near future, this page will include pointers to updated...
  • Pigs Can Fly

    No marketing people were hurt in the naming of this feature....

    • 2 Comments
    In the description of MIke's recent Channel9 interview , Charles hints that Marketing named the feature. Actualy, this was what we (the dev team) called the feature from the very begining! Its one of the few internal code names that stuck as an acutal...
  • Pigs Can Fly

    What does it take to run Aero

    • 1 Comments
    I receive a lot of questions internally and from partners about what it takes for a system to run the desktop composition Aero them. The answer isn't straight forward - desktop composition is much more demanding than XP's GDI based window management....
  • Pigs Can Fly

    Really Odd Spam...

    • 1 Comments
    I check my junk email folder every now and then. Its a bit humorous the lengths some people will go to misspell Viagra. But yesterday, some really odd spam arrived - 55 messages in total over about an hour and were sent to one an external alias I subscribe...
  • Pigs Can Fly

    ISRs and DPCs, The Silent Killers

    • 1 Comments
    Hardware interrupt service routines and deferred procedure calls can be the silent killers of system performance. ISRs and DPCs are the highest priority code that runs in the system - they cannot be pre-empted by the OS and run to completion. ISRs and...
  • Pigs Can Fly

    Graphics Memory Reporting in Vista

    • 1 Comments
    Vista manages graphics memory in a much more sophistical way than XP. In XP, the graphics driver was responsible for this; XP drivers report the amount of graphics memory to the OS however they want. In Vista, the WDDM manages graphics memory and knows much more about it....
  • Pigs Can Fly

    WPF Styles

    • 1 Comments
    One of the things I planned to do this holiday season was spend some time learning about Windows Presentation Foundation (here is the Microsoft link ). The first thing to did was write a " Hello World " program. I wanted just a simple window with a text...
  • Pigs Can Fly

    Beyond Hello World - An Update On My First WPF Application (with source)

    • 1 Comments
    I've been working on my first useful WPF application and I've learned several things since my last post and answered a few questions. I've included a ZIP file with my updated source (you can find it at the bottom of the post, it includes full Visual Studio 2005 project)...
  • Pigs Can Fly

    CES - TV's, Cool Phones, and Out of the Ordinary Gizmos

    • 1 Comments
    I'm finally back from CES - what a HUGE show! There were 2,700 exhibitors spread over all 3.2 million square feet of space. Its the biggest show Las Vegas has each year and the whole town is full of technology folks. I spent a total of about 10 hours...
  • Pigs Can Fly

    Advertisements are now Music Videos

    • 1 Comments
    I just love this add for the Sony Ericsson XPERIA X1 .... its just barely an add.  Its really a pretty cool music video...
  • Pigs Can Fly

    Beyond Hello World - Update 5, TreeMap Control Working, Perf Issues

    • 1 Comments
    CLCV V5 now has a fully working TreeMap control that zooms, supports mouse over events and looks pretty good. But there are two major performance problems: 1) WPF rendering seems to be very expensive. 2) Tree Map nodes are relatively expensive in terms of memory size. Source code is included....
  • Pigs Can Fly

    Handy WPF Tool - Style Snooper

    • 1 Comments
    Walt Ritscher has a really handy tool on his blog called 'Style Snooper' . This utility will display the style of any WPF control from its assembly. It does this by parsing all the public, concrete, non-generic classes in the assembly that derive from...
  • Pigs Can Fly

    CES - Car Audio

    • 1 Comments
    Ok, I'm officially and old fogey - I had no idea how big the car audio business is... its HUGE. Most of the 409 thousand square feet of the CES north hall was packed full of car audio companies selling anything and fevering for car audio. There array...
  • Pigs Can Fly

    Beyond Hello World - Update 3, Control Templates, Multithreading, and more... (with source)

    • 1 Comments
    I've learned a lot in working on my first real WPF application such as implimenting multi-threaded file reading, how to use the dispatcher object, how to use control templates to customize controls, the basics of application configuration, using abstract...
  • Pigs Can Fly

    Beyond Hello World - Update 4, File loading 27 times faster!

    • 1 Comments
    CLCV V4 now loads files about 27 times faster than V3 when running on my laptop. The tree view is also about 5 times faster. ...
  • Pigs Can Fly

    StackOverflow answer – why learn multi-core programming? #2

    • 1 Comments
    In my last post I talked about how multi-threading can be used to improve responsiveness while loading a file. I’ve put together a sample program (source included) that shows how to do this in C# 3.0, .NET 3.5, and WPF using Visual Studio 2008. You can find a zip file with a complete project attached....
  • Pigs Can Fly

    Stack Walking in Xperf

    • 0 Comments
    Bruce Dawson is a performance analyst on the client performance team.  He has written this guest post on enabling stack walking using xperf for both 32-bit and 64-bit Windows systems (Vista and Win7).  For more posts on xperf see this page ...
Page 1 of 2 (38 items) 12