12.31.09

The Eureka Momement

Posted in College, Programming, School at 7:30 pm by Nick

As the semester finally wrapped up I found that my list of things to write about has begun to explode. However, at the very top was something I discussed with several people when talking about my software engineering project: the eureka moment. Epiphany.

When writing software, you often analyze several ways to accomplish a task and embark on what seems like the best one; but on occasion, the stars align and the meaning of life becomes crystal clear. Your solution is so perfect and elegant that you know, even feel, that it is right and it shouldn’t be any other way. I detail my experience with this below.

Read the rest of this entry »

12.06.09

The Speed of Flash Drives

Posted in General, Reviews at 6:05 pm by Nick

When buying my new graphics card I received a free 4GB flash drive. I didn’t realize this when I bought the product, but I was excited as you can never have too many flash drives! However, as I read its reviews I heard a great many complaints of it being slow. This made me wonder just how fast it would be, and how it compared to my other flash drives.

I was fortunate enough to be one of the first people to jump on the flash drive bandwagon. I bought (well, my mother bought) my first flash drive, a massive 128MB for over $120. That is a joke now days of course — you can obtain giant flash drives cheaply, and people routinely hand out “small” 4GB drives for free. And, as long as you plug them in once every twenty or so years they’ll retain their data!

Here I will detail the analysis of the flash drives I currently own, from my oldest, original 128 MB PNY flash to the newest free OCZ drive I have received.

In the order they were acquired, here is make / capacity (note that my original drive is the largest physically, even compared to the 16GB drive):

- 128MB PNY Attache (bought around mid 2004 or early 2005. It came with a Windows 98/ME drivers disc that I carry in my backpack to this day)

- 128 MB UNI ROTC – Special drive received from the department when I was in high school

- 2GB SanDisk Cruzer Micro – My first flash drive in many years. 2GB seems like a lot when you are used to 128MB!

- 16GB Kingston Data Traveler – Received from Distek, my employer, as Christmas gift in 2008.

- 4GB OCZ Diesel – Received as a free addon by NewEgg for buying two video cards.

I will test using CrystalDiskMark 2.2 using a USB 2.0 port doing sequential reads and writes:

Drive Filesystem Read (MB/s) Write (MB/s)
PNY 128MB FAT 4.858 4.172
ROTC 128MB FAT 10.71 4.891
SanDisk Cruzer 2GB FAT32 30.51 8.950
Kingston Data Traveler 16GB FAT32 22.17 14.11
OCZ Diesel 4GB FAT32 17.84 6.498

The conclusions are quite interesting. In comparison to similar technology, the OCZ diesel is indeed slow. There are many drives that function much faster then the ones listed here, though these are some of the more common drives.

It is interesting to me that write speeds increased dramatically, but now seem to wax and wane depending on what you buy. I also find it interesting that there was no clear winner here. The Kingston drive would be the obvious choice with good read speeds and the best write speeds, as well as superior capacity. However, the Sandisk drive has superior read speeds by a fair amount, and at 2GB will hold most anything I would want to carry around. I suppose these will be my primary drives depending on what I am trying to do.

As for the free OCZ Diesel… well, I think it is time to test ReadyBoost with all 4GB of it :)

12.04.09

Triple Monitors — A Little Hassle

Posted in General at 10:50 pm by Nick

After programming heavily for my Software Engineering project, I determined that I could make extensive use of a third monitor. I came to this conclusion after having spent many long nights in front of my screens, endlessly resizing windows so that I could view what I would like to see, as well as view the chat with my teammates. I generally ended up with at least three SSH sessions open, and while I am aware there are many ways to quickly switch between windows on a command line (screen, buffers, and the like), the whole problem was switching at all. I was tasked with writing the search part of our system, which turned out to be interesting and a lot of fun. However, I was most productive when I was able to sit at the MySQL prompt and run test queries while writing the search code itself. I also needed another window or two to do general things without removing focus from my other two windows, and, for anyone who knows me well, I -ALWAYS- like to watch the performance of my computer so I generally had a session simply running htop.

After running my server for 20+ days, I shut down everything to go on Thanksgiving break. When I finally returned home, my server would not boot. Having gone through this before, I checked the RAM immediately, as it was an old high performance stick that saw heavy use in my desktop before being retired. The stick was at fault, and so my server was dead until I could buy new RAM. My graphics card was the only thing in my desktop that had not been upgraded in a while (two years or so), but I wasn’t going to bother ordering something until I actually needed parts. Now I had to order something, so I looked for new graphic cards! The desktop was running an ATI Radeon X1950 Pro, and with the graphic card industry being the way it is, it had now moved into legacy status and there were much better cards to be had. So I decided that if I needed RAM for my server I would also throw in my new monitor and grab a new video card (an ATI Radeon HD 5770 from Sapphire).

Already annoyed with the RAM blown and having to gimp my desktop (took 1GB and threw it into the server for the time being) while being embroiled in coding, I eagerly awaited my parts. However, 15 minutes after placing the order for my monitor (a 22″ 5ms Acer, similar to my other two 20″ monitors), a sale on Newegg began for a similar monitor that had a better contrast ratio for ~$20 less. Thinking there was no way they could have processed my order in 20 minutes, I went to cancel. My request was denied. I tried again. Request denied. After further inquiry, it seemed that the monitor I ordered just 20 minutes earlier had hit their shipping lines! Instead of being disgruntled I merely canceled the order for the other monitor and decided I would be content with fast shipping of the pricier, slightly less capable monitor. In the mean time, my other order (video card and RAM) did NOT ship until Wednesday, the day I received the monitor I had ordered two days later than the parts. Newegg, recognizing their shipping hold up, decided to 2-day air ship the parts to me so I could get them today (12/4/2009).

