Wednesday, February 27, 2013

Building a Box - Dual-Boot

While I am generally a Windows user, I have always been interested in Linux. I made an attempt to install Red Hat on my PC in the late 90s (but had too many driver issues and couldn't get x-windows to work properly so I decided to wait a while). In early 2010 I looked into it again and discovered Ubuntu. After playing with 10.04 and subsequent versions in VirtualBox for a while, I restored an old laptop using 11.04. After that, I was hooked, and I have had some version of Ubuntu running on a PC ever since. Once I was sure everything was stable on my new machine (I really have to give it a name...), I grabbed the latest version (12.10) and set up a dual-boot machine.

It actually wasn't that quick. I definitely wanted to run Ubuntu on the system, but I also didn't necessarily want to extend the boot time - I was too used to the  the 20-seconds to working in a desktop program from totally off  performance I was getting, and I didn't want to slow it down, even if it was only for the 10 seconds GRUB gives me to select an OS. So, at first, I set up a virtual machine in Hyper-V, Microsoft's virtualization software that comes with Windows 8 Professional. Due to two issues - one where SpeedStep seemed to stop working (thus locking my PC to slightly higher than stock speeds - more on that in another post), and one where Ubuntu couldn't easily access the Internet, I deleted that VM and went with VirtualBox, Oracle's free virtualization software. The VirtualBox installation, being a third-party solution that was not as deeply tied to the system, seemed to work better, however Ubuntu performance was slow, and Compiz kept crashing. I finally decided to go ahead and do what I should have done the first time, and installed Ubuntu in a dual-boot configuration. I know, some of you will argue I should have installed Ubuntu as the only OS right when I built the machine, but, in addition to needing it for work, I am a Windows user, and I actually like the way it works most of the time.


Since Ubuntu has a much smaller footprint than Windows, and since I am a light user, I made a 100 GB partition to use for the installation on my 2 TB Seagate Hard Drive. I had originally stated with 50GB but that didn't even register in Explorer, so I decided it was fine to take the full 100. Once I had the partition in place, I put the LiveDVD in the drive and restarted... and got dropped back into Windows. Since my Motherboard has a UEFI bios, and was set to Fast Boot, the default was to boot into Windows and not even check if there was a disc in the drive. I booted into BIOS and set the DVD as the main boot drive, and was able to get into the Ubuntu DVD.

One thing I like about Ubuntu is how fast it installs. When I set up my last PC to dual boot, it took about 15 minutes, and this time was no different. After answering the basic questions regarding the type of setup, the install drive, my location and language, etc.) it copied the files, and rebooted... into Windows. No GRUB. It was again an issue with the UEFI BIOS, as well as the GRUB bootloader. The Ubuntu site had some information on how to fix this (1. turn off Fast Boot, 2. Run Boot Repair from the LiveDVD) and once done, I rebooted and was greeted with the GRUB screen. I booted into Ubuntu and logged in, and everything worked fine. After the installation, I spent about an hour tweaking the OS and installing my favorite software packages, and getting the latest updates installed.


Ubuntu is a fast OS. Blazingly fast. I know a lot of this is due to it being Linux, but the Ubuntu Unity shell doesn't really slow things down. And on my new hardware, it runs very fast. At times, opening programs seems like I am just restoring minimized windows, rather than starting a program. Graphics performance is fine for my use as well. It works well with all my hardware, so I am not seeing any driver issues or having problems with graphics, sound, webcam, or WiFi.

Next Steps

My plans for the Ubuntu system are to set up a LAMP (Linux, Apache, MySQL, PHP) server and get a Drupal install running for testing, as some of our clients at work are starting to request their sites on that platform. I am also going to set up a MediaWiki installation - I manage a Wiki at the office, and I want to have a place where I can try out new extensions, tweaks, and other things without messing up the official development environment when I am just playing around because something looked cool. Other than that, I am going to keep using Ubuntu and getting used to it so I can keep my computing options open.


Sunday, February 17, 2013

Building a Box - Upgrading

In the short time since I finished building my custom PC, I have done a couple of upgrades to the components and played around with overclocking in order to improve overall system performance. In this post, I will cover the new components I have added, and I will have a separate post on overclocking in the near future.

New Components

Since the build, I have added an aftermarket cooling system to improve cooling when overclocking (see Overclocking Without Permission for details on why it was necessary), added a blu-ray RW drive, and increased cooling capacity even more by putting another fan in the case. The end result is that I can now play and backup blu-ray movies, and I can burn my HD home movies in actual High Definition without worrying that my computer will overheat when encoding the videos (that wasn't an issue when the system was running at stock speeds).

Blu-Ray Drive  

The Blu-Ray drive I added is an LG WH14NS40, a SATA 14x Blu-Ray burner that supports BDXL, M-Disc, and 3D playback. The model I purchased is  an OEM version that comes without software, but I had already purchased Nero 12, which has an upgrade available for playing and writing Blu-Ray. Installation was straightforward - I simply removed the Sony DVD-RW drive and plugged this in. 

Drive performance is good - in addition to the 14x BD, it writes DVDs at 16x, and CDs at 48x. I haven't had any issues reading discs, and burning all types of discs has been successful. I've finally been able to watch my wedding on my entertainment center TV in full HD, rather than DVD quality. Amazon usually has this drive on sale, so if you are in the market for a BD-RW, I would recommend you check it out.

Aftermarket Cooler

The Antec Khuler H2O 620 installed
Due to the inadvertent overclocking issue I had, I realized that if I wanted to overclock the computer, I would definitely need to upgrade from the stock fan provided by Intel. I did some research, and eventually ended up getting the Antec Khuler H2O 620, a liquid cooling solution. I bought it because the cooling performance looked decent from the various reviews I read, the price was good, and it doesn't take up a lot of space in my case. Because it comes with a fan on the radiator, I added the case fan that was already there to the radiator in a push-pull configuration (only because I had an extra fan - I'm pretty sure there isn't much of a cooling performance gain or anything. 

It is performing very well for me - I actually liked it enough to write a review on, which I'll put here to save some writing...
I purchased this cooler for my Intel i7 3770k processor on an ASUS P8Z77 M-Pro Motherboard. The processor was running a bit hot under load with the stock cooler at stock speeds - sustained full load usage pushed the temps to 80+ degrees Celsius. After installation, sustained full load temps (3 hours of Prime95) mildly overclocked (4.2 GHz) are stable at between 50 and 60C. Idle temps are in the low to mid 20s (C).
The unit is verWhen I purchased the components, I had always planned on doing some kind of overclocking, which is why I bought the i7 3770k as opposed to the regular 3770. The unlocked multiplier makes it easy to overclock, and y quiet in my setup - under load the system is a bit quieter than with the stock heat sink and fan. I have not experienced any of the clicking that has been reported, however my unit only has a 3-pin connector, so I assume the pump is constantly running at full speed. It also fits well in my case - a CoolerMaster Storm Enforcer Mid-Tower. The stock install doesn't block anything important on the Motherboard, but if you decide to run a push/pull fan configuration, you may cover something. 
As many others have reported, the instructions leave a lot to be desired - I would have given this 5 stars if the instructions were better. I was able to get through them without an issue, but it took several looks and a couple of re-dos for the screw adapters. I definitely recommend looking for some YouTube videos or other (non-Antec) online guides before you install the unit. One thing to note - for my Socket 1155 MB, I used the holes for 1156, and everything lined up fine. I would recommend using a magnifying glass during the install - the mounting bracket for the back of the MB has markings indicating where the barrel nuts go for each MB type.
I had also looked at some air cooling, but my main concern was the amount of space it would use in the case. As you can see from the picture above, I have plenty of space available with the Khuler 620 in place.

Future Plans

The PC is working well now, but there are still a couple of things I would like to eventually do before I officially call it "finished." As I have mentioned before, I want to get a discrete video card, rather than using the on-chip Intel graphics. Since I am probably going to go for something in the high-end bracket (and since the system performs adequately enough for my current use with the Intel graphics) I am taking my time in selecting a card. I am also considering getting a sound card, however this may be dependent on the video card I get because the ASUS P8Z77 M-Pro motherboard is microATX and has a limited number of expansion slots, so I may not have room for it.

If anyone has thoughts on video cards, feel free to leave me a comment.

Wednesday, February 13, 2013

My Favorite iPad apps

I've been using an iPad since late 2010. In that time, I have come across several apps that I really enjoy using, or find very useful. Here is a list of my 10 favorite iPad apps.

  1. The Simpson's Tapped Out. I've been a Simpson's fan since they were a short on the Tracy Ullman show, so this one feels like it was written for me. The premise of the game is that Homer is playing a similar game on his myPad while at work, and, by ignoring his duties, accidentally destroys Springfield. You have to put it back together, adding buildings and characters by earning money and doughnuts (mmmmm, premium currency) by assigning the characters tasks. The game also has quests that allow you to add new characters and buildings. While it is a simple gameplay - give characters tasks and build things - the content is amusing and brings in several themes from the show. They have also had several events where you can get special items for a limited time. These include Halloween, Thanksgiving, Christmas, and Valentine's day. Like other similar games, you can purchase additional "premium currency" for real money to either speed things along or buy special items. That is actually the main downside - if you're not careful, you can spend a lot of money.
  2. Jurassic Park Builder. Very similar to The Simpson's Tapped Out, in this game you are in charge of building Jurassic Park. The game features lots of different dinosaurs, including the T-Rex Stegosaurus Triceratops, Troodon, Brontosaurus (yes, even though it's not real), and others. They have also recently added an undersea "park" with ancient sea creatures. In addition to setting up the park, characters from the first two movies (they include Ian Malcolm's daughter in the game) give you tasks to complete to earn coins and cash (this game's premium currency).
  3. Game for Cats. The name says it all. A "game" that has a mouse running around (or a butterfly, or a laser pointer) on the screen so a cat can hit it. It even keeps score. While I like the idea and execution of this app a lot, my cat just sits and watches the motion most of the time... he won't try and hit the screen.
  4. MyFitnessPal. The iPad version of the Web site, MyFitnessPal allows you to track food and exercise on your iPad. I actually like the way it works better than the Web site - adding food shows the calories right on the add screen, as opposed to the online interface. The graphs and charts are also easier to access and view.
  5. Sweet and Spicy. An app for all the lovers of Indian food, Sweet and Spicy has thousands of recipes. There are plenty of search and filtering options too, including regional, vegetarian, non-veg, festival, 30-minute, and several others. The recipes are user-submitter, and they all have comments and ratings from other users. Many recipes have videos as well. The app allows you to save your favorites for quick access. You can also enter ingredients you have on-hand and see what you can make with them.
  6. Desktop Connect. As a general "tech guy" and a system administrator on more than one server, I find that  need to be able to remotely connect to the servers often enough to warrant having a remote app on all my mobile devices. When I first started using the iPad, Desktop was one of the few choices. I purchased it, and do not regret that decision. Not only can you save connections for frequently used servers, it will scan the local network and show you any machines with remote connections available. It supports both VNC and RDP, so it can connect to pretty much everything. It has an "easy connect" feature that lets you use a gmail login to connect via VNC, but it ends up installing a VNC server, so I just used the direct VNC connection, and haven't really tried the gmail method.
  7. Nook. I have a lot of Nook-based e-books, and the iPad client lets me do everything I need. It syncs with other devices and remembers where you left off. It also has a dictionary and lets you highlight and set bookmarks.
  8. Angry Birds. Actually, this is three apps... Original, Space, and Star Wars. It's a great time waster, and the different puzzles they set up are great (though sometimes frustrating...). My only wish is that the games could communicate across platforms so if I get some levels done using my phone, it would transfer to my iPad.
  9. Chrome. Until I got my Surface RT, Chrome was the default browser on all my devices. It syncs pages and favorites across platforms and devices, which makes managing bookmarks and history very easy. It works as well as Safari on the iPad, and I feel it is a bit more elegant (although I can't exactly explain why...).
  10. Saavn. This is an app from a Web site of the same name that plays Indian music. There are thousands of songs available for streaming, and there are also tons of playlists (both official and user-created). Saavn also has a "surprise me" feature that puts together a random playlist of 15 songs.
While most of these aren't required or "can't live without" apps, they definitely make my iPad a much more useful device for both productivity and fun. I wouldn't hesitate to recommend any of the apps above to anyone with an iPad. Feel free to leave me a comment if you have a "to die for" app that you think I'd like. Note that I have a first gen iPad, so photo/video shooting apps won't really work for me...

Saturday, February 9, 2013

New Ecosystem

With the replacement of my once-great Samsung Stratosphere* with an HTC Windows Phone X, my business computing is now entirely under the Microsoft umbrella. Windows 7 at the office, Windows 8 at home (desktop and laptop), Surface RT for the tablet/netbook. Now if Redmond would only send me the shill checks they promised...

But seriously, this is the first time that I have had all my eggs in one basket - I would generally have one "odd man out" device, if not more. In fact, until recently, my standard trio for business trips was my iPad, my Windows 7/Ubuntu dual-boot netbook, and my Stratosphere. I'll be doing some posts on living in the MS world (like I haven't already...) and how it affects my work, leisure**, and other computing activities.

*more to come on this story - quick version is that Verizon took a great phone and completely ruined it with an OS update.

** My iPad needn't worry... there are enough iPad-only apps that I got used to using on that platform that I am not giving it up completely (although if they release The Simpson's Tapped Out on Windows 8 it could change things...)

Wednesday, February 6, 2013

Overclocking Without Permission

Sorry for the long delay between posts this month. I really want to try to get to posting a couple of posts a week, but Real Life keeps popping up and using up my time. In any event, I am going to try to get back to that frequency starting now. I have a lot of ideas for posts, and am going to start actually typing them up. I'll start off with something I promised a while ago.

As I mentioned in the post about my custom PC build, I had an issue with the system crashing randomly. It only crashed twice - once when I was running the Windows Experience Index, and once overnight. This worried me because it was a brand new system, and everything should have been in tip-top shape - unless I screwed something up (or received a faulty piece of equipment). I was really hoping I wouldn't have to redo all or part of the build. Luckily, I enjoy troubleshooting almost as much as I like building PCs, so I put on my thinking cap (do they still make those) and started working.

When I checked the event logs for the second crash, I saw that the system crashed at 3:02 AM. Since I wasn't actively using the system then, it really puzzled me... while the system can do some automatic tasks overnight, what could it do that makes the system crash? The event logs also indicated that it was a hardware issue, but didn't specify which hardware caused the crash. Since I had to work, I put the minidump files onto a flash drive and left for the office.

