March 1, 2011

Web access to GPU Smoldyn

In my previous post I described a GPU implementation of Smoldyn. In this post I'm going to describe a Web-Service that provides an internet access to it. Using this service a user can start a simulation just uploading a configuration file describing a model. The service executes this file and uploads screenshots and other output files to user's profile, so a user can access them. This allows users, who doesn't have access to high performance GPUs enjoy all benefits of GPU implementation (200x speedup for instance).

The service consists of 2 parts. The first part is a web-interface, that manages user's profile and provides access to information is implemented using django framework. The database it uses is a MySql database. The second part is an application that executes simulations themselves. Currently it is a python script that fetches data from the database, executes simulations using this data (the script executes an original GPU Smoldyn application written in CUDA C++ using OS services). Then the script uploads the output information to the database. Current architecture is presented on the image below.















In the nearest future I'm going to improve this service by adding Amazon Simple Storage (SSS) support for storage user files like output files and screenshots. Also I'm going to add a new level - dispatcher level that would be providing jobs for execution nodes, achieving better scalability. The future architecture is presented on the picture below.















You can try the service by clicking the link. You would need to register, but it is free and there is no any obligations.

No comments: