Monday, September 21, 2009

Birthday Post: My New Computer

Seeing as how it is my birthday today, I thought it would be fitting to talk about one of the birthday presents that I got (a little early).

I bought the parts for and built my own desktop computer the summer before my freshman year. My main components were:
When I bought these parts, I knew that HT meant hyper-threading, but I did not understand how it worked. It sounded great because it was supposed to give you two "virtual" cores even though this processor was only a single core. When I began to play World of Warcraft (WoW) during fall of my sophomore year, my graphics were very glitchy. I assumed it was because of my graphics card since I had not bought it with gaming in mind. Eventually I noticed that while playing WoW, my processor was using exactly 50% the whole time. That does not mean that WoW only needs 50%, that means WoW wants more than 50%. I went into the BIOS and turned off hyper-threading (now that I realized that another name for hyper-threading was limit-every-process-to-half-the-CPU). After that, WoW used around 80% of my CPU and my graphics were no longer glitchy.

One reason that I bought that xBlade case was because it was advertised as a screwless case (i.e. I would not need a screw driver to add or remove a hard drive or CD drive). While this this advertisement was correct (because it did not require a screw driver), its design was much worse than one requiring a screw driver. To add or remove a CD drive, you had to remove the entire front panel. To remove the front panel, you had to push really hard on six inserts that were located in the corners and middle of the panel. Ideally you could release all six inserts at the same time, but that would require at least six hands. Instead, the idea was to try and push them half out in an alternating pattern. Eventually I broke one of the insert because I pushed the other inserts out too far. I hated that screwless design.

Also about that xBlade case, it came with a front LCD screen for monitoring the CPU, video card, and case temperature, but it did not last very long for me. The summer after my freshman year, I was inside the case doing something (probably installing the extra 80mm fan or two that I bought that summer to help keep the case cooler). Somehow, I plugged in the power to my LCD screen incorrectly because as soon as it made contact, there was a loud pop. I looked at the components on the back of the LCD screen (I thought that a capacitor had blown), but everything looked fine. I do not know what happened, but my LCD screen never worked again.

My motherboard supported overclocking my CPU. Everyone online had nothing but good things to say about it, so I overclocked my 3.0 Ghz CPU to 3.6 Ghz (which is a 20% increase). In addition to this, I was ruing GIPMS at the time, so my CPU was always running at 100% utilization. I do not think I continued to run GIMPS after my sophomore year, but either my CPU or motherboard started to show some problems (although it was probably my CPU since I had previous been hard on it by overclocking it and running at 100%). Sometimes my computer, on a cold boot, would say that my CPU had failed. If I restarted the computer enough times, it would eventually start correctly, but I was always very concerned when this would happen.

During my senior year, a friend of mine started having computer problems. He had taken his computer to a local computer repair shop and they told him that his hard drive and motherboard where bad and needed to be replaced. That seemed unlikely to me since motherboards rarely fail. At that time, I did not have time to inspect his hardware for him, so I recommend that he buy a new computer and I would just take his old one. In my spare time, I would check his computer for problems. It was clear right away that the hard drive was a goner, but I never found any indication that the motherboard was bad. So, I bought a new hard drive for it and put it my video card and RAM. (By this time, I had replaced my AIT All-in-Wonder with an EVGA Nvidia 6800 GTS because I had switched from Windows to Linux and Nvidia had better support for Linux.)

When I moved into my new apartment in Madison to start graduate school, my desktop was not working correctly. The screen would have artifacts all over it, then after a few more seconds, the computer would freeze. I tried several troubleshooting steps related to the video card but did not try a different video card because I did not have one and did not know where I could get one. At this point, I was confident that it must be my motherboard then since that computer shop said they had found a problem with it (even though I originally thought that they were just trying to take advantage of my friend since he had knew nothing about computer hardware).

To replace my motherboard, I decided to also replace the CPU and case (since the case I was given by my friend was a BTX case and not the common ATX). The parts that I bought were
I would have bought another Asus mother board, but every motherboard they had contained too many features for too high of a price. Also, I have been looking at the Antec case for a long time and dreaming about how much better it is than my old xBlade case with its terrible screwless design.

I got all of these parts, put them all together with my EVGA Nvidia 6800 GTS video card and....I had the same problem! Since I replased every part but my video card, had to be my video card. First I checked to see if it was under warrenty. I was happy to see that this video card could have a lifetime warrenty but saddened to learn that it only had this lifetime warrenty if I had registered it with EVGA within 30 days of purchase. Without the registration, it only had one year, which had already passed.

I decided to buy another EVGA card, this time I bought an Nvidia 9500 GT. After registering this product with EVGA, it now has a two year warrenty.

When my parents asked me what I wanted for my birthday, I asked if they would pay for the new computer parts that I had just bought. They agreed. Thanks mom and dad for the new computer!

Sunday, September 20, 2009

Tostitos: Hint of Lime

Every Friday, the graduate students have a small TGIF social party in the building. This week, someone brought "Tostitos Restaurant Style with a Hint of Lime Tortilla Chips". They are by far the best tortilla chips ever. Today I went to the grocery store and bought two bags as well as Tostitos hot salsa. I ate them for lunch, dinner, and an after dinner snack. They are extremely tasty.

Friday, September 18, 2009

Satellites in the Night Sky

This summer I went with the Shannon's family on their annual summer vacation to Chippewa Lake near Brandon, MN, which is about two hours northwest of the Twin Cities.

Because there is almost no light pollution in this area, we decided to look for shooting stars. I only saw three in the span of half an hour. I thought that I would see more, like one every three to five minutes. However, we did see something else every three to five minutes...satellites! I was not aware that you could see them with your naked eye.

Sunday, September 13, 2009

Minimum Number of Comparisons to Find the Median

Last week in my Advanced Algorithms class, we discussed how to create a deterministic algorithm to find the kth smallest element in a list of size n. An algorithm that solves this problem is called a Selection algorithm.

The first step in the deterministic algorithm is to divide the original list into ceil(n/5) lists (each of size 5). The next step is to find the median of each 5 element list. Because 5 is a constant (with respect to n), it is acceptable to first sort each 5 element list and then extract the media (without adversely effecting the runtime).

Now, the Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) by Kunth says that sorting 5 elements can be done in 7 comparisons. That is great, but we actually do not need to sort these 5 elements. We only need to find the median. Our class found some lecture notes from another class where the professor mentioned in passing that the median of 5 elements can be found with only 6 comparisons, but he never expained how to do this.

I was not aware of nor have I found any results of the form: Finding the median of n elements requires c comparisons. However, I was able to discover how to find the median of 5 elements by using only 6 comparisons. It was not in a paper or even some professional-looking site. It was in a forum which I am only able to view using Google's cached copy. About halfway down the page is the following figure:

This is a remarkably thorough answer. Other than two meaningless typos at the bottom (where he should have said "(C>D gives full ordering)" on the left side and should have said "(C>E gives a full ordering)" on the right side), this solution clearly shows that 6 comparisons is sufficient.

It seems unlikely that there could be a way to find the median of 5 elements with only 5 comparisons, but I have not seen any proof of such a fact. If you know a proof that 6 is indeed the minimum number of comparisons necessary to find the median of 5 elements or if you know any results for lists of larger sizes, please leave a comment.

Saturday, September 12, 2009

Pandora Now Limits to 40 Hours

For the last two years, For Pandora has been on the bubble of legality. In their defense, they were and still are doing their best to be legal by signing contracts with big music. While they were able to exit this state of limbo and once again be officially legal, their recent renegotiation has a significantly bad clause.

On July, 7th, 2009, Pandora contract renegotiation includes a clause that free accounts can only listen to music for 40 hours per month. After you have listened to 40 hours of music in a month, you can pay $1 for unlimited music for the remainder of the month. While this is not that much money (it is at most $12 a year), I will be taking the path of least resistance.

I have heard great things about and their free accounts get to listen to an unlimited amount of music. I just created my account and started listening as I started this blog post.

I heard about Pandora's new limitation last night. I did not listen to music that much this summer, but I must be listening to lots of music at school because I only have 10 hours left for this month. Sorry Pandora, I have enjoyed the last two years of music, but you are no longer the number one, personalized, online radio station.

It has not even been a whole day since I switched from Pandora to and I can already tell the is way better. The best feature of is the ability to play whatever song you want (there my be some kind of limits to this, but I have not found any yet).

Friday, September 11, 2009

Car Accidents

I am 22 (almost 23) years old. I lived in Sioux City, IA (population ~80K) for 17 years, I lived in Ames, IA (population ~50K) for 4 years, and I lived in Cedar Rapids, IA (population ~125K), Rochester, MN (population ~95K), and White Bear Lake, MN (population ~25K) for a summer each. Never, in all these cities in all those years, do I ever remember even hearing a car accident happen.

I am now living in Madison, WI (population ~225K) since August 17th (that is less than four weeks) and I have already heard three car accidents happen...and all of them have happened within 100 feet of my apartment building.

What gives? Is it because Madison has such a larger population (i.e. more drivers = more opportunities for accidents)? Is it because I live on a bottle neck in downtown Madison (Gorham is the best way to get from NE Madison to SW Madison)? Is it because Wisconsinites are such bad drivers (which indirectly implies that Iowans are good drivers)?

I do not know, but I will be SO pissed if some Wisconsinite hits my Prius!

Thursday, September 10, 2009

My Acer is Back

This happened a long time in about three weeks ago, but I got my Acer Aspire One back.

Acer replaced the motherboard. They did not say what was wrong with the motherboard or why it happened. However, on the positive side, Acer did not restore the hard drive to the OEM state...which means that I did not have to reinstall Ubuntu.

I hope that I do not have any more serious problems (ones that I cannot fix myself). My warranty expires at the end of this year. I really do not want to buy an extended warranty.