While I was at work, I went to the ASUS site and downloaded all the updates available for my motherboard, as well as a few utilities. I also reviewed the minidump files, but they didn't really give me much information - it looked like a different module crashed each time. This made it look even more like a hardware problem to me, but I still wasn't sure.

When I got home, I installed the updates as well as some of the additional ASUS utilities. I also installed Who Crashed, a utility that reads minidump files and translates the contents of the file into plain English. Analyzing the logs in Who Crashed didn't give me any additional information as to the root cause, but that was due to the nature of the crashes. Since the crashes seemed like they were probably hardware related, I decided to do some tests.

The ASUS utilities included ASUS PC Diagnostics, a program that includes a "stress test" for the CPU, system memory, and the Video system. I decided to start with a CPU test. The CPU test forces the processor to calculate Pi and uses 100% of all available cores. It runs for as long as you want it, but defaults to1 minute. I ran the one-minute test, and the system only made it through 45 seconds before crashing. While it looked like the CPU was the issue, I ran the memory and video tests to confirm. Both test ran without any issues. It seems that I had an issue with the CPU.

While I wasn't sure what the exact issue was, I started to suspect it was a heat issue. This was mainly due to the fact that under basic use or idling, the computer didn't crash. Both minidump files showed a crash while the system was performing maintenance that could involve the CPU. I tried running the CPU test while running the ASUS AI II suite's monitoring module, but the diagnostic test turned off the module before running the test. The computer made it through abut 30 seconds before crashing, and this time the BIOS gave a CPU temperature warning when the computer restarted. This confirmed the heat issue, but I still wanted to see what was going on. This lead me to discover the root problem.

I really wanted to watch the CPU temperature while I ran a stress test, so I download Core Temp, a utility I have been using for a while. I installed the program, and watched it while I ran the stress test. The system crashed after about 40 seconds, and Core Temp showed that it definitely was a temperature issue. The core temperatures increased to over 105 Celsius (the TJ Max - or the point where the processor will start to throttle or shut down to avoid damage) very quickly. Core Temp also inadvertently showed me the root cause of the problem. It seems my processor was overclocked.

Core Temp Window (image from Core Temp Web site)
In addition to showing the core temperature, Core Temp also shows other processor information. One item is the frequency, which, in my case, showed that the processor was set at around 4.2 GHz. Since my processor's stock speed was 3.5 GHz, and it had a turbo speed of 3.9, this was weird. I went in to the ASUS AI II app and found a module that showed the processor settings. This confirmed that my processor was overclocked. I used the utility to change the setting back to stock, and then ran the stress test again. It made it through 1 minute without an issue, and the temps didn't get above 65 C. I ran a 10 minute test with the same result. Now the question was "how did this happen?"
While I am not exactly sure what happened, I have narrowed it down to the fact that I like to poke around with settings, and at some point, I had clicked a button in the ASUS AI II software that caused the system to automatically overclock*. Since I had just been poking around, I hadn't noticed, and this is what caused the system to crash under high processor loads. I made sure that the stock settings stuck, and then purchased an aftermarket cooling system, and haven't had random crash issues since. I have subsequently overclocked my system on purpose, and it still is stable as a rock.
The main lesson I learned in all of this is that, when I am poking around trying settings, make sure to find out what the settings do before I try them (especially if they mess with core system settings).