  Cloud services have been widely employed in IT industry and scientific
research. By using Cloud services users can move computing tasks and data away
from local computers to remote datacenters. By accessing Internet-based
services over lightweight and mobile devices, users deploy diversified Cloud
applications on powerful machines. The key drivers towards this paradigm for
the scientific computing field include the substantial computing capacity,
on-demand provisioning and cross-platform interoperability. To fully harness
the Cloud services for scientific computing, however, we need to design an
application-specific platform to help the users efficiently migrate their
applications. In this, we propose a Cloud service platform for symbolic-numeric
computation - SNC. SNC allows the Cloud users to describe tasks as symbolic
expressions through C/C++, Python, Java APIs and SNC script. Just-In-Time (JIT)
compilation through using LLVM/JVM is used to compile the user code to the
machine code. We implemented the SNC design and tested a wide range of
symbolic-numeric computation applications (including nonlinear minimization,
Monte Carlo integration, finite element assembly and multibody dynamics) on
several popular cloud platforms (including the Google Compute Engine, Amazon
EC2, Microsoft Azure, Rackspace, HP Helion and VMWare vCloud). These results
demonstrate that our approach can work across multiple cloud platforms, support
different languages and significantly improve the performance of
symbolic-numeric computation using cloud platforms. This offered a way to
stimulate the need for using the cloud computing for the symbolic-numeric
computation in the field of scientific research.
