Performance analysis of multi-core systems

One of our main roles in DevDiv Performance Engineering is to help other teams with performance investigations – that is, to help them understand why their code isn’t running fast enough. Recently we ran a little side project that was unusual in two respects: first, we were analyzing performance just for our own curiosity, and second, the investigation was triggered because Visual Studio benchmarks seemed to be running faster than expected on our new multi-core hardware. You might think that in this case we could just leave well enough alone – hey, if the benchmarks are meeting their performance goals then there’s no need to worry, right? – but good performance engineering doesn’t work that way. It’s a constant process of learning, and if you find something out of the ordinary that you didn’t expect, whether positive or negative, then it’s time to roll up your sleeves and figure out why. The whole process turned into a nice detective story, with twists and turns along the way. You can read the whole thing over at “Lessons from the test lab: investigating a pleasant surprise”, but here’s the one-sentence summary: these aren’t your father’s processor cores anymore…

Posted by on 19 June 2008 | 6:30 pm

Other Resources for Problems with Offline Files

Of all my blog posts, the one that generates the most reliable stream of comments is “User comments about offline files”. All my other blog topics get mild interest, but what people really, REALLY want to know is how to get offline files working again when it stops. I just can’t argue with the numbers involved. So I’m really happy that a couple of other blogs have taken up the slack and have been posting about offline files. Apologies to both for only just noticing :) First, the Windows Core File Services team have a blog called File Cabinet, with a category for offline files (aka client-side caching). This stuff is straight from the horse’s mouth, so it’s a little worrying that they’re getting so few comments… I’m guessing most search engines just aren’t putting results from this blog on page 1 yet. Second, the eponymous http://offlinefiles.blogspot.com/, who tackles a new topic with every post. If you’re looking for the answer to a “how to” question, chances are they have a post just for you.

Posted by on 14 June 2008 | 7:52 pm

Moving on - to Developer Division Performance Engineering

With the release of SCCP 2007 I've now been through two complete product cycles of what started out as a little research project called "Indy" -- and that seems like more than enough! So I've moved over to the Performance Engineering team in Microsoft's Developer Division. The division's flagship product is Visual Studio, and our blogger-in-chief is Somasegar. Within the division, the Performance Engineering team makes sure that when we ship a new release of Visual Studio, it will perform well in the hands of our customers. We've also started a performance engineering blog: now you know where to send the complaints :)

Posted by on 5 June 2008 | 11:15 pm

Now available: System Center Capacity Planner 2007

Ironically I'm almost the last to blog it, but the SCCP team is really happy to announce the release of System Center Capacity Planner 2007. You can get it now, it's totally free, and it'll help you size deployments for Exchange Server 2007. But wait! There's more. The fabulous Solutions Accelerator team have released plug-in models for SCCP 2007 that let you do capacity-planning for Windows SharePoint Services 3.0 and Microsoft Office SharePoint Server 2007 as well. And in the near future we'll be releasing a model for System Center Operations Manager 2007. Did I mention that these are all free?? A big thankyou to everyone involved who made this release possible. I'd especially like to thank everyone involved with the Exchange model - the free publicity doesn't hurt either :) As always, your first port of call for feedback and questions about SCCP 2007 - after the FAQ, of course - is our web forum.

Posted by on 6 February 2008 | 2:48 am

Using funny characters in Outlook 2007 folder and category names - what's the sort order?

It's common to use "funny characters" (i.e., non-alphabetic symbols) in Outlook folder names, so that the folders sort in a specific order: !!Super Important!ImportantAll A'sBasically B's... Of course, the same principle can be applied to category names: !Important@Home@WorkProject AProject B... But how can you be sure that "!Important" will come before "@Home"? In other words, what's the sort order? This bugged me enough to sit down and work it out. So here's the sort order in Outlook 2007 (American English) for the symbols from an American standard keyboard layout:   ! " # $ % & ( * , . / : ; @ [ ] ^ _ { | } ~ + < = > then all the numbersthen all the letters The hyphen and single quote are (almost) ignored, in that -A sorts after A but before B, and 'B sorts after B but before C. And yes, that's a space character before the ! character, so putting a space at the front of a folder name will make it sort to the very top. Sadly, there seems to be no special character that forces a folder to sort to the bottom of the list. I'm sure there is an official name and explanation for this sort order, but my search engine fu has failed me. Help me, oh lazyweb!

Posted by on 24 October 2007 | 1:53 am

Announcing the beta release of System Center Capacity Planner 2007

We're pleased to announce the beta release of System Center Capacity Planner 2007! SCCP 2007 provides sizing, architectural guidance and best practices for customers to plan their deployments of Operations Manager 2007 and Exchange 2007. Essentially, it can predict how much hardware you'll need for a deployment, and how that hardware will behave once one of those two applications is installed. This is a follow-on release to SCCP 2006, which provided similar guidance for MOM 2005 and Exchange 2003. Note that the performance models of Operations Manager and Exchange in the Beta are not final, so this version should not be used for planning production deployments. What we're looking for is feedback on whether the new models and features will meet your needs for planning and modifying deployments of Operations Manager and Exchange. The beta is available now for download from Microsoft Connect -- once you've logged in, look for it on the available connections page, or just go directly to the program details. Please get it, try it, and send us your feedback via the beta newsgroups. And if you're at the Microsoft Management Summit this week, we will be presenting two sessions on SCCP 2007 and multiple hands-on labs -- please stop by if you're around!

