there are so many cores

Just another WordPress.com site

Fixed the build for good out of box experience

I regularly copy source code tarballs off-site and to several external mass storage drives. In case of disaster, no more than a day’s work will be lost.

Yes… perhaps I should be pushing to GitHub instead of checkpointing tarballs. That would serve as a revision controlled off-site backup service. One thing though: even GitHub is not completely safe. I have another project hosted there which lost history from a big outage in 2010. Not complaining at all, only love for git and GitHub.

The real risk is development downtime. I do almost all work on a several years old X-series Thinkpad. There should be a backup if that laptop fails.

So I wiped an old Pentium M laptop, installed Ubuntu 10.04 LTS and set up a duplicate development environment on it. This was an excellent exercise. I found the build for Chai hardcoded x86_64 and lib64 in places. Even worse, it relied on having both AMD/ATI and NVIDIA OpenCL SDKs installed to work!

This is all fixed now. The build follows the standard “./configure; make” idiom. It’s also robust and should handle any combination of AMD/ATI and NVIDIA SDKs, always picking the latest release versions from both vendors (yet is very easy to manually change), and 32/64 bit processor architecture. So much nicer.

Even with good software, when an automatic configure/build breaks, I am annoyed. It’s a bad out of box experience. Fail.

I wanted to try Intel’s OpenCL which can auto-vectorize (Chai does too!). My experience is limited to AMD/ATI and NVIDIA. Unfortunately, even my x86_64 Thinkpad is too old with an unsupported CPU.

The Core i7 920 in my GPU compute server is supported. So I’m going to see what happens with Chai using a “shader compiler” designed for a modern (hyper-threading) multi-core CPU. I’ll see what happens tonight.

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: