Archive for the ‘computers’ Category

On airplane bandwidth and latency

Thursday, July 2nd, 2009

Having recently used Virgin America to transport myself across the country, I was very pleased to have Internet access while I was in the air. This, however, is not the sort of airplane bandwidth and latency that I am going to talk about. Instead, I would like to discuss a comparison between the bandwidth and latency of typical Internet connections with those associated with taking a hard drive on an airplane.

Let’s say we compare a high speed (15Mbit) DSL connection to taking a moderately large hard drive (500GB) on a plane for data rates between San Francisco and Boston (~7 hours):

Bandwidth:
DSL: 15 Mbit/s
Airplane: {{500 GB} / {7 hr}} * {{1 hr} / {60 min}} * {{1 min} / {60 s}} *{{8000 Mb} / {1 GB}} approx 150 Mbit/s

Latency:
DSL: ~100ms
Airplane: >7 hours

For fun, let’s try something a little bigger on both sides: OC-768 vs Boeing 747-400F plane filled with 2TB hard drives.

Bandwidth:
OC-768: 38 Gbit/s
747-400F: {{250,000 lbs} / {7 hr}} * {{2 TB} / {1.7 lbs}} * {{1 hr} / {60 min}} * {{1 min} / {60 s}} *{{8 Tb} / {1 TB}} approx 93 Tbit/s

Latency:
OC-768: <100ms
747-400F: >7 hours

Clearly, hard drives on an airplane will win in a purely bandwidth driven application but airplanes suffer from incredibly high latency. You will have to decide which is best choice based on your particular use scenario.

[PROTOTYPE]

Monday, June 29th, 2009

At the suggestion of my good friend Rodin, I grabbed a copy of the game [PROTOTYPE] (which I am going to refer to as “Prototype” because the brackets and capitalization are annoying to type) for my Xbox 360. Rodin’s suggestion was a very good one and so I am passing it on to all of you; Prototype is awesome, you should go get a copy and start playing it.

Discussing the story behind Prototype won’t really give you a sense of why you should be playing it so, instead, let me start off by saying that it’s a game where you can jump kick helicopters. Let me say that again, you can jump kick helicopters; this includes apaches, and you can destroy them by so doing. Other things you can do include consuming people for their knowledge and powers, shooting spikes through the ground to destroy entire city blocks, or throwing tanks at mutated monsters. All of this massive destruction and awesomeness takes place within the context of being able to run up the sides of buildings so as to jump and glide from one to the next. Your character is truly superhuman in a ridiculous and completely amoral manner; you will consume civilians just to restore a little bit of health.

The controls are tight, if a little complex, the camera is ok, and the gameplay is as cathartic as video games get. I’ve sunk, and enjoyed, enough hours of Prototype to say that it’s worth the $60 that I paid for it. It doesn’t matter what you’re playing these days, you should put it down and go get a copy of Prototype; unless you’re boring, you’ll thank yourself for doing so.

Oubliette (was Abyss)

Wednesday, June 17th, 2009

I recently considered the naming of abyss and decided that the word oubliette made a better name. Oubliette is a much more appropriate description in understanding the theme and purpose of the machine as a replacement for thevoid.

The name change happened a while ago but I’m bringing it up now because oubliette is on my mind. Having just purchased six Western Digital 1.5TB drives and another SATA controller, it is finally time to obsolete the last remnants of thevoid. This actually stirs some amount of sentimentality in me but, even though the hardware and operating system are no longer that of thevoid, oubliette will carry the purpose and data forward. It is almost as though oubliette is my ghola thevoid.

For those with technical interest, the drives will be arranged in an mdadm RAID6 array with luks dm-crypt. This should provide me with 6TB, secure storage, and two drives worth of failsafe.

Theme caught up for Wordpress 2.7

Tuesday, May 26th, 2009

Took me a bit of doing but I’ve updated my old theme to work with the latest version of Wordpress. Most of the effort and time was taken up because I decided to do it in as much the, so to speak, right way as possible.

Other than changing two lines of functions.php, everything is accomplished using CSS.

If you want it, you can grab my theme.

Updates and hopefully a return

Thursday, May 7th, 2009