Posted by on 26 March 2007 | 1:17 am

Visible Recycle Bin Considered Harmful

Lazy-blogging (verb): The act of letting a thought sit unblogged for long enough that someone else blogs about it instead, thereby saving you the effort. cf lazyweb. Case-in-point: Many of us OCD types find it impossible to sit with a non-empty recycle bin on our desktop. We just can't do it. It nags at our souls. (We're also the ones who defrag religiously and run Disk Cleanup at the drop of a hat). We just... must... empty... that... bin. What does this have to do with lazy-blogging? Well, I've had a note to blog about the solution (set a maximum size for the bin, then use TweakUI to remove the temptation from your sight, and let it empty itself behind the scenes) for literally years. Plural. Thankfully Mike Torres beat me to it, and then Omar Shahine followed up with the important "set a maximum size" hint (otherwise your OCD will be going nuts worrying that you'll fill up your disk). But what really stopped me was that I still haven't found the original inspiration for the idea. Somewhere there's a web page about how the original Apple Macintosh (or maybe Lisa?) designers now consider the "fat trash can" icon to be a terrible usability mistake, because a significant proportion of the population just can't let stuff sit in there. The problem is, I can't for the life of me find that web page. Ergo, I couldn't blog about it. Help me, oh lazyweb... Edit: The lazyweb came through! Shane S. pointed me to bug #2 on AskTog's Bug Hall Of Fame. Quoting: The engineers just though they were providing users with a "neato" way to tell an empty can from a full one, but to many users, the new appearance suggested a painfully distended belly. Millions of people developed the unnecessary and undesirable habit of immediately emptying the trash as soon as the swelling showed. Drop something in; empty the Trash. Drop something in; empty the Trash. It became unconscious habit. Remember the fellow who dropped the document in the trash by accident? Now, when he saw the trash instantly swell up, he was likely to erase it forever—drop something in; empty the trash—relieving the trash of it's apparent distress, even as another portion of his brain, in very real distress, was yelling, "No! No! No!"

Posted by on 15 January 2007 | 1:23 am

Comment spam has got the better of me

My apologies if you're seeing any of my old posts reappear as if freshly published. Comment spam has gotten so bad on some posts that I'm resorting to disabling comments completely. I think this triggers a republish by Community Server (at least, I have to click the "Publish" button), which some blog readers will then interpret as a new post. If I was sufficiently interested I'd see if there's a direct correlation between the spam-attractiveness of a blog post and its Google PageRank...

Posted by on 3 January 2007 | 2:20 am

Startup processes on a Toshiba M400

Or, "What is all this stuff doing on my computer", part II. I've just finished switching my portable life over to a new Toshiba M400 Tablet PC. Gig of memory, Centrino Core Duo, life is good. At least, it was good until I looked at the process list in task manager. Then it was that same feeling of horror all over again. The situation was bad on my old Toshiba Portege 3500. But this is worse. Here are all the I'm-pretty-sure-these-aren't-vanilla-Windows processes that are still running after it's finished startup. I give descriptions where I think I know what a particular startup process does, otherwise I just quote the description field. 00THotkey.exe - Enables use of function keys to control laptop functions APntEx.exe - Touchpad driver (from Alps) APoint.exe - And another touchpad driver (from Alps) CrossMenu.exe - "CrossMenu Main" hkcmd.exe - "hkcmd Module" (from Intel) igfxpers.exe - "persistence Module" (from Intel) TAcelMgr.exe - Acceleration manager (what does that mean?) ThpSrv.exe - Parks your hard disk if you knock the laptop TMESRV31.exe - "Toshiba MobileExtension Service" TMETEMnu.exe - "Toshiba MobileExtension", spawned by TMESRV31 TSkrMain.exe - Acceleration "shaker" utility (what does that mean?) TFNF5.exe - Switch laptop video output using Fn-F5 TRot.exe - Match screen orientation to rotation of tablet screen TouchEd.exe - Turns touchpad on and off TFncKy.exe - "TFncKy" TPSMain.exe - Toshiba power saver applet TPSBattM.exe - Spawned by TPSMain, probably battery-specific TMERzCtl.exe - "TMERzCtrl" In my original post, I counted 11 extra startup processes from Toshiba on a Portege 3500. In just two hardware generations, they've out-done themselves with 18 startup processes. Pretty soon there'll be more random systray applets than there are regular Windows processes. As it is, they're already sucking down 70 MB of working set. Good thing I've got a gig... Can anyone provide more details of what each of these processes does? And (perhaps more usefully!) has anyone experimented with msconfig or autoruns to see the effects of disabling each of them?

Posted by on 12 September 2006 | 3:58 am

Flash demo of System Center Capacity Planner

We’ve had these bits bouncing around for way too long, but now they’re finally linked to from the SCCP home page. So revel in the glossiness of An Introduction to Microsoft System Center Capacity Planner 2006 :)

Posted by on 1 August 2006 | 11:30 pm

Acai Berry Select

Harvested by Brazilians for hundreds of years as a food staple and for their rejuvenating and detoxifying properties, Acai berries (fruit of Amazonian Acai Palms) have been all over the media, from articles in fitness magazines to features on popular television programs like Today show. Click here for your Risk Free Trial