blender + amazon EC2

I’m wondering if anyone has successful experience rendering through EC2? If so, could you share a bit about how you set things up and some general ideas on cost/performance? I’d love to see someone that could say “On my machine at home with X processor and Y GPU it took Z minutes/hours/days. But on EC2 with N setup it took Z minutes/hours/day.” Something like that.

I’ve read everything I could find on this (which is not much specifically for Blender) and I still don’t have a good feel for how to set it up nor what kind of price/performance I could expect.

Thanks!

I haven’t done this specifically with Cycles, but generally it works like this:

  1. You pick an instance type (e.g. super-quadruple bigmac CPU doubleplusgood) and an OS image (e.g. some linux) and start that machine, for example through the Amazon EC2 management website.

  2. You SSH into the machine and perform all the necessary installations

  3. You make all the necessary data available to blender, e.g. through just copying it to the machine through ftp or so. Data transfers cost money unless they’re within Amazons network, so you may want to copy the data to one machine first and then spread to the others from there.

  4. You start rendering

  5. You get the data back out again (again, this will cost money)

Unless you automate all these steps (i.e. you’re a programmer using the EC2 Python API or so) this is going to be too tedious for anything but large jobs.
As for performance: The “8-core” cpus they have aren’t very fast. I don’t remember exactly, but it must’ve been around what a sixcore Phenom-II at 3ghz would provide. I think on the benchmarks thread someone made a test with the Teslas in the GPU instance type, two of them where on par with a single GTX580.
You can save a substantial amount of money (especially for the GPU instance types) by using spot instances, these are basically bids on how much you are ready to spend for an instance. If your bid is higher than the average bid, your instance gets started, and if it is lower, it gets killed. Certainly interesting for unbiased rendering (where you can continously stream out samples), but more so only if you have an automated setup.

Thanks a lot for the info. This was really helpful!!