I have finally gotten around to updating my blog to the latest version of Wordpress (I used to be horribly behind). As you may have noticed, I am back at the default theme; I will likely do something about this eventually; you may have to bear with me until then, if you haven’t already left due to my extended silence.

Speaking of that whole silence thing; I’m hoping to return to posting more often than I may have in the past (not that I haven’t said that before). For right now, I’m focusing on being in flux and getting things back to where they were; with luck it’ll just involve writing some new css to go with the default theme. To get those square boxes, borders and the like back; perhaps fit to width as well.

Anyway, just wanted to break silence and let you guys know that that’s my intent for future times.

Welcome to the Infinity Maze

Sunday, December 28th, 2008

Dear Intarwebs,

I feel that it behooves me to bring the existence of the Infinity Maze to your attention. Infinity Maze is the webcomic of my brother, Dave. As might not be surprising for the work of one of my kin, the comic is rather bizarre. The art is somewhat crude but the writing is usually pretty top notch, in my opinion. I may be biased by the humor matching my sense thereof but, that said, I do highly recommend the comic to you, my good Intarwebs.

–gwax

Abyss

Monday, August 18th, 2008

I have finally decided, after 7 years of faithful service, that thevoid is due for decommissioning as my primary desktop. I love thevoid, she’s a great machine but at a 1.8GHz single core, 1GB of RAM, no USB2, no SATA, no PCI-E, no PCI-X and fans that are starting to make squealing/grinding noises, she’s fallen a little far behind the technology curve. My general view on desktops is, and for a long time has been, to get a core setup with the most expandability possible and then incrementally upgrade for as long as possible; following that principle, I am replacing thevoid with abyss.

Abyss (current specs)

  • Lian-Li PC-A77B case
  • Tyan Tempest i5400PW (S5397) motherboard
  • 2x Intel Xeon E5420 2.5GHz quad core CPUs
  • 4x Kingston 1GB 667MHz FB-DIMM RAM
  • 2x Western Digital 500GB SATA HD
  • Lite-On SATA 20X DVD±R

Abyss (planned upgrades) (as funds are available)

  • 4x Kingston 1GB 667MHz FB-DIMM RAM
  • Some medium-to-high-end nVIDIA video card
  • some medium-end multi-channel sound card
  • Highpoint RocketRAID2240 16-channel SATA controller
  • 3x Icy Dock 5-bay SATA backplane
  • 15x 750GB HD

The hardware in abyss has been specifically chosen to have support for Intel VT-x and VT-d virtualization technology so as to allow for as versatile a machine as possible. Abyss is already running Xen with Gentoo Linux as the primary, dom0, operating system and Windows XP as a secondary, domU, operating system. My hope, after adding a video and sound card, is to install another Gentoo Linux and Windows XP operating system, as well as a Windows Vista operating system. Ultimately, the current Gentoo and Windows operating systems will always run in the background, primarily acting as headless servers for underlying services, and for day to day usage I will be able to switch between Gentoo, XP and Vista domains based on my needs. In essence, I will have a dual-booting system of virtual hosts with direct access to my video and audio hardware.

Hopefully abyss, with some incremental upgrades, will serve my computation needs for the next five to ten years.

On growing mdadm RAID5

Wednesday, May 28th, 2008

There is a right way and there are wrong ways to add drives to a RAID5 array with mdadm. Annoyingly, I chose one of the wrong ways last week when I went to increase the hard drive space in thevoid. Thankfully, my mistake has proven more bothersome and time consuming than harmful.

Starting out last week, thevoid had 4x 500GB drives in an mdadm RAID5 configuration: /dev/hde1, /dev/hdg1, /dev/sda1, /dev/sdb1. This had me sitting on 1.5TB of space with one drive worth of failability, which was proving insufficient. In order to resolve my space issues, I ordered 3x 500GB drives and proceeded to install them when the arrived: /dev/hdb, /dev/hdc, /dev/hdd.

In my haste to have more space, I proceeded to add them to the array and grow it:

mdadm --manage /dev/md1 --add /dev/hdb
mdadm --manage /dev/md1 --add /dev/hdc
mdadm --manage /dev/md1 --add /dev/hdd
mdadm --grow /dev/md1 --raid-devices=7

