Announcing Microsoft Codename “Cloud Numerics”

The Microsoft Codename “Cloud Numerics” Lab is a numerical and data analytics library for data scientists, quantitative analysts, and others who write data-analytics models in C# and .NET and then want to scale out these solutions on Windows Azure. For example, with “Cloud Numerics” it is possible to write document classification applications using linear algebra and statistical methods such as Singular Value Decomposition or Principle Component Analysis, write applications that search for correlations in financial time series or genomic data, or easily create solutions for a range of similar scenarios that involve cloud-scale datasets and use dense or sparse matrices.

“Cloud Numerics“ provides: 

  • An easy-to-use programming model that hides the complexity of developing distributed algorithms
  • A comprehensive .NET library of numerical algorithms ranging from basic mathematics to advanced statistics to linear algebra
  • The ability deploy your application to Windows Azure and leverage the immense compute power available in the cloud
  • SPMD (Single Program Multiple Data) and SIMD (Single Instruction Multiple Data) parallelism from your new or existing application 

Writing numerical algorithms can be challenging. Such a task can require a thorough understanding of the underlying math, and traditionally these tasks are the realm of domain experts such as data scientists, quantitative analysts, engineers, and so on. Writing numerical algorithms that scale-out on tens or hundreds of processors is even harder. At the same time, the ever-increasing appetite for, and availability of, data makes it critical to be able to scale-out data analytics models —this is exactly what “Cloud Numerics” is all about.

“Cloud Numerics” provides a complete solution for writing and developing distributed applications that run on Windows Azure. To use “Cloud Numerics” you start Visual Studio with our custom project definition that includes access to an extensive library of numerical functions and array operators. You develop and debug your numerical application on your desktop using a dataset that is appropriate for the size of your machine. You can read large datasets, in parallel, allocate and manipulate large data objects as distributed arrays, and apply numerical functions to these distributed arrays. When your application is ready and you want to scale-out and run in the cloud, you can invoke our deployment wizard, provide your Azure information, deploy the solution, and run.

Do you want to learn more about “Cloud Numerics”? Please visit us on our SQL Azure Labs home page, take a deeper look at the Getting Started material, and Sign Up to get access to the installer. Let us know what you think by sending us email at cnumerics-feedback@microsoft.com.