Peter Klausler

Not-so-geeky stuff

Yes, I am now married to my melbeautiful sweetheart. Congratulate me!

Geeky Stuff

SV2 node module I am Senior Principal Engineer in the operating systems software group of Cray Inc. , where I helped design the new instruction set architecture of the Cray X1 supercomputer system.  (This is the machine that we called the Cray SV2 until just before shipping it.)  After the architecture was designed, I wrote its simulator, which uses automatic binary translation to MIPS, x86, or SPARC v9 to provide very high speed simulation.  Then  I wrote the ANSI C compiler, assembler, and linker that we use to build the systems software, as well as a little multiprocessor virtual memory UNIX kernel that we used for simulating user programs until the production UNICOS/mp kernel was ready.  Now I'm working on our next machine, writing its simulator and porting Linux.

News flashes: I won the 2005 International Obfuscated C Code Contest in the Abuse of the Rules category! And lots of Cray X1 documentation is still on-line!

A vector instruction that I invented for the SV2 has been patented.

Seymour and the Cray-4
Previously, I've worked on the UNICOS/mk microkernel for the Cray T3E system, the compilers for the Cray-3 and the Cray-2 systems, and older systems software for the Cray-1 and its descendents.  I'm just old enough to have played with the old CDC machines, too.



Cray-1 serial 1
Here is my resume.Cray X1

I have written a glossary of Cray vectorization terms.  It needs updating, but you may still find it interesting.

I use ANSI C almost exclusively now for programming.  It's a huge advance over many of its successors.  I like ML, too.

Enjoy subtle programming tricks?  I've started to write some of them down as Tales of Bit-Twisting Terror (1, 2).  Let me know what you think!
My current personal computers are a Dell Inspiron 8100 laptop and a custom-built Athlon XP 3200 system.  Both are running Gentoo Linux with kernel 2.6.3 and XFree86 4.3.0.  I often use Knuth's TeX typesetting system with the LaTeX macro package and Ghostview. (My old laptop ran Red Hat, and the Dell laptop ran Debian for a couple of years.  But I'm really loving Gentoo; you should check it out if you haven't already.)  Here's a typical screenshot.

I like well-implemented simple tools and I am extremely impressed with the quality of all of this free software.  It's better than anything one can buy, even from convicted monopolies claiming to be innovative.  But I really wish that somebody would write a replacement for GNU's old GCC compiler.  Just imagine how fast Linux would run if compiled with a modern optimizing compiler!  Too bad that the kernel is riddled with nonstandard GCC extensions.

Dvorak diagram I use the Dvorak keyboard layout because it's fast and comfortable.  In fact, I'm now using Dvorak on wireless Apple and Microsoft Bluetooth keyboards, which were kind of a trick to interface with Linux.  (Source code for using Bluetooth keyboards and mice with Linux is linked to that page.)  I really like Apple's Bluetooth keyboard very much.  You must try Dvorak if you spend a lot of time typing.  It takes about a week to get comfortable with it and a couple more to get up to speed.  It's trivial and free to reconfigure X, Macs, or Windows to believe that the keyboard is Dvorak so there's no good reason not to make the switch.  Your fingers will thank you later!
I have written a text editor optimized for Dvorak called aoeui. Take a look if you're tired of fighting with Emacs and the Vi clones.
While I have also once experimented with an evolutionary algorithm to try to discover better keyboard layouts, I was not able to construct anything as good as Dvorak.


Somewhat Less Geeky Stuff

R1150R

I ride a 2002 BMW R1150R motorcycle.  It's a sweet bike.
 
I run marathons with the Calhoun Beach Running Club to keep in shape and for a fun reason to travel.   I've run Grandma's Marathon three times, Twin Cities Marathon twice, and the London Marathon.

Lake Calhoun thumbnail To keep close to running paths, I live in a quiet and pretty neighborhood between lakes Harriet and Calhoun in the great city of Minneapolis in a 1903 house.

I am fascinated by languages.  I speak German fluently, French to some lesser degree, and Italian, which is my favorite.  It's easy and beautiful.  I studied Russian in college but don't remember much of it now.  I am oppressed by being a good speller.

I usually listen to baroque music, especially Handel and Telemann and J.S. Bach.  And I read way too much, primarily because I gave away my television years ago.  Haven't missed it a bit.  (The superb media player for Linux means I can still watch DVDs, though!)

I love to read The Onion and Landover Baptist.


Some Extremely Geeky Stuff

Cray-1 overhead sketch Here's a fun trick: figure out the day of the week for any date in your head.  I have a new algorithm now that I think is easier than my old one.

My cynical view of how so many people seem to think (or not).

I managed to get my Siemens S46 global GSM/TDMA cell phone with AT&T Wireless to work as a modem over an IrDA infrared link.  The big secret clue is to connect to the phone's GPRS stack via PPP with no user name or password, using the magic phone number *99#.