This process then got to work and took about 3-4 days to complete. I assume the time was on account of most of the drives being IDE drives, many sharing channels and there being an awful lot of space. Once the growing process was complete, I merely needed to resize the ext3 partition on the array:

resize2fs /dev/md1

This then took an hour or so and I was sitting on 3TB of total space. The only part of the process during which my drive was inaccessible was when I had to turn off the computer to physically install my IDE drives.

Everything is perfect now, right? Wrong. Guess who forgot that you should partition drives before using them? That’s right, me. I really wanted to put a linux raid autodetect partition on each of the drives before adding them to the array. Not that it really does much harm to add the drives straight to the array but it’s poor form and it might pose problems that I am not aware of in the future so, clearly, it’s a thing that should be fixed. Thankfully, being RAID5, my array is able to lose drives and still be fine, thus allowing the solution of failing, removing, partitioning and adding each of the new drives back into the array:

mdadm --manage /dev/md1 --fail /dev/hdb
mdadm --manage /dev/md1 --remove /dev/hdb

partion /dev/hdb and then:

mdadm --manage /dev/md1 --add /dev/hdb1

now wait until the array has rebuilt itself:

cat /proc/mdstat

and repeat for the other drives. Overall, it’s not hard but it’s annoying and it does take about 1/2 to 2/3 of a day per drive to fix. Thankfully, though, now the endeavor is done and my array works correctly with no lost data and minimal down time. Hooray for software RAID and having 3TB in a single place.

Oh, and you don’t want to forget to update /etc/mdadm.conf after every step of the process of you could have some potential problems.

Ubuntu is the paint-by-numbers of Linux

Friday, May 16th, 2008

I was talking with my brother, who is not a computer geek, and discussing variations on Linux when he came up with an amazing analogy that was so brilliant I had to share it with the rest of you. He said, “I guess it would be more like a blank piece of paper versus a color by numbers thing”. It’s exactly spot on, Ubuntu is the paint-by-numbers of Linux; it’s really easy to do the stuff it’s aimed at doing but going outside the lines doesn’t look as good as if you’d used a more general option. Of course, while you Ubuntu users are all kindergarteners, I’m busy ricing out my machines with Gentoo; I don’t actually know which is a worse thing to be analogized to.

The video game Gods are pleased

Wednesday, May 7th, 2008

The video game Gods demand much in the forms of financial penance and prayer time but they do much to reward their supplicants. I have just now obtained for myself a copy of GTA4 (I know that I’m slow but I’ve been traveling for the past week). While I was at the merchant of the damned, GameStop, obtaining the aforementioned game, I happened to notice a sign proclaiming the impending arrival of Ninja Gaiden II (NG2), sequel to what I consider the finest video game yet produced. Seriously, forget Super Mario World, Super Metroid, Sonic the Hedgehog, Myst, Quake, everything; Ninja Gaiden (Xbox remake) was where it’s at and now it’s sequel time. Not only is Ninja Gaiden II coming, but Soul Calibur 4 (SC4), next in the finest fighting game series of all time, comes out in two months. It certainly is a summer of video game sequels but, man oh man, is it going to be a good summer of sequels.

Between GTA4, NG2 and SC4, I will, unquestionably, be devoting rather a fair amount of time to video games over the next few months. It certainly won’t help much that my enjoyment and commitment to Rock Band has not abated. I guess that’s really a matter of perspective; I am, after all, committing my time to video games because they do provide me with a great deal of enjoyment.

Thank you video game Gods for this bounty, which you are bestowing upon me over the next few months.

Fishes and Internet Friends

Thursday, May 1st, 2008

Back in late 2002, there was a great Internet phenomenon known to many as the Star Wars kid. As some of you may recall, I was one of the first people on the Internet to find the Star Wars kid video; I decided to host the video on my web server, ozone-beast at that time–God rest that wonderful ozone spewing hulk of a computronium–and sent an e-mail out to random-hall-talk announcing its presences. Within a few days, ozone beast was being deluged with hits from all over the world. I also happened to receive an IM correspondence from a girl in Bakersfield, CA. Being a sophomore at the time and having way too much free time, I struck up a correspondence. McKenzie and I have since maintained an Internet friendship without ever having met in person.

