Warning: purely subjective rambling follows. Not trying to start a flame war. (But hey, I have half an hour to kill.)
A little over a month ago, my Lenovo Thinkpad netbook suffered yet another hardware failure and I bought a Macbook Air, more or less in disgust. Most of my problems with recent PCs had been with the chassis' physical build quality, and if nothing else, Apple seems to do a decent job on that front. I had never used Mac OS before for any length of time, but I took the risk on the assumption that I'd treat the Mac like I did my Windows PCs: mostly work in Linux VMs.
I preface all this by saying that I've had no complaints whatsoever with the physical Macbook: the chassis is rock-solid, the design is as shiny as everyone said, and I adjusted to its physical layout almost instantly. Cudos to Apple there.
As for the OS, I have mixed impressions. In my personal experience...
Read the rest of this post »
This past weekend was the season opener for the Twin City Derby Girls, the local roller derby league in Champaign, and it was a ridiculous amount of fun. It was also probably the last regular roller derby bout I'll get to see in Champaign (since we're moving soon), so it was a good thing that this was the most fun I've had at a Derby event so far. Always nice to go out on a high note.
Read the rest of this post »
Or perhaps just with Posterous.
Here's a hint: when your claim to fame is the ability to embed just about any medium in a post, you shouldn't take 15 minutes (and counting!) to publish a post with a single photo in it, and a link to YouTube. This is bargain-basement stuff, folks.
I really need to find time to play with Octopress.
I was recently interviewed by Jon Brodkin for an article on Ars Technica called "Amazon’s HPC cloud: supercomputing for the 99%"; I suppose I was the dissenting voice. :-) It's actually a pretty good article talking about the current state of Amazon's cloud for doing high-performance computing, and devotes a decent amount of space to the shortcomings in the interconnect.
At one point the article summarizes the results of some benchmarks I did to compare 10-gigabit Ethernet on EC2's cluster compute instances to an R Systems cluster with QDR Infiniband.
Tests run by R Systems using an MPI benchmark from Ohio State showed latencies in the passing of small messages (up to 4KB) to be between 1.4 and 6 microseconds in an InfiniBand-based cluster. Comparatively, Amazon’s 10 Gigabit Ethernet connections produced latencies of 100 to 111 microseconds. For passing of larger messages (4MB), bandwidth hit 3,031 megabytes per second with InfiniBand, and only 484 megabytes per second on Amazon.
I used the micro-benchmarks from the Mvapich team. In case it's interesting to anyone, the full results can be found below.
Read the rest of this post »
A few years back, when I was helping run the tiny fencing club at Michigan Tech, I wrote up a short primer on fencing tournaments aimed at the beginning fencer. I lost track of it for a while, but ran across it on an old backup disk recently, and it still looks decently useful for attending your first fencing tournament. I've attached the document to this post; consider it to be under the Creative Commons BY-SA license.
If you're a beginning fencer, this should give you a decent idea of what a tournament will look like, but check in with your coach! Your club may do things differently. If you're a coach, please feel free to steal anything you like from this document, and I'd love to know if you find it useful.
Read the rest of this post »
As previously mentioned, I've been spending some time lately on Askolo, a directed Q&A website. My first question from another user was "What do you think of the AWS HPC clusters?", and I wrote what I thought was a decently-thought-out opinion in response. I'm pasting it here (slightly modified) so it gets a different audience, and to keep my own copy for later comparison as my opinions evolve.
Q: What do you think of the AWS HPC clusters?
A: Disclaimer on this one: I'm an engineer at R Systems, which provides bare-metal HPC clusters as a service, in competition with Amazon's HPC offering. Also, this got a little long. :)
That said, I think the AWS HPC clusters are really interesting. They're definitely useful for "bursting" loads and certain classes of problems, though they still have a few problems to solve before they can replace a "traditional" cluster. But for a lot of wokloads, it may be exactly what you want.For HPC, Amazon provides exactly the same thing it provides for everyone else: a big pool of available servers which can be spun up and down at will, with a potentially huge upper limit. You may have seen the article last year about the 30,000 or so core cluster which Cycle Computing spun up on EC2: it made the Top 500 list of supercomputers, and demonstrated that it was possible to run a huge compute resource "in the cloud". There are some drawbacks though. Cycle Computing ran an embarrassingly parallel problem, but a lot of research models are very tightly coupled and do a lot of message passing between processes. (For example, big CFD models and mechanical modeling problems.) Most big HPC clusters currently use Infiniband as their interconnect, so node-to-node the network provides up to 54 Gb/s bandwidth and 1 us latency (process-to-process). The latency is especially important: I think most CFD apps I've worked with lately are latency-bound. Right now the best network performance you can get on EC2 is 10Gb ethernet, which doesn't quite provide the same punch. The disadvantage to IB is that its network model is radically different, to the point where the IP Protocol feels a bit bolted-on and can't get all the network performance. Most people program their apps with specialized message-passing libraries (ie MPI) which can take advantage of the IB network directly.EC2 also doesn't get the same I/O performance you can get on bare metal. This one's a problem for lots of people, including big web sites, and it matters in HPC too. A lot of HPC installations have big parallel filesystems that stripe over many disks, like Lustre. It'd be interesting to see what you could do running Lustre on EC2, but I think using EBS as the backing strorage would make it somewhat painful. Much nicer to use big I/O nodes attached to Infiniband.But you notice how much specialized hardware we're talking about here? Lots of big I/O nodes, a specialized network where even IP is a second-class citizen... it all makes sense if you do HPC all the time, but if you only need to run for a few months out of the year it can seem like overkill. Especially if you are in fact running embarrassingly parallel models (and really, a whole lot of them are).I saw a talk at Supercomputing in November where someone compared their own internal cluster to 3-year reserved instances on Amazon, and determined that Amazon would make sense if their internal cluster had yearly utilization of less than about 70%. That's actually pretty impressive! Most "big HPC" out there has utilization of 90+% and can you get us some more please ;-) , but there are a lot of companies with underused 32-node clusters out there which might make more sense in the cloud.On a site with so many people running startups I hope I can be forgiven a tiny bit of self-promotion: at R Systems we provide clusters as a service with all the bells and whistles and Infiniband included, and help you use and configure them as well. :-) But that doesn't mean I think Amazon sucks: I've seen their service do amazing things, especially for highly-variable workplace or embarrassingly parallel problems. What all this does mean that for HPC, you need to think at least a bit about the hardware, which I guess makes even Amazon a bit less cloudy. You need to think about what kind of inter-node communication you need, ans how fast your IO needs to be. If you use GPUs, you need to know what type ans think about PCI performance. And you can't just throw more cores at the problem, because communication bottlenecks will kill you.So HPC on AWS is very cool, as is HPC on R Systems or other external providers. But profile your application and think about hardware before you spin up 1000 nodes. :-)
A week ago today, my Thinkpad's keyboard failed for the third time in a year.
This wasn't entirely unexpected (being, after all, the third failure), but it was still very disappointing. Three times in a year, the laptop's keyboard failed in the same manner: a number of keys simply stopped working, in a relatively random fashion. Unfortunately these keys were rather important ones, like "a", or "t", or the spacebar. Not the kind of keys you can do without.
The previous two times I was under warranty, called Lenovo, and got the keyboard replaced. This time, I decided enough was enough and simply replaced the laptop with a different model. This time around, I purchased an 11" Apple Macbook Air.
People who know me well have found this very amusing. In general, I'm not very much of an Apple fan: the company has continuously demonstrated a disregard for technology standards, I find the App Store paradigm scary (as it has bad implications for general-purpose computing), and they have generally done a poor job of participating in an open-source community which they depend on for much of their software. So why would I buy a Macbook?
- The industrial design is fantastic (compared to most PC laptops)
- Some of the hardware is more reliable (mostly the chassis, as internal components are roughly identical)
- It interoperates well with the rest of the home network, which includes an Airport/Time Machine, an iMac, and an iPad (per Leigh)
- More OS flexibility: instead of just Linux and Windows, I get to choose OS X as well. (without Hackintosh silliness.)
The last one is really what decided me, with a healthy consideration of hardware reliabilty included. In recent history all of my laptops have had a native Windows install, but also included a Linux virtual machine in which I spent the majority of my time. On the Macbook, I increase my flexibility a little: now I have OS X as a host operating system, and both Windows and Linux are virtualized. And while I'm still spending plenty of time in both Windows and Linux, OS X is actually beginning to seem pretty decent.
Five days in, the experience has been pretty good overall, but not perfect. A brief list of pros and cons...
Pros:
- The hardware really is pretty nice. I like the keyboard, it's ridiculously thin and light, and it's very well-designed for usability.
- Performance is similarly good. 4 GB RAM + a 128 GB SSD is quite fast, if not quite as spacious as I like.
- I've found the default tools in OS X to be pretty usable, and it's nice to have a UNIX operating system as my base OS. Most (but not all) of the open-source utilities I expect are all present.
- The Terminal app is friendly enough to allocate itself its own virtual desktop (or "Space", or whatever) when in full-screen mode. Nice feature.
- Integration with the Apple-centric home network. Having the Time Machine as a convenient and automated backup system is rather nice, though I still might have to invest in a decent RAID for peace-of-mind.
- It serves as a very effective host for pretty much any OS I've chosen to test with it. Linux and Windows both work pretty well, though my testing is incomplete. (So far, I spend most of my time in Linux.)
Cons:
- I really miss my Thinkpad's TrackPoint. The Macbook has the best touchpad I've used, but I loved the TrackPoint.
- I'm having a hard time getting used to various keyboard shortcut variations, but that's a minor complaint.
- I like the SSD's performance, but I'm having trouble getting used to the space constaints. I'm a lot more reluctant to build random VMs for testing than I was previously, and that bothers me. Invest in an external VM store?
- The sysadmin in me is bothered by the fact that I can't open up the case... but I never really bothered with the Thinkpad either, did I?
- I miss having a real package manager (vs Linux). I don't care what you tell me, homebrew is not an acceptable alternative. It's nowhere near as extensive as a Linux package manager, less stable, and far too focused on the webdev community (vs my native land of scientists and HPC).
- Related to the first part: Apple really seems to dislike the GPLv3 license many recent GNU utlities are released under, and so it doesn't duplicate Linux utulities very well. (conventional gcc is missing, bash is old, etc.)
- OS X is not as stable as I expected... in particular, I'm seeing the whole system refuse to restore if I sleep too long with VMs running. That is rather disappointing.
So on the whole, a pretty decent laptop. My anti-Mac prejudice, while not entirely unfounded, at least failed to recognize the high build quality of the physical hardware and the fact that it's just as usable in Linux as the Thinkpad was. (To recognize the latter fact, I purchased a minor customization...)
The major question for the future will be which OS I spend the majority of my time in, long-term. I really am impressed with OS X as a UNIX with good hardware support, but the lack of a decent package manager is really frustrating much of the time. Installing scipy should not be that difficult, dammit! So most of my software development and experimentation has still been under Linux, so far.
I do love the hardware, though. I have totally failed my saving throw against shiny this round...
I generally think of myself as being pretty well-read in terms of science fiction. Not as well as some: I've met people at cons with an encyclopedic knowledge of the field, and who seem to have read every novel by every one-hit wonder who ever published. But I like to think I at least know the classics, even the recent ones. So imagine my surprise when I picked up A Talent For War a couple weeks ago, having never read anything before by Jack McDevitt.
In a field where the "science" in science fiction is usually physics, or perhaps biology, McDevitt has staked a powerful claim to the field of archaeology. In A Talent For War, he introduces the character of Alex Benedict, an antiques dealer in a starfaring civilization thousands of years in our future. Benedict claims that his primary interest in the past is his ability to sell it: he collects artifacts and sells them, connects buyers and sellers of ancient cups and computers, and is obviously very fond of money. But Benedict doesn't come off as mercenary as he claims, and while he'll happily sell the objects he finds to the highest bidder, he displays a tenacious need to discover the truth in a mystery hundreds of years old.
A Talent For War follows Benedict in his quest for the truth of a war story central to his future's culture, and is generally a fun romp through a well-imagined future universe. Benedict's world isn't as tightly constructed as in a work by Niven or Asimov, but it hangs together very well and displays a more believable view of humanity than you see in something like Foundation. The only thing that threw me off was how contemporary things seemed: how many physical books there were lying around, the coexistence of everyday technology with stardrives and instant communications, and how culturally similar the future was. McDevitt obviously is not a subscriber to the concept of the Singularity or a coming apocalypse, but that's ok: it's boring when everyone expects dystopia or transhumanism, and he captures the feel of a Clarke or an Asimov story very well.
The following Benedict books (which I devoured in the course of about a week, all five of them) don't use Alex himself as the point-of-view character, but rather his assistant Chase. Chase is actually much more fun: she brings a non-archaeological perspective to these hunts through the mysteries fo the future-past, being a star pilot, and gives us a more complete view of the culture of this world. She does occasionally serve as an audience for Benedict's brilliant insights, but she more often sees him being ridiculous, vain, or downright foolish, and has the occasional crowning moment of aweomse herself.
All of the novels do display the thing I enjoy most about McDevitt's work, however: a view of history as a mystery to be solved, and which has consequences for the world we live in today. The idea that archaeology matters, and can be exciting, and can change the way we think about things. These are all mystery novels, at the bottom, but for the most part they don't portray action and adventure: rather, they portray careful research, and conversations with people (or their computer-generated avatars) who lived through the events being investigated. The action, when it arrives, is usually the result of the characters' breakthroughs in their earlier research, and not random chance.
The only criticism I have of the Alex Benedict series is that McDevitt seems to want to raise the stakes in every subsequent book. This is pretty understandable in a series, and it's always nice to top your last novel... but when the first story revolutionizes the historical view of the most important war of the future, the next reveals the truth behind one of the most important scientific discoveries in history, and the third looks into the history of one of the first interstellar colonies... There are limits to how high you can go, and I feel like McDevitt is pushing it. Give us a fun historical mystery, and the world doesn't have to shake with the consequences.
Having exhausted the limits of the Alex Benedict series (so far: the most recent novel, Firebird, was published in November 2011), I circled back to some of McDevitt's earlier work. Eternity Road was a fun stand-alone, though not quite as good as the Benedict series: the concept was great, but it felt a little paint-by-numbers at the end. And I've just started The Engines of God, first in another series following another star pilot by the name of Priscilla Hutchins, in a different and somewhat nearer-future world than Alex and Chase's.
In any case, I'm still having fun, and I can recommend Jack McDevitt's work without reservation. If you loved Asimov, Clarke, or Niven at all, I can pretty much guarantee you'll enjoy McDevitt. And even if you didn't there is so much fun in these series that I think it'll be worth your time. Just because there are few explosions and gunfights doesn't mean these stories aren't exciting: McDevitt's work will make the past--and the future--come alive.
I've been playing a bit this weekend with Askolo: a new variation on the question-answer site, where you can post anonymous questions to be answered by specific people rather than by the crowd at large. To quote their About page,
Askolo wants to organize Q&A around thought leaders and experts. We're creating a space where people can find not just one answer, but rather a site where you can share a diversity of opinions.
For the most part the site seems to be full of Hacker News members at the moment, which is unsurprising: the startup is YC-funded, and they put up a pretty prominent launch post on Friday.
I'm still deciding what I think of "Q&A around thought leaders", but what the hell: I signed up and answered what looks like a standard new-user question: "What can people ask you about?". My answer was simply,
High performance and scientific computing are most of what I'm up to right now. I also know a bit about fencing, roller derby (via my fiancee), materials science and physics.
To my surprise, I actually got a bunch of questions on my page over the next day or so, all HPC-related so far. To take a look, check out my user page. (All Q&As are on a single user-page right now.) The questions so far are
- What do you think of the AWS HPC clusters?
- Does "bare-metal" basically mean a server without hypervisor?
- How do you handle security? A lot of HPC tasks outside academia involve sensitive data or algorithms.
- What do you think about reconfigurable logic (FPGAs) in HPC cluster environments?
- What do you think of the next-generation NVIDIA GPUs for HPC?
- Does Infiniband have a future?
If you read my answers, the main thing you'll probably learn is that I'm a wordy bastard. :-) But I hope that I've said something useful there.
A lot of the people I notice on HN have also ended up there, and answered at least a few questions which I thought were interesting. I'll be more interested in the site if it manages to expand its user base, especially outside the Internet-startups crowd. But I've already learned a few things I didn't know, so I'll hang around there for at least a bit.
So to be self-interested: Go! Sign up! Ask and answer questions, and make the Internet a slightly more interesting place.
Well this is interesting news:
Big news: Posterous has been acquired by Twitter!
The opportunities in front of Twitter are exciting, and we couldn’t be happier about bringing our team’s expertise to a product that reaches hundreds of millions of users around the globe. Plus, the people at Twitter are genuinely nice folks who share our vision for making sharing simpler.
Posterous Spaces will remain up and running without disruption. We’ll give users ample notice if we make any changes to the service. For users who would like to back up their content or move to another service, we’ll share clear instructions for doing so in the coming weeks.
Typically this kind of acquisition implies that the service is not long for this world. Can anyone recommend a good, simple blog-hosting platform that I could migrate to? Note that I'm not a big fan on Tumblr and its downtime and its funky commenting mechanisms. :P
|