This page gives an overview of using "cloud computing" for distributed radiation calculations as well as information and links to specific tools and services.
The ideas are outlined in our paper "Radiation therapy calculations using an on-demand virtual cluster via cloud computing", which is freely available on the arXiv and citable with BibTeX as:
@article{Keyes2010, arxivId = {1009.5282}, author = {Keyes, Roy W. and Romano, Christian and Arnold, Dorian and Luan, Shuang}, title = {{Radiation therapy calculations using an on-demand virtual cluster via cloud computing}}, url = {http://arxiv.org/abs/1009.5282}, month = Sep, year = {2010} }
Some background
Cloud computing is on-demand, pay-as-you-go, scalable computing resources. Originally developed for web-based business, it is increasingly of interest to scientific and technical users, because of the possibility of super computing scale resources on demand. Monte Carlo radiation calculations (and other techniques) are right at home in this environment.
Virtual Clusters
For large scale Monte Carlo radiation calculations in the cloud, the main concern is creating and managing virtual clusters. Below are some links and descriptions to key tools, which we found useful in building our systems.
- Cloud Providers
(IaaS = Infrastructure as a service, PaaS = Platform as a service) - Amazon EC2 (IaaS)
- Rackspace Cloud Servers (IaaS)
- Microsoft Azure (Iaas)
- PiCloud (PaaS)
- Google App Engine (PaaS)
- Cloud Infrastructure Software ("Private cloud software")
- OpenStack - IaaS software with an open API
- Eucalyptus - IaaS software using the Amazon API
- Ubuntu Enterprise Cloud - Ubuntu's pre-configured cloud server Linux distribution
- Nimbus - Science oriented IaaS software with AWS and Grid compatible API's
- Tools
McCloud
For our group's projects, we have developed a cloud-based cluster framework called McCloud (formerly flsshd). McCloud runs on EC2 and uses Amazon's S3 for storage. Scripting is done with Python and AWS access is achieved with the boto library and SSH. McCloud was originally designed to run Fluka, but is currently being generalized to run multiple Monte Carlo engines (e.g. Geant4, EGSnrc, etc.).
Geant4 on Amazon EC2
Amazon cloud servers run virtual machine "instances". Each instance loads its operating system from an Amazon Machine Image (AMI). We have created a publicly available AMI with the current version of the open source Monte Carlo library Geant4 (9.4.p01) and based on the official Ubuntu 10.04 LTS AMI from Canonical. This instance-store AMI is publicly available in the US-East region with ID ami-50d62b39 for anyone to try out.
- Region: US East
- Username: ubuntu
You should not trust the security of this or any 3rd party AMI! Please audit it, or better yet build your own AMI from scratch. Full AMI build details coming soon.
SOBP Demo
Our SOBP demo designed to be run on Geant4 with EC2 can be found on GitHub.