After moving to the Bay Area, I had been planning to drive down California a bunch, meet Kenzie, visit people in LA and do the whole SoCal thing but then, as you may recall, I ceased to have a car. This week, however, Kenzie was in Monterey with her boyfriend, who had business; Monterey being reasonably close by California standards, I grabbed a zipcar, ditched out of work early and drove down to say hi. We went to the Monterey Aquarium, which is fantastic by the way, hung out for a few hours and had a generally good time.

It’s a rather interesting thing to meet in person someone that you’ve gotten to know through other means. The meeting and the hang out were surprisingly not awkward, though I’ve always felt that the best way to avoid awkwardness is to just not act awkward. Sure it was a lot of driving but it was very nice driving, the Monterey Aquarium really is great and it is really great to finally meet someone that you’ve known for over five years.

Keyboards, comfort and the akimbo solution

Friday, April 4th, 2008

I’ve always been rather fond of trying new things that twist the way I think about and interact with things and computers are no exception. Ever since I used The Typing of the Dead to learn how to touch type, I have taken an interest in keyboard layouts and designs and the more time I spend typing in my life, the more I come to understand the effects of typing comfort compounded over time. Prior to 2001, I was a dedicated 2-4 finger typist, capable of achieving over 30-40wpm using what amounted to “hunt and peck” without the hunting; it was essentially a successive offsetting solution using memorized relative positions to guide my hands. Then, in 2001, I built my beloved thevoid and got a Microsoft Natural Keyboard Pro because it looked cool, had a USB hub and some neat programmable function buttons. The Natural keyboard has the fairly standard split keyboard layout, which completely broke my relative position scheme–the gap in the middle prevented cross-overs, which were integral to the scheme. At that point I slowly began learning how to touch type but later in the year, I discovered The Typing of the Dead and that changed everything; in addition to making speed typing a game, it also included a very useful typing tutor.

Having learned proper touch typing, I had divorced myself from cross-overs and was able to enjoy the comfort provided by a split keyboard. Additionally, at this time, I was living in a dormitory with my good friend, Riad, who swears by Kinesis ergonomic keyboards, which I must agree are really comfortable. The Kinesis keyboard is probably the most comfortable and ergonomic keyboard solution that I had encountered prior to the jerry-rigged solution that I’ve just devised (see below). The Kinesis keyboards, however, have the huge disadvantage of being really expensive.

From there, my keyboard experiments languished for a number of years until one day, when I was bored, I put lettered stickers on thevoid’s keyboard keys and switched the layout to a Dvorak layout. Learning Dvorak was not entirely painless and I eventually gave it up because the positions of the ‘[/{' and ']/}’ keys made C/C++ programming inconvenient–this later turned out to be because I didn’t full learn to touch-type Dvorak. I have switched to Dvorak and back probably half a dozen times since, getting better each time; sometimes using Dvorak and QWERTY concurrently on different machines. At this point, I can switch between Dvorak and QWERTY with ease and I can say, without reservation, that Dvorak is much easier, faster and more comfortable than QWERTY. At present, I am using QWERTY because some of my keyboards are not suited to Dvorak layouts and it makes my new configuration more practical.

Recently, I’ve started to notice more so than before, how very uncomfortable it is to touch-type on an unsplit keyboard; the arm and wrist contortion is terrible. I was thinking that I might do well to ask the IT department at work if I could get a split keyboard but I’m much more the type to improvise an elaborate solution than walk 100 feet and ask someone for something. I asked myself what the ideal layout would be and decided that a split keyboard solves the wrist contortion but it still requires the arms to be uncomfortably tight in to the body. The solution: two keyboards, one 45° left, one 45° right, mouse in the center; each hand uses half a keyboard and it turns out to be really comfortable. If I want to adjust how one hand rests, I only need to adjust that one keyboard. Sure it takes a lot of desk space but I have that in spades right now and it really complements my multi-monitor setup. This is my akimbo solution and I really like it; if you know how to touch-type, have the desk space and a spare keyboard, I highly recommend giving it a try. Having just checked with a small online test, I am averaging about 60wpm and 96% accuracy with my keyboards akimbo layout.

