# Archives

This is the complete archive of posts from Kyle Niemeyer’s Personal and Research blog in reverse chronological order.

### Importance of CUDA volatile keyword with shared memory

When coordinating information between threads in a warp via shared memory in CUDA, you might need to use the volatile keyword when declaring the shared memory array, as in volatile __shared__ int array[SIZE].

### Careful with the subtraction assignment operator in C

This might be obvious to someone who majored in computer science (and does make sense if you think about it), but a little care is required when using the subtraction assignment operator (-=) in C and related languages.

### PDF decryption tool

If you’ve ever come across an encrypted/protected pdf (or forgotten a password to one of your own, in my case), it’s a huge pain to try to open the file (impossible, in fact, without the password). Fortunately, some clever people have written an easy-to-use PDF decrypter called GuaPDF (“Guaranteed PDF Decrypter”).

### Combustion article for Ars Technica

This is a couple days old now, but I wrote a combustion-related article for Ars Technica. I haven’t been posting every article I write here (since there are usually one or two a week), but this is the first so far to be specifically related to my research–so I figured it deserved special comment.

### Look at that, you son of a bitch.

You develop an instant global consciousness, a people orientation, an intense dissatisfaction with the state of the world, and a compulsion to do something about it. From out there on the moon, international politics look so petty. You want to grab a politician by the scruff of the neck and drag him a quarter of a million miles out and say, “Look at that, you son of a bitch.”

### Writing for Nobel Intent!

My first contribution to Nobel Intent, the science section of Ars Technica, went up today! I’ll be contributing there about one article a week, primarily covering academic articles (like this one):

### Why sitting all day is bad for you

Lately I’ve been reading multiple articles about how sitting all day (at work, for instance) is bad for your health, so I wanted to link to various articles discussing the issue.

### The West Wing / Mad Men crossover actors

My girlfriend and I are huge Mad Men and The West Wing fans—we own all the seasons of both shows, and just finished watching The West Wing all the way through (which we’ve already done for Mad Men… much shorter). We began to notice a lot of actors/actresses that showed up on both, and decided to make a list! Here’s who we’ve discovered so far, in (mostly) order of appearance:

### GPU programming with CUDA on MacBook Pro

GPU programming has been seeing increased attention recently for research computing applications—check out a recent Ars Technica article talking about this.

### My girlfriend is an award-winning cookie baker!

My girlfriend, Bryony DuPont (PhD candidate in Mechanical Engineering at Carnegie Mellon) just won a holiday cookie recipe contest! Michael Ruhlman is a fairly well-known cooking author (he’s from Cleveland!), and he held the contest through his website.

### gfortran intrinsic function MAXLOC

While writing some new code for my research, I ran into an unexpected result using the MAXLOC intrinsic function with GNU Fortran 1. Well, it wouldn’t be unexpected if I read the online manual entry more carefully, but who does?

1. I know, I know… who still uses Fortran? Well, I do, for one. A ton of legacy code that still works fine (and is actually faster) is written in Fortran, so it’s easier in general to continue to use it. The GNU Compiler Collection makes it easier to combine Fortran and C++, which I’ve begun to do in some cases (genetic algorithms, for one), but the bulk of my work is in Fortran.

### Justification for my book-buying habit...

Reminiscing About the Stacks of Books

### A human being should be able to...

A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.

### Cleveland Heights 10 mile run

Bria and I are training for a half marathon (about 13 miles), and we are going to try a 10 mile run today! We did an 8 mile run in Pittsburgh on Monday that was pretty tough (basically the longest run either of us have done), so we’ll see how this one goes (but I feel good).

### Basic pages up...

Well, after a little work I’ve got some pages up, including a list of publications (pretty short right now…) and my CV (is that a good way to post it?).

### Hello world!

Hello everyone—just getting the website set up, so it might take a while for more to appear here.