As part of its Technical Computing initiative, Microsoft opens a new Technical Computing Labs project under its MSDN DevLabs banner.
As
part of its Technical Computing initiative, Microsoft has launched a new effort
known as Technical
Computing Labs (TC Labs) for developers on Microsoft Developer Network's
(MSDN) DevLabs.
TC
Labs provides developers with the opportunity to learn about Technical
Computing technologies, get early versions of code and to provide feedback to
Microsoft. TC Labs is a new resource for developers to access early releases of
Microsoft Technical Computing software.
According
to the TC Labs page on DevLabs, Microsoft is bringing multiple technologies and
services to bear with this initiative including parallel development tools in
Visual Studio, distributed computing environments with Windows High Performance
Computing (HPC) Server, cloud computing with Windows Azure, and a broad
ecosystem of partner applications.
"Microsoft
Technical Computing is focused on empowering a broader group of people in
business, academia, and government to solve some of the world's biggest
challenges," Microsoft said on the TC Labs site. "It delivers the tools to
harness computing capacity to make better decisions, fuel product innovation,
speed research and development, and accelerate time to market - including
decoding genomes, rendering movies, analyzing financial risks, streamlining
crash test simulations, modeling global climate solutions and other highly
complex problems. Doing this efficiently, at scale, necessitates a
comprehensive platform that integrates well with your existing IT environment."
Microsoft
TC Labs projects include Sho, which provides those who are working on Technical
Computing-styled workloads an interactive environment for data analysis and
scientific computing that lets you seamlessly connect scripts (in IronPython)
with compiled code (in .NET) to enable fast and flexible prototyping.
In
a Jan.
26 blog post, S "Soma" Somasegar, senior vice president of Microsoft's
Developer Division, said of Sho, "The environment includes powerful and
efficient libraries for linear algebra and data visualization, both of which
can be used from any .NET language, as well as a feature-rich interactive shell
for rapid development. Sho comes with packages for large-scale parallel
computing (via Windows HPC Server and Windows Azure), statistics, and
optimization, as well as an extensible package mechanism that makes it easy for
you to create and share your own packages."
Another
TC Labs project is the Task Parallel Library (TPL), which was introduced in the
.NET Framework 4, providing core building blocks and algorithms for parallel
computation and asynchrony.
Regarding
TPL, Somasegar said, ".NET 4 saw the introduction of the Task Parallel Library
(TPL), parallel loops, concurrent data structures, Parallel LINQ (PLINQ), and
more, all of which were collectively referred to as Parallel Extensions to the
.NET Framework. TPL Dataflow is a new member of that family, layering on
top of tasks, concurrent collections, and more to enable the development of
powerful and efficient .NET-based concurrent systems built using dataflow
concepts. The technology relies on techniques based on in-process message
passing and asynchronous pipelines and is heavily inspired by the Visual C++
2010 Asynchronous Agents Library and DevLab's Axum language.
TPL Dataflow provides solutions for buffering and processing data, building systems
that need high-throughput and low-latency processing of data, and building
agent/actor-based systems. TPL Dataflow was also designed to smoothly
integrate with the new asynchronous language functionality in C# and Visual
Basic I previously
blogged about."
And
another TC Labs project, Dryad, DSC, and DryadLINQ, are a set of technologies
that support data-intensive computing applications that run on a Windows HPC
Server 2008 R2 Service Pack 1 cluster. Microsoft said these technologies enable
efficient processing of large volumes of data in many types of applications,
including data-mining applications, image and stream processing, and some scientific
computations. Dryad and DSC run on the cluster to support data-intensive
computing and manage data that is partitioned across the cluster. DryadLINQ
allows developers to define data intensive applications using the .Net LINQ
model.
Darryl K. Taft covers the development tools and developer-related issues beat from his office in Baltimore. He has more than 10 years of experience in the business and is always looking for the next scoop. Taft is a member of the Association for Computing Machinery (ACM) and was named 'one of the most active middleware reporters in the world' by The Middleware Co. He also has his own card in the 'Who's Who in Enterprise Java' deck.