Also, just so we’re clear, I do know that akimbo is etymologically incorrect but it is a linguistic mutation that I approve of.

Massive Stock Datasets

Monday, March 31st, 2008

When data-mining, the first step is to obtain the data that you would like to mine. I have decided that I would like to try my hand at playing the stock market so it became necessary for me to obtain historical stock market data. To that end, I have devised a method to obtain end of day results for every listing on NYSE, AMEX and NASDAQ since their inception. The data is in the process of being assembled and I expect it to be complete within a few days. Current estimates expect the data to take up approximately 2GB, making it the largest single dataset that I have ever played with. Just having this much data makes my data hoarding senses tingle.

I’ll probably spend a little bit of time putting the data into an easy to understand and use format and then I’ll start looking for patterns. I’m hoping to throw my modeling background and experience at the stock market to see if I can’t beat the system. If I can beat the stock market and make bajillions of dollars (or euro if the dollar collapses) that would be pretty sweet but if I don’t, at the very least, I expect to have fun playing with lots and lots of numbers.

As a second approach, since it turns out to be rather difficult to get this sort of data in the first place, I’m half considering the idea of cleaning it up a bit and then reselling it myself.

Screen’s Clever Error Messages

Wednesday, March 26th, 2008

I am–and have for quite a while been–a huge proponent of GNU Screen for the many-fold improvements that it provides to terminal and SSH sessions. One of the things about screen is that it runs in two processes, one is a headless process that redirects terminal output of applications to it (server process) and the other is a process which connects to the server process allowing interaction with and the viewing of output from applications in the server process (client process). The advantage to this two process approach is that you can run screen from an SSH connection, disconnect the client process, leave and then later reconnect a new client process to the same server process you started earlier, thus allowing session persistence. It’s a wonderful application with many other features that make my life easier.

In addition to being fantastically useful, screen appears to have been written by someone with a sense of humor as it seems to contain rather a few Easter Eggs. One particular Easter Egg that I recently came across is that if the server process dies while the client process is still connected, you meet the error message:

Suddenly the Dungeon collapses!! – You die…

It’s a cryptic and ominous error message that might put you off a little if you don’t know what’s going on. A quick googling will show that some have accidentally misinterpreted the meaning; thankfully I could guess what it was and check google for confirmation.

Wanted: Bandmates for Rock Band

Sunday, March 23rd, 2008

Yesterday, I wandered over to Best Buy and finally picked up a copy of Rock Band for my Xbox 360. As I have already establish, Rock Band is awesome, so I’m mighty psyched to have a copy at the place now. I wasn’t properly set up for it earlier but now that we’ve got a projector and a proper sound system, we have an amazing Rock Band setup. Rock Band, of course, is far better as a multiplayer experience than a one person game, so anytime that any of you folks want to stop by and jam with me, you’re more than welcome to do so.

My fourth birthday was in Rochester, NY

Friday, January 4th, 2008

It’s the 4th of January in a new year and, if you’ve followed me this far, you might recall that this is the anniversary of gwax’s rumblings’ fp (first post). Although it’s been a slow year and I’ve gotten pretty lazy about updating regularly, I’ve been doing this for four years and I’m not planning to stop just yet. Speaking of anniversaries, you might recall the sychronicity of my blog sharing a birthday with Uncyclopedia, which just turned three.

Halo 3: Worth the pain

Saturday, September 29th, 2007

Halo 3 came out for the Xbox 360 on Tuesday and it’s awesome. On account of Halo 3, I’ve been going to sleep at about 2am for the past three nights, which wouldn’t be so bad if I didn’t also have to wake up for work at about 6am. That said, it’s totally worth the unpleasantness of not sleeping enough. Sure, it’s more Halo and not altogether too revolutionary but, it IS more Halo, it is prettier Halo with cooler weapons and vehicles. Basically, Halo was already King of console FPSes and Halo 3 is just coming in and saying, “hey, I’m taking over for my dad so sit down because you know your place!”