ThinkPad X220

My Configuration

  • ThinkPad X220
  • Intel Core i7-2620M (2nd generation)
  • 12.5" IPS LED 1366x768 panel
  • 2x4GB Corsair DDR3 SODIMMs
  • Renice 120GB mSATA SSD, Seagate ST320LT007-9ZV142 7mm slim 320GB
  • Intel 6250 WLAN+WiMAX
  • Bluetooth, 720p webcam, fingerprint reader

Windows Experience Index

  • Processor: 7.1 (i7-2620)
  • Memory: 7.5 (2x4GB DDR3 SODIMMs)
  • Graphics: 6.3
  • Gaming graphics: 6.3
  • Primary hard disk: 7.7 (Renice 120GB mSATA SF-1222)

What's good

  • Amazing build quality. Zero flex, no squeaks or any give anywhere. SOLID.
  • Even lighter than my T410s at less than 3lbs
  • Decent graphics performance. Intel HD 3000 is actually reasonable -- don't need another graphics card anymore
  • mSATA and 7mm HDD combination is ideal. I get SSD performance and HDD priced storage space; T410s looks fat and chunky now.
  • Absolutely gorgeous screen. Beautiful!
  • 10+ hour battery life. With the screen cranked and wifi on, I get 10 hours
  • The fan is basically silent
  • Awesome CPU power, when you need it. When not, it sips battery power

