Abstract:
Both astrophysical simulations and large astronomical surveys are producing catalogs containing of order one billion objects. Analyzing such data sets is difficult with a serial package, and custom coding of parallel software is tedious.To meet these challenges, we have developed Salsa, a parallel, interactive analysis tool for point-like data such as particles in an N-body simulation or object catalogs from a sky survey. The user runs a graphical client application on their desktop, which communicates with the server running on a parallel machine. The client controls the display of the simulation, which is rendered by the server. The client can enter high level code, like Python, that is executed on the server, implementing new functionality and providing programmatic control.
The client is currently written in Java and the server is written in the CHARM++ parallel language for maximum portability. The client/server pair of Salsa is currently used for active research in N-body simulations. The server can read particle or catalog data, render different types of visualizations, create and manipulate groups of objects, and generate statistics on these groups. Information about the object data and control over groups is exposed to the embedded Python interface. The client manipulates the simulation view, defines groups, and sends user-written code to the server.