Having done my research ahead of time (and thus, part of my reason for writing this blog post as that research was hard to find), I knew that my ATI Radeon X1950 Pro legacy card would very likely conflict with my new ATI Radeon HD 5770 under Windows 7, despite being workable under Windows XP. Now, after two hours of trial and error, I have found that you indeed cannot mix a legacy card with a newer card simply because it is no longer supported by Catalyst Control Center, which is needed to govern multiple ATI cards. So, it seems, ~$330 later, I simply have two more inches of screen space and an extra monitor on my desk, waiting to be used. The question now is do I buy a second graphics card or find an alternative? Having come this far, I’m inclined to say the second graphics card is the way to go. This is also after some research which led me to some interesting devices, but all for more then $160, which is about what another graphics card will cost me.

So, to recap for anyone searching:

If you want to use three monitors with your computer, the easiest and most reliable way to do so is with three DVI connections. In that regard, you will want two graphic cards, with at least one of them having two DVI/D-Sub outs. For maximum reliability and compatibility, and the ability to CrossFire or SLI later, try using two of the same card. If you have an older card that is no longer supported by ATI, you cannot mix it with a new card on Windows 7 due to driver conflicts (this has to do with the way Windows 7 pulls and uses legacy drivers). However, you should be able to use a newer card (that is, any card not in legacy status) with a brand new card (say, mixing a 4000 series and 5000 series) and have it work just fine.

Another question remains: If you have two cards and Crossfire them, can you support three monitors? I was curious about this too, but according to ATI only two monitors are supported with CrossFire at this time, although this link seems to say up to five can be supported. I should note I’m not much of a gamer or performance chaser. Instead, I chase my own productivity, and it so happens that multiple mid-range graphics cards seem to be the answer!

A word on ATI Radeon HD 5770 Performance:

While I do not have hard benchmark numbers, it is quite clear after a few minutes of use that this card is a big advance over my Radeon X1950 Pro. It had double the memory (1GB v. 512MB) and it is faster (GDDR5 v. GDDR3). It has a much higher clock speed (850Mhz v. 600 Mhz) and a much larger number of graphics pipelines (800 v 600). I was concerned about heat (which any good system builder should be), so I watched in CCC as I ran the Windows 7 benchmark program. As the test chugged away, I watched the GPU get red-lined for a bit and the fan never went above 33% (great for noise), and the temperature never went above 50C. I suppose the question now is how hot will two of them get in my case? They will be quite close to eachother, and the top one will receive little air flow, so I am concerned. However, my temperatures are something I monitor quite heavily (I’ll probably write about that eventually), so hopefully it won’t be a problem

I spent some time yesterday playing Team Fortress 2 to test out the card a bit (I don’t play many games, so it is the most intensive one I have). I jacked up all of the settings to max, including Anti-Aliasing 8x and Ansiotropic Filtering 16x. The card ran like a champ — it never really broke a sweat, leaving its fan at 33% and never going above 55C while maintaining over 60fps, usually much more (100+).

For the curious, Windows 7 rates my system thus (scale ranging from 1.0 to 7.9):

Processor (C2D Q6600) – 7.1
RAM (4GB 800Mhz 4-4-4-12 GSKILL) – 7.1
Graphics (Radeon HD 5770) – 7.3 (up from 6.0)
Gaming graphics – 7.3 (up from 6.0)
Primary hard disk (WD Caviar Black 7200 RPM 500GB): 5.9

Thus, my base score is 5.9, with my disk drives being the only item under 7. This is a little curious to me as both of the drives are quite new and feature dual processors each with access to its own 16MB buffer. That said, I run the two drives in RAID1 using my motherboards fakeraid, so it isn’t surprising there is a performance hit here. All of that said, my desktop is considered extremely high end, and thus I will not need any more updates until I build a completely new rig in a few years. Until then, I look forward to testing triple monitors and another new 5770.

In the mean time, I’ll settle for my Linux box getting it’s own monitor:

2 + 1 != 3

12.02.09

Evelyn Glennie Shows How To Listen

Posted in Lectures / Talks, Reviews at 10:18 pm by Nick

Sometimes a talk turns into an experience, and Evelyn Glennie delivers. Evelyn is a Grammy-winning percussionist and composer who became almost completely deaf by the age of 12. Who better to teach you how to listen?


Read the rest of this entry »

Reviews — Logging My Thoughts

Posted in Reviews at 9:22 pm by Nick

For such a long time now I have bookmarked and otherwise hackishly cataloged some of the most interesting and persuasive material I have read or listened to. I have persistently and adamantly shared much of this with other people, and I often revisit them myself. I plan on reviewing much of this material in an effort to not only write more often, but to write down thoughts and ideas now on the things I am learning so my future self (and others) might analyze them later.

I plan to go through the many lectures I have bookmarked, and many of the best books and articles I have read. Much of the information is technology or entrepreneurship related, which makes sense if you know me. However, I think it is important to expose myself to the incredible expertise present in other fields. By learning more about art, music, politics, biology, physics, and anything else, I can develop an understanding that transgresses the fields themselves, and I will be a more well rounded individual.

I boldly support the idea that the more you learn, not just about one topic but about all things in life, the more unique your views will be and the better and more creative your solutions to problems will be. It is to your advantage to learn all you can about everything you can.

Note that many of these talks come from TED (Technology, Entertainment, Design), an organization devoted to “ideas worth spreading”. You can find their web site at:

http://www.ted.com/

And it has also been posted on the right under “Links”