What's not

  • (@*$&%( touchpad. Can I just get the X201's touchpad back, with the physical buttons, please?

A silent, low power, high performing HTPC

Summary

I previously had a loud and relatively obnoxious Core i7 tower acting as my media center. I had a relatively powerful graphics card in it, since I was convinced I would eventually play StarCraft II on it, and I wanted the awesomez framerates. As discussions swirl around the power consumption of set-top boxes and how much power they're always sucking, I got fed up and built a lower powered system for my TV.

I'm quite amazed by what the latest Intel Sandy Bridge platform can do. My HTPC is virtually silent now, and I can watch all my HD content with CPU to spare. Atom systems might still have a price advantage, but I can now get truly powerful yet low powered systems for <$400. I settled for an ASUS P8H67-I Deluxe with an Intel Core i3-2100T CPU.

Details

I have 3 desktop systems in the house that I can easily measure the power consumption on using my P4400.

  • Tyan Tempest I5000VS S5372-LC EATX with Intel Xeon E5310, 2x4GB DDR2 FB-DIMMs, two storage adapters (3ware 9550SXU and 3ware 9650SE) and attached disks
    • CPU Benchmark: 2055 pts
    • Power on, POST: 230-380w
    • OS Boot: 250-265w
    • Idle: 265w
    • Storage adapters + disks pull around 55-60w (Samsung F4 2TB)
  • Supermicro 5036T-TB with X8SAX, Intel Core i7-930, 3x2GB DDR3, 1x74GB WD Raptor, 2xoptical drives (Plextor PX-716, Pioneer BDR-203), ATI HD5770 1GB
    • CPU Benchmark: 5836 pts
    • Power on, POST: 180-215w
    • Boot: 150w
    • Win7 Media Center watching SD XviD over gbE: 130w
    • Win7 Media Center watching HD 720p x264 over gbE: 120w (yay hardware acceleration saves me 10w!)
  • ASUS P8H67-I Deluxe with Intel Core i3 2100T in Silverstone SG06B chassis (terrible!), 2x4GB DDR3 SODIMMs, Samsung 64GB 1.8" SSD, Lite-On slimline DVDRW, Intel 6200 WLAN mini-PCIe
    • CPU Benchmark: 3320 pts
    • Power on, POST: 36-48w
    • Boot: 35-45w
    • Win7 Media Center startup: 50w
    • Win7 Media Center idle: 30w
    • Win7 Media Center watching SD XviD over 802.11n: 31w
    • Win7 Media Center watching HD 720p x264 over 802.11n: 34w

Okay. Let me just re-emphasize these numbers here. A $120 CPU today gives you plenty of power for only 35 watts of power - faster than an Intel Xeon CPU from 2008. This is a system that boots from cold in about 6 seconds, pushes 1080p video over HDMI, DVI or D-SUB VGA, and has enough CPU power to beat an Intel Core 2 E8400 from 2 years ago. But most importantly, Intel's latest platform enables much more powerful systems with extremely low power requirements. There's no longer a sacrifice in performance to hit 35w. Even if the video decode weren't hardware accelerated, the Core i3 has more than enough power to do the job. Amazing.

Most consumer machines aren't CPU bound anymore; even a $120 CPU like the Core i3 2100 is probably more than sufficient for every day tasks. Spend your money on a nice SSD, and load it with 8GB of RAM and you'll have a quiet, power-sipping system that gets the job done. Less heat, less need for a fan, probably more reliable.

Microsoft Camera Codec Pack (16.0.0652.0621)

The Microsoft Camera Codec Pack enables the viewing of a variety of device-specific file formats in Window Live Photo Gallery as well as other software that is based in Windows Imaging Codecs (WIC).

Installing this package will allow supported RAW camera files to be viewable in Windows Explorer.

This package is available in both the x86 and x64 versions .

http://www.microsoft.com/download/en/details.aspx?id=26829

The Microsoft Camera Codec Pack provides support for the following device formats:

  • Canon: EOS 1000D (EOS Kiss F in Japan and the EOS Rebel XS in North America), EOS 10D, EOS 1D Mk2, EOS 1D Mk3, EOS 1D Mk4, EOS 1D Mk2 N, EOS 1Ds Mk2, EOS 1Ds Mk3, EOS 20D, EOS 300D (the Kiss Digital in Japan and the Digital Rebel in North America) , EOS 30D, EOS 350D (the Canon EOS Kiss Digital N in Japan and EOS Digital Rebel XT in North America), EOS 400D (the Kiss Digital X in Japan and the Digital Rebel XTi in North America), EOS 40D, EOS 450D (EOS Kiss X2 in Japan and the EOS Rebel XSi in North America), EOS 500D (EOS Kiss X3 in Japan and the EOS Rebel T1i in North America), EOS 550D (EOS Kiss X4 in Japan, and as the EOS Rebel T2i in North America), EOS 50D, EOS 5D, EOS 5D Mk2, EOS 7D, EOS D30, EOS D60, G2, G3, G5, G6, G9, G10, G11, Pro1, S90
  • Nikon: D100, D1H, D200, D2H, D2Hs, D2X, D2Xs, D3, D3s, D300, D3000, D300s, D3X, D40, D40x, D50, D5000, D60, D70, D700, D70s, D80, D90, P6000
  • Sony: A100, A200, A230, A300, A330, A350, A380, A700, A850, A900, DSC-R1
  • Olympus: C7070, C8080, E1, E10, E20, E3, E30, E300, E330, E400, E410, E420, E450, E500, E510, E520, E620, EP1
  • Pentax (PEF formats only): K100D, K100D Super, K10D, K110D, K200D, K20D, K7, K-x, *ist D, *ist DL, *ist DS
  • Leica: Digilux 3, D-LUX4, M8, M9
  • Minolta: DiMage A1, DiMage A2, Maxxum 7D (Dynax 7D in Europe, α-7 Digital in Japan)
  • Epson: RD1
  • Panasonic: G1, GH1, GF1, LX3

 

My experience with my new ThinkPad T410s

I recently replaced my aging T60p notebook.  Two weeks in, I thought I'd comment on the experience so far.  (i.e. here is my review of the ThinkPad T410s).

My configuration:

  • ThinkPad 2901CTO with Intel Core i5-520M
  • Intel HD graphics + nVidia NVS3100M switchable graphics
  • 14" LCD with LED backlight (1440x900)
  • 4GB RAM (2x2GB)
  • Intel 160GB X18-M G2 SSD
  • DVDRW optical drive, swappable Ultrabay adapter for an additional 2.5" SATA disk
  • Intel 6250 + WiMax + Gobi 2000 with GPS + Bluetooth module
  • Fingerprint reader, SD card reader

Windows Experience Index:

  • Processor: 6.7 (i5-520M)
  • Memory: 5.9 (2x2GB DDR3)
  • Graphics: 4.9
  • Gaming graphics: 5.9 (nVidia NVS3100M 512MB)
  • Primary hard disk: 7.2 (Intel X18-M G2 160GB)

What's good:

  • Perfect weight/size of screen/performance ratio.  I can walk around with everything I need in a < 4lb package.  My T40 was 4.5lbs, and my T60p was around 6lbs after all accessories (power supply, etc.).
  • Improved speakers
  • Solid keyboard
  • Excellent build quality.  If you think a MBP has good build, then you haven't picked this thing up.  There's no screen distorion at all and absolutely ZERO case flex when pressure is applied.  This is NOT machined from 1 piece of aluminium alloy - it's much, much better.  I don't pamper my technology.  So I really appreciate the quality materials in the chassis and case finish - I can just throw this thing in a bag and go, and know that it'll make it in 1 piece.  This thing feels more droppable than ever, especially now that I don't have a spinning drive inside.
  • Docking port provides two DP ports that can be used simultaneously.  Very cool, given the thinness of this machine.
  • Powered USB port can charge junk while the laptop is powered down.
  • eSATA port.  Need I say more?  I'm not sure I'd need USB 3.0 (at least, when it shows up mainstream, I won't be that jealous) because I have this eSATA port.  I do most of my stuff over the network anyway... but I'm sure it'll be great to move data off fast USB 3.0 storage keys...
  • There's VGA + DisplayPort.  PerfectNo stupid dongles, and eventually I'll be able to plug in high resolution displays direct.

What's not:

  • Battery life is around 2 hours if I'm actually using it.  Understandable given the weight/dimension compromises but this still seems low to me.  Maybe the Core i7 would have performed better; the lower clocked graphics wouldn't have been an issue anyway since I'd switch to the nVidia if I really needed good performance.  Too late now...
  • I wish the LCD were of nicer quality - better viewing angles would have been appreciated.  This is a relatively minor complaint.

Miscellaneous comments:

  • Storage: I replaced the SSD with an Intel G2 160GB X18-M.  My system came with a Toshiba 128GB SSD.  With the Ultrabay adapter as well, I can have a secondary 2.5" spindle with 320GB or more of space.  A very nice advantage of the T series over the X series.
  • Build quality:  Integrating the new roll cage in my previous T60p had the unfortunate effect of making the system chunkier (when compared to the T40).  The internals of the T60p were clearly better protected - there was far less flex and for the most part, the weaknesses in the chassis (around the T40 Ultrabay) were eliminated.  Moving to this T410s, I find the chassis far better than before - perhaps due to the decrease in system weight - but the attention to how the external casing is bonded to the rest of the laptop is phenomenal.  While there was no flex with my T60p when I picked it up from the corner, the palmrest plastic did strain under the weight.  When I pick up this T410s, the entire base of the machine feels rock solid.  I'm very happy.
  • Stickers:  There are fewer now.  The vast majority of the junk on the bottom of the machine is now hidden under the battery - which is a great little detail.  I always remove the 3 stickers on the palmrest as soon as I get the machine.
  • RAM is super easy to access, when compared to the T60p and certainly compared to the T40.  I love the simplicity.
  • Keyboard:  Two weeks in, I don't like the key changes.  The ESC and Delete key are too big, and I keep hitting F3 instead of F4 and F1 instead of ESC.  The tactile feedback and rigidity of the keyboard are amazing though, as always.  The new volume buttons are more useful than I would have expected.  I also don't really like the Caps Lock indicator on the key itself; I can't see it at a glance anymore and have to move my hand to check.  They should stash the 3 LEDs (Caps, Scroll, Num) somewhere else in my opinion instead of resorting to soft indicators or key indicators.
  • Connectivity:  The Gobi 2000 3G+GPS card is an amazing feature.  I now have data everywhere I go.  Very cool.  The integrated wireless card + Bluetooth options are, as usual, excellent.
  • Webcam:  A nice addition.  Not the best quality, but given the tight space, I'm not going to complain.  It's great for video conferencing.
  • Noise:  The fan is definitely noticeable if you're like me and enjoy working in a completely silent environment.  Switching to the integrated graphics reduces heat substantially and the fan virtually never runs under normal workloads.  That's an amazing improvement over the T60p, especially when you consider how much faster this system is.
  • Video:  I can play games.  I can also watch 1080p video with hardware acceleration; Windows Media Player shows 2% load while playing a fullscreen 1080p video.  This is with the Intel as well as the nVidia card.  Again, a phenomenal improvement over my T60p which had the FireGL V5250.
  • Switchable graphics:  Wow.  It actually works.  I had spent some time with a T400 with the ATI switchable graphics which delivered a relatively poor experience.  The switch was slow, and often failed without explanation.  nVidia's Optimus UI is much better - informing you exactly which processes are interfering with the switch (if applicable) and helps you terminate them.
  • Boot times: Phenomenal.  I'm not using the factory OEM image, but even my T60p with the Intel SSD didn't start up this fast.  I'm using the latest drivers from the Lenovo support page.
  • More importantly, resume times:  Wow.  Basically instant on.  It's not just Windows 7 - the Lenovo-provided drivers are where the magic is.  A great experience.  I open the lid and it's ready to go, and it's definitely faster than my coworkers new Core i5/i7 Mac notebooks.
  • Aspect ratio: I don't hate the 16x10 as much as I thought I would.  Again, the weight difference between this and my T60p means I'm willing to give up some screen space.  16x9 is a different story though... time will tell.
  • Microphones:  There are two now, located on the display bezel.  A nice touch as the keyboard noises + fan noises are reduced.
  • Modem: It's gone.  Since I have my Gobi card, I probably won't notice.  Sometimes I sent faxes using my modem, but I'm sure I can workaround this.

Recommendations:

I'd pick between this T410s and the X201.  The Core i7 processors actually save MORE power over the Core i5, so I'd consider those as well.

I use an X200 at work - and I think this T410s is essentially a less portable version of the X200.  If you need more graphics performance (or if you're like me and THINK you need more graphics performance) and battery life is less of a concern (I noticed that I'm usually plugged in anyway) then the T410s allows you to walk around with EVERYTHING you need, optical drive and all.  I also have an Ultrabay adapter so I can swap out the DVD drive and pop in a secondary 320GB 7200RPM disk for additional storage.  With power plugs being available virtually everywhere (via the travel adapter on planes, trains, and cars) the T410s battery tradeoffs become justifiable.

This machine is very snappy and packs a tremendous amount of processing power and everyday speed (when using the included 128GB SSD or the Intel 160GB SSD) in a package that is the same weight as most netbooks.  It also delivers decent graphics performance, excellent connectivity options, and is very well designed.  The typing and navigation experience is fantastic.  Additionally, Lenovo provides excellent driver support.

Yes, you obviously get what you pay for: this machine will definitely last you 3-4 years of aggressive usage, or longer if you're not demanding.  Did I mention I love the build quality?

Blocking Unwanted SMS Spam from AOL

Summary:

I started receiving unwanted SMS spam from 265080.  These messages can be stopped by blocking yourself on the AOL SMS servers.

Details:

Go to http://aolmobile.aol.com/portal/blockim2sms.do and register your phone number.  They'll send you a quick confirmation text message - which should hopefully stop unwanted SMS messages through their gateway.

Seems quite silly to have that enabled by default on all numbers - a bad default policy I think.

No longer annoyed when I close the wrong program by accident

Summary:

SSDs are really fast.  You should get one.

Details:

I finally caved and got an Intel 160GB G2 SSD for my laptop.  Photoshop opens within 4-5 seconds (I don't actually USE Photoshop, but I installed it just to see how fast it was.)  Outlook opens within 1s.  Virtually everything else opens instantly.  Makes my computer a pleasure to use again.

Understanding Windows Time Synchronization in 30 Seconds

Select a time source:

Stratum 2: https://support.ntp.org/bin/view/Servers/StratumTwoTimeServers
Pool: https://support.ntp.org/bin/view/Servers/NTPPoolServers
I've used pool.ntp.org and an NRC server in Canada below.

Standalone machine:

w32tm /config /syncfromflags:manual /manualpeerlist:"pool.ntp.org time.nrc.ca"
w32tm /config /update
net stop w32time
net start w32time

Note the lack of space between manualpeerlist, the : and the ".

Domain configuration:

  1. Configure PDC emulator to sync to external time source [1]:

    w32tm /config /manualpeerlist:"pool.ntp.org time.nrc.ca" /reliable:yes /update
     
  2. If you move the role of the PDC emulator to a new domain controller, Change the Windows Time service configuration on the previous PDC emulator [2].

    w32tm /config /syncfromflags:domhier /reliable:no /update
    net stop w32time
    net start w32time
     
  3. Configure a client computer for automatic domain time synchronization [3]:

    w32tm /config /syncfromflags:domhier /update
    net stop w32time
    net start w32time

Further reading:
Windows Time Service Tools and Settings
http://technet.microsoft.com/en-us/library/cc773263(WS.10).aspx

Good overview - explains domain hierarchy and time architecture
http://blogs.msdn.com/w32time/archive/2007/09/04/keeping-the-domain-on-time.aspx

Configuring a time source for the forest
http://technet.microsoft.com/en-us/library/cc784800(WS.10).aspx

How to synchronize the time with the Windows Time service in Windows XP
http://support.microsoft.com/kb/307897

Sources:

[1] http://technet.microsoft.com/en-us/library/cc786897(WS.10).aspx via http://go.microsoft.com/fwlink/?LinkId=91969
[2] http://technet.microsoft.com/en-us/library/cc738042(WS.10).aspx  
[3] http://technet.microsoft.com/en-us/library/cc758905(WS.10).aspx via http://go.microsoft.com/fwlink/?LinkId=91376

Improving Exchange 2010 OWA Page Loadtimes

Summary:

Exchange 2010 has an updated OWA - now renamed Outlook Web App.  There are plenty of new features and improvements, but I've also noticed a dramatic increase in the page loadtimes, particularly on slower client connections.  Page loadtimes can be improved without any server-side code (JS/HTML) changes by ensuring that gzip compression is enabled end-to-end - which is, by default, not the case if OWA is published through Forefront TMG.  I reduced my OWA page loadtime from 27.47s down to 11.22s.

Problem:

Large pages of text can be compressed with gzip which dramatically improves loadtimes for most browsers.  By default, gzip compression may not be enabled in your Exchange 2010 IIS configuration, and may not pass through your Forefront TMG server publishing rule.  My Forefront TMG MBE was NOT configured to gzip .js and .css files, nor was it correctly configured to return compressed content (where appropriate) from published servers.

Solution:

  1. Load OWA in Firebug and note the current loadtimes.  In the screenshot below, the JS library loadtime constitutes a significant portion of the overall page loadtime.  If you are not seeing this, then the following steps are unlikely to improve your loadtimes.  Make sure you hit Ctrl+F5 to reload the page without a cache.
    See http://justinho.com/files/uploads/OWA-01.png .  Note the ClientStrings currently is 29.6kb and the uglobal.js file is 799.1kb, resulting in a page loadtime of 27.47s, a near eternity.
     
  2. Drill into the uglobal.js file in Firebug.  This step is to confirm that gzip compression is not enabled for the .JS file in question.
    See http://justinho.com/files/uploads/OWA-02.png .  Note the lack of the gzip compression in the Response headers.  gzip compression is not enabled when the client receives this JS file, but it is being requested (note the presence of gzip, deflate in the Request headers under Accept-Encoding.)
     
  3. Let's fix that.  Ensure the /owa directory has high compression enabled on your OWA/CAS server. (Depending on your exact TMG configuration, this may prove to be moot since TMG may decompress your CAS server's response only to compress it again before sending it over the WAN.  See [2] before proceeding with this step.)

    In an Exchange PowerShell on the CAS [3]:
    Set-OwaVirtualDirectory -identity "owa (Default Web Site)" -GzipLevel High

    Restart IIS services:
    iisreset /noforce
    (I personally got error messages when I did this, so you can also just run iisreset without the additional parameter, which will interrupt open sessions.  You are doing this change during a maintenance period, right?)
     
  4. Ensure Forefront TMG returns compressed HTTP content where possible.

    In Forefront TMG management, under Web Access Policy, find Configure HTTP Compression under Related Tasks on the right.  Ensure you Return Compressed Data from Anywhere (or at the very least, add your Exchange CAS servers):
    See http://justinho.com/files/uploads/OWA-06.png

    Note which filetypes are compressed as well:
    See http://justinho.com/files/uploads/OWA-07.png
     
  5. Ensure .CSS and .JS files are compressed.  By default, TMG compresses HTML Documents, and Text (as we saw in the previous step.)  This is fine since images don't compress well.  However, we want to ensure .css and .js files are also returned compressed.

    In Forefront TMG management, under Firewall Policy, click Toolbox on the right, then Content Types, and find HTML Documents.  Double click to edit and add the following types [4]:

    application/json
    application/x-javascript
    .css
    .js


    Screenshot: http://justinho.com/files/uploads/OWA-09.png.  Yes, I realise these are "applications" - but we really don't want to gzip .EXE and other files through this webserver - I just want to fix this particular JS and CSS slow page loadtime problem right now.
     
  6. Load OWA again now and note the reduced loadtimes in Firebug.

    See http://justinho.com/files/uploads/OWA-03.png .  The same ClientStrings request is now only 10.4kb, and uglobal.js is down to 202.7kb.  Page loadtime is now 11.22s, which is a dramatic improvement.

    Anyway, if we drill into the headers, we also see Content-Encoding shows gzip is now enabled in the server response:
    See http://justinho.com/files/uploads/OWA-04.png 
     
  7. Done.  This is still an eternity as far as I'm concerned, so I hope Microsoft gets this cleaned up in a future Service Pack for Exchange.  I suppose using a standard JS library that other people use would be too much to ask.  Perhaps this library can be hosted somewhere by Microsoft on a CDN, or at least the GUI should allow customers to host these JS files elsewhere on a secure CDN?

References:

[1] http://getfirebug.com/ or https://addons.mozilla.org/en-US/firefox/addon/1843

[2] If your TMG is decompressing then recompressing the CAS OWA response, you might as well disable compression on your CAS and let TMG do the work.  Regardless of what compression level you set on OWA on the CAS, the TMG always appears to use low gzip compression.  To find out what the TMG is doing, access your CAS directly on the LAN via https://internalIP/owa then access it when published by the TMG (i.e. https://mail.contoso.com/owa) and note any change in content size.  See step 1 above, ensuring you hit Ctrl+F5 to force a reload of the page.

If I load my OWA directly from the CAS, I see the effects of high gzip compression: http://justinho.com/files/uploads/OWA-05.png
If I load my OWA published through TMG, I see lower gzip compression (and thus larger file sizes): http://justinho.com/files/uploads/OWA-03.png

In this case (TMG publish filesizes > CAS OWA filesizes) gzip compression can likely be disabled on the CAS (or at least left at Low compression) to reduce unnecessary server load.

[3] http://technet.microsoft.com/en-us/library/aa996547.aspx

[4] These filetypes were determined by inspection via Firebug.  Ensure you load the Exchange Control Panel (/ecp) via the Options link, etc. to ensure you hit all file types.

Exchange 2010 Planning Resources

Microsoft Exchange Server Jetstress 2010 Beta (64 bit)
Simulate disk I/O load on a test server running Exchange to verify the performance and stability of your disk subsystem before putting your server into a production environment.
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=13267027-8120-48ed-931b-29eb0aa52aa6

Exchange Load Generator 2010 Beta (64 bit)
Exchange Load Generator is a simulation tool to measure the impact of MAPI, OWA, ActiveSync, IMAP, POP and SMTP clients on Exchange servers
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=cf464be7-7e52-48cd-b852-ccfc915b29ef

Microsoft Exchange Server Profile Analyzer (64 bit)
Collect estimated statistical information from a single mailbox store or across an Exchange Server organization.
http://www.microsoft.com/downloads/details.aspx?familyid=C009C049-9F4C-4519-A389-69C281B2ABDA&displaylang=en

You receive various Stop error messages in Windows 7 or in Windows Server 2008 R2 when you try to resume a computer that has a large SATA hard disk

You receive various Stop error messages in Windows 7 or in Windows Server 2008 R2 when you try to resume a computer that has a large SATA hard disk

  • You have a computer that is running Windows 7 or Windows Server 2008 R2.
  • The computer has a large Serial Advanced Technology Attachment (SATA) hard disk. For example, the size of the SATA hard disk is 1 terabyte.
  • You put your computer to sleep state or into hibernation.
  • You try to resume the computer from sleep or from hibernation.

Error messages:

STOP 0x0000007A
STOP 0x00000077
STOP 0x000000F4

Hotfix: http://support.microsoft.com/kb/977178/
Intel SATA driver update: http://www.intel.com/support/chipsets/imsm/