AFNI Bootcamp: Hardware and Software

My wife and I were pleased to attend the AFNI Bootcamp held in Lincoln, Nebraska a couple of weeks ago, and I'll write more about that elsewhere. For now, I'll just provide some notes on hardware and software for prospective campers.

Hardware

I wanted to run AFNI natively under Linux rather than on a virtual machine (more on that in the software section), so I bought a pair of older machines. Happily, they performed quite well. I purchased two used Lenovo Thinkpad T420 laptops on a popular online auction site for about $225 each. These machines aren't speed demons, but they more than met the challenges presented by a week of AFNI 1. Here are the rough specs for the laptops:

  • Intel Core i5 (~2.5 GHz, 3MB L3, 1333 MHz FSB)
  • 8 GB RAM
  • Intel integrated graphics 3000
  • 160 GB SSD
  • 14.0" display, 1600×900 pixels

Of course, when you're throwing terabytes of neuroimaging data at AFNI, you'll want as much processing power as possible, but these computers were fine for didactic purposes.

Software

I've never had a great experience running Linux through a VM — it works, but it's clunky and doubly so on a laptop. So, when the computers arrived, I installed the recently-released Ubuntu 16.04 LTS distribution. As I'd hoped, Ubuntu worked flawlessly on the Thinkpads, including conveniences such as two-finger scrolling, volume control button functionality, and the patented Thinkpad top-down keyboard light.

Also as expected, installing AFNI presented a few quirks and challenges. The AFNI guide to installing on Linux is generally quite good, but I found a few inconsistencies that I'll note here.

  • libmotif installation: libmotif4 is not in the default package repositories, so you'll need to add to the base set. Here's how to do that from a terminal:
sudo su # Become root user
echo 'deb http://cz.archive.ubuntu.com/ubuntu trusty main universe' >> /etc/apt/sources.list.d/extra.list
apt-get update
exit # Exit root user
sudo apt-get install -y tcsh xfonts-base python-qt4                    \
                        libmotif4 libmotif-dev motif-clients           \
                        gsl-bin netpbm gnome-tweak-tool libjpeg62      \
                        libxp6
  • Library linking: the installation procedure describes symlinking libgsl, but the indicated link doesn't work. Here's the fix:
sudo ln -s /usr/lib/x86_64-linux-gnu/libgsl.so.19 /usr/lib/libgsl.so.0
  • Bootcamp files: the files distributed for the bootcamp lectures are intended to be installed in the user's home directory, but the instructions still describe placing the files in a CD subdirectory. Basically, the following section of the main instructions is outdated:
curl -O https://afni.nimh.nih.gov/pub/dist/edu/data/CD.tgz
tar xvzf CD.tgz
cd CD
tcsh s2.cp.files . ~
cd ..

You can still use the CD subdirectory (I did), but the lecturers will expect things to be installed in the canonical spots. Depending on your comfort with UNIX-like operating systems, you may appreciate the simplicity of simply having everything you need in your home directory.

Otherwise, everything went swimmingly!

1 This may be more of a commentary on the slowing of processor speed gains than on the stunning legacy of these laptops.