• Microsoft UK Faculty Connection

    Exciting Updates to Microsoft Academic Search



    Lots of new improved features have been added to Microsoft Academic Search in July

    Academic Search comes from Microsoft Research with much of the development coming from MS Research Asia.

    What’s New in the July Release

    • The database of searchable publications has nearly doubled.
      • From 15.7 million publications to 27.1 million publications as of today
      • Access to material from 10.5 million authors to 16.2 million authors
    • Material in 14 domains available with more to come including humanities and social sciences material.
      • Biology & Biochemistry
      • Chemistry
      • Clinical Medicine

      • Computer Science

      • Economics & Business

      • Engineering

      • Immunology

      • Mathematics

      • Microbiology

      • Molecular Biology & Genetics

      • Neuroscience & Behaviour

      • Pharmacology & Toxicology

      • Physics

      • Psychiatry & Psychology

    • The launch of Academic Map Search
    • New Compare Organizations Tool
      • “Compare differences in the number of publications and citations as well as research priorities and interests between two organizations.”
    • Improved: Keyword Detail Info
    • New stemming variations and definition context
    • View History
      • “All past changes to the author/paper are listed in reverse-chronological order, users can view history by clicking the “View History” tab in the user contribution center.”
    • Release of a Windows Mobile app


    For more inform visit Microsoft Academic Search and read more about feature at http://academic.research.microsoft.com/About/Help.htm#5 

  • Microsoft UK Faculty Connection

    Surface 2.0 SUR40 SDK now available


    On the 12th of July 2011 Microsoft released the Surface 2.0 SDK.

    The SDK simply makes it easy to create engaging experiences, using multitouch and object interaction, for the next generation device for Microsoft Surface – the Samsung SUR40 for Microsoft Surface.

    The Surface 2.0 SDK replaces the Microsoft Surface Toolkit for Windows Touch Beta that was released last year.

    Download the SDK and find training, documentation, and guidance on the new Surface development center at www.msdn.com/windows/surface/


    The Microsoft® Surface® 2.0 SDK is a set of controls, APIs, templates, tools, sample applications, and documentation for application developers. Using the familiar .NET Framework 4.0, Windows Presentation Framework 4.0 (WPF) or XNA framework 4.0, and the Surface 2.0 SDK, developers can quickly and consistently create innovative applications that take advantage of the new PixelSense™ technology delivered in the Surface 2.0 platform.

    The next generation Surface device, the Samsung SUR40 for Microsoft Surface, was announced in January 2011 and will be available to commercial customers in 23 countries later this year. For more information on the Samsung SUR40 for Microsoft Surface, visit www.surface.com.

    Library Controls
    Element Menu
    The Input Simulator
    Raw Image Visualizer

     System Requirements

    The Surface 2.0 SDK runs on the Samsung SUR40 for Microsoft Surface or a PC with a 32-bit or 64-bit edition of one of the following Windows® 7 operating systems:

    Windows 7 Home Premium

    Windows 7 Professional

    Windows 7 Ultimate

    Additional Requirements:

    • Microsoft Visual C#® 2010 Express Edition or Microsoft Visual Studio® 2010
    • Microsoft .NET 4.0.
    • Microsoft XNA® Framework Redistributable is required to run some Surface SDK samples.
    • Microsoft Expression Blend® 4 is recommended to edit XAML code that defines user interface

    The Surface SDK supports input devices such as mouse, touch, and tagged objects. With the Surface SDK, you can develop an application that supports various types of input. However, to test your application in a touch-enabled environment, your computer must have a touch-screen digitizer.

    SDK Contents

    The Surface SDK contains the following resources:



    Reference assemblies

    These assemblies provide the classes that are necessary to create a touch-enabled application.

    Visual Studio project and item templates

    These templates enable you to quickly create a touch-enabled application. When you create a project by selecting the Surface template, all of the necessary references and resources are automatically included as part of your project.


    The input simulator, input visualizer, and Surface stress tools help you develop and test applications for the Samsung SUR40 for Microsoft Surface and Windows 7 touch-enabled PCs. With the Surface Input Simulator tool, you can simulate different inputs, hardware capabilities, and tilt of the device.

    Sample applications

    Sample applications are fully functional applications that you can build and run. These applications showcase various features of the Surface environment. You can run these applications to see Surface functionality in action, and examine the source code to see how certain tasks are performed.


    The documentation for the Surface SDK includes short examples of how to perform various programming tasks, longer and more detailed examination into various programming scenarios, and a detailed API reference.

    Note: When you are ready to distribute an application that you have created with the Surface SDK, download the Microsoft® Surface® 2.0 Runtime from MSDN and include it with your installation package. The Surface SDK Runtime contains the reference assemblies that are required to run your application.

    Surface API

    There are two types of APIs; presentation API and core APIs. The Presentation APIs use Microsoft Windows Presentation Foundation (WPF), which is the standard choice for developing touch-enabled applications. The cores APIs are .NET platform agnostic APIs that enable querying a raw image directly and registering for touch events. Learn more about the core API at http://msdn.microsoft.com/en-us/library/ff727894(v=Surface.20).aspx.

    Surface Controls

    Your touch-enabled application will usually contain one or more Surface controls. Some of these controls are specialized counterparts to WPF controls, and others enable you to include functionality in your application in ways that have no WPF counterpart. The following table summarizes the controls that are included in the Microsoft Surface SDK for Windows Touch Beta.




    The LibraryBar control enables you to list items horizontally, group items into several groups, and scroll groups. By default, the LibraryBar control supports drag-and-drop operations.


    The LibraryContainer control is a dual-view control that arranges items in a horizontal bar or in a vertical stack and enables you to switch back and forth between the two views.


    The LibraryStack control enables you to display items that are stacked on each other. Users can view the individual items by rearranging the order of the stack or by removing items from the stack. By default, the LibraryStack control supports drag-and-drop operations.


    The ScatterView control is a container for any other User Interface (UI) element. When you place a UI element inside of a ScatterView control, that element automatically gains the ability to be moved, rotated, and resized using one or multiple touches.


    The ElementMenu control implements a collection of items in a tree hierarchy that users can select.


    The SurfaceButton control is a specialized version of the WPF Button control. SurfaceButton provides a different default look-and-feel, adds support for Touch Visualizations, and customizes the handling of input device events so that if multiple touches are targeting the control, the Click event is raised only after all touches are lifted.


    The SurfaceCheckBox control is a specialized version of the WPF CheckBox control. SurfaceCheckBox provides a different default look-and-feel, adds support for Touch Visualizations, and customizes the handling of input device events so that if multiple touches are targeting the control, the Click event is raised only after all touches are lifted.


    The SurfaceTextBox control provides an unconstrained data entry field. The SurfaceTextBox control also provides the on-screen keyboard so that you do not have to specifically invoke the keyboard.


    The SurfaceInkCanvas control provides a drawing canvas that you can use with touch input to create, modify, and delete drawing strokes.


    The SurfaceListBox control is a specialized version of the WPF ListBox control. SurfaceListBox adds support for panning, the ability to move the content by direct contact with the content itself, instead of using a scroll bar.


    The SurfaceRadioButton control is a specialized version of the WPF RadioButton control. SurfaceRadioButton provides a different default look-and-feel, adds support for Touch Visualizations, and customizes the handling of input device events so that if multiple touches are targeting the control, the Click event is raised only after all touches are lifted.


    The SurfaceScrollViewer control is a specialized version of the WPF ScrollViewer control. SurfaceScrollViewer adds support for panning, the ability to move the content by direct contact with the content itself, instead of using a scroll bar.


    The SurfaceSlider control is a specialized version of the WPF Slider control. SurfaceSlider provides a different default look-and-feel, and adds support for Touch Visualizations.


    The SurfaceWindow control is a specialized version of the WPF Window control. SurfaceWindow provides and activates the necessary event handlers to make sure that it receives touch events.

    Sample Application Projects

    The sample applications that come with the Surface SDK show several different programming techniques in a complete application. You can use these applications as a starting point for more complete applications or just as examples of best practices in Surface programming. For information about obtaining the sample files, see Extracting and Installing the Surface Samples.

    Samples that use the Core layer and XNA Framework



    Finger Fountain

    Draws small images for every contact at every frame. This sample emphasizes multiple touches and shows how to use the Microsoft XNA APIs.


    Provides an extensive sample framework that helps you create controls by using the Core layer. The code in this sample eliminates inconsistent behavior among Core-based applications by using the Model-View-Controller (MVC) design pattern.


    An XNA-based application that demonstrates how to use the Core Interaction Framework

    RawImage Visualizer

    Shows how to use the RawImage APIs for XNA applications. This sample displays captured normalized (8 bit per pixel) images that are flipped vertically.

    XNA Scatter

    Demonstrates how to use the manipulations and inertia APIs to move graphical user interface (GUI) components around in a Surface application in a natural and intuitive way.

    Samples that use the Presentation Layer (WPF)



    Controls Box

    Shows how to build simple application behaviors from touch-enabled controls that the Presentation layer provides, such as updating a text box when a user touches a button

    Data Visualizer

    Shows contact properties that are exposed in the Presentation layer (such as x, y, height, width, major axis, minor axis, and orientation) and how you can read and use these properties in a Surface application.

    Grand Piano

    Demonstrates how to integrate sound into Surface applications based on the Presentation layer.

    Item Compare

    Represents a simple tool that lets a user compare and contrast the properties of two "items" (tagged objects).

    Photo Paint

    Uses the SurfaceInkCanvas control to implement drawing and painting over pictures and video


    Shows an implementation of the ScatterView and SurfaceListBox controls to create a simple puzzle game. The ScatterView and SurfaceListBox controls automatically provide some powerful features related to Surface.

    Shopping Cart

    Shows how to implement drag-and-drop functionality in a retail application.

    Tag Visualizer Events

    Shows how to incorporate hit-testing in the TagVisualizer control to let user interface (UI) elements react when tagged objects move over them.

  • Microsoft UK Faculty Connection

    Microsoft Zentity– helping you manage your digital repositories




    Microsoft Zentity is a semantically enabled repository platform that provides a suite of building blocks, tools, and services to create and maintain an organisation’s digital-library ecosystem. The research lifecycle generates a wide variety of outputs that are important to store and track as part of the on-going research process. Zentity maximizes the value of this output by helping researchers access, analyse, and unlock the previously hidden structure and relationships among data elements.

    Zentity 2.0 Introduction Video

    Microsoft Research Senior Program Manager Oscar Naim introduces Zentity 2.0 and demonstrates some of the great new features, including the Pivot Viewer and Visual Explorer.

    Get Microsoft Silverlight

    About Zentity 2.0

    Microsoft Zentity is a repository platform designed for academic, governmental, and scientific organizations that conduct and compile research. From a technical standpoint, Zentity is a hybrid store: a combination of a triplestore and a traditional relational database.

    Microsoft Zentity is data agnostic, supporting arbitrary data models, and provides semantically rich functionality that enables the ability to find and explore interesting relationships between elements both programmatically, by using the Zentity API, and visually, by using Microsoft Live Lab Pivot Viewer and Microsoft Research Visual Explorer.

    Microsoft Zentity incorporates the Pivot Collection Service, which makes it easier to maintain, display, and interact with data in flexible and innovative ways. The Pivot Collection Service works in conjunction with the Pivot Viewer, which is a Silverlight control to visualize n-dimensional data sets and the metadata associated with them. Zentity also includes the Visual Explorer Silverlight control, which enables researchers to visually navigate Zentity data by using a graph metaphor.

    Microsoft Zentity also enables interesting information aggregation scenarios, or mashups, across different data sources, by taking advantage of standard protocols such as the Open Data Protocol, OData.

    Other features of Zentity include:

    • Zentity Software Development Kit Includes dynamically created sample data sets from publicly available sources, such as Pub Med, programming examples, and API documentation.
    • Zentity Console An application based on PowerShell commandlets that provides easy access to the Zentity API by using a console application.
    • Zentity Data Service This service exposes arbitrary data models stored in Zentity to external applications. This service is based on WCF Data Services and it is ODATA compliant, which allows applications such as Excel Power Pivot to connect to Zentity and enable data mining.
    • Improved deployment experience Most users can install Zentity and begin using it within 15 minutes or less.

    For more information on Microsoft Zentity see http://research.microsoft.com/en-us/downloads/a4125c74-36ea-4f23-9278-792de0808e45/

  • Microsoft UK Faculty Connection

    Robots – Using NAO and Microsoft Robotics Studio



    NAONAO, Aldebaran's humanoid robot for STEM education, is now available for use in education.

    The 22-inch-tall robot can see, hear, speak, move, walk, dance, play soccer, recognize faces and objects, understand what is said to him, localize sound, and speak seven languages, and is currently being used in more than 350 schools and universities to teach classes including math, robotics, and computer sciences.

    Exploring STEM with NAO is a fascinating experience. Here are a few examples of lectures and labs  that educators can easily implement in classrooms with NAO:

    Introduction to Robotics
    What’s a gear?
    What’s torque?
    What’s mechatronics?
    Technology and society, ethical issues...

    Introduction to Computer Science
    Basics of programming
    Architecture of Information systems
    Initiation to Game theory

    Sensors and physical quantities measurement
    Transfer of energy
    Motion and forces
    Study of the ultrasounds
    Speed and Kinematics
    Study of the physical properties of Light: NAO’s infrareds
    Optics: NAO’s vision

    From continuous functions to motion animations
    Geometry and trigonometry: placement and distance
    Equations, calculating distance
    Logics, Reasoning and proof
    Probability and Statistics

    Choregraphe is the programming software that lets NAO users create and edit movements and interactive behaviours with complete simplicity. The intuitive graphic interface, the library of behaviours delivered as a standard feature and the advanced programming functions satisfy the needs of novices and experts. Everyone can compose their own behaviours by a simple drag/copy from the library or else create their own boxes and save them in their personal library.

    Choregraphe accepts Urbi and Python language, so it can directly call C++ modules developed separately. It comes with many detailed examples to simplify the learning process. Choregraphe is 100% compatible with Microsoft Robotics Studio which allow you to test behaviours in custom environments with one or more programmable in Python and C++, and ships with a software development kit for more information on Microsoft Robotics Studio click here.

    Nao is 100% .Net Compatible and NAO's API can be accessed from a remote PC using any language supported by the .Net Framework version 2 or above including C# and VBScript. With auto-completion and integrated help, it makes communicating with your NAO easy from popular windows tools such as Microsoft Visual Studio.

    Aldebaran Robotics has decided to help ambitious educational projects that embrace Robotics  if your interested in this opportunity you can apply for the Aldebaran Educational Partnership Program

  • Microsoft UK Faculty Connection

    .NET Gadgeteer



    Have you heard about .NET Gadgeteer?

    .Net Gadgeteer is the powerful prototyping, cool hobbyist, unique teaching kit that was developed by the whizzes in Microsoft Research (yes – they like to play too). To learn more, check out a Channel 9 Video or simply watch the video below.

    What is .NET Gadgeteer?

    Microsoft .NET Gadgeteer is a rapid prototyping platform for small electronic gadgets and embedded hardware devices. It combines the advantages of object-oriented programming, solderless assembly of electronics using a kit of hardware modules, and quick physical enclosure fabrication using computer-aided design.

    Individual .NET Gadgeteer modules can be easily connected together to construct both simple and sophisticated devices. Each module adds some extra capabilities, such as the ability to display images, playback sounds, take pictures, sense the environment, communicate with other devices or enable user interaction.

    The platform is built on the .NET Micro Framework, which allows small devices to be programmed in the C# language and make use of Visual Studio’s programming and debugging tools.

    This powerful combination allows fully functional devices to be prototyped in a matter of hours rather than days or weeks.

    How can you get your hands on one?

    It's OK – we're used to that question. We hear it every time we show the .NET Gadgeteer. Well, Microsoft has decided to Open Source the designs (Creative Commons) and libraries (Apache 2.0) for the .NET Gadgeteer to see how fast we can get it out to people who want to use it. We are actively recruiting hardware vendors who are interested in developing kits and modules to build out this ecosystem. If that describes you, contact us at gadgeteer@microsoft.com for more information.

    How long will it be until I can get one?

    We had some redesign work to do to insure that the system could really be open to a wide variety of designs. We are there now so keep an eye on this space for updates.

    In the meantime, where can I actually see the current devices?

    The .NET Gadgeteer is being displayed at a number of venues in the next few months including MIX11, TechEd 2011, and OSCON 2011.

    Visit the following URLs for more details, information and Source Code

    Faculty Connection Resource Site http://www.microsoft.com/education/facultyconnection/GB/articles/articledetails.aspx?cid=2329&c1=en-gb&c2=GB 

    Codeplex Source Code Download http://gadgeteer.codeplex.com/

    MS Research .NET Gadgeteer site http://research.microsoft.com/en-us/projects/gadgeteer/default.aspx

    .NET Gadgeteer Announcement site - http://netmf.com/gadgeteer/

    Have something to add? Got a request or suggestion?

    You can drop us a line at the same email address – gadgeteer@microsoft.com or follow us on Twitter at @netgadgeteer.

  • Microsoft UK Faculty Connection

    Introducing the Dare to be Digital Kinect teams


    What Dare is...


    Dare to be Digital is a video games development competition for extremely talented students at Universities and Colleges of Art. Teams of 5 students, usually a mix of artists, programmers and audio, assemble at Abertay University for 9 weeks during June to August to develop a prototype video game, receiving mentoring from industry.

    Want to know more about Dare to be Digital see the following video

    At the end of the competition, the prototypes are displayed at talent showcasing event Dare ProtoPlay. The general public and industry experts get to play and vote for the games. At the Dare awards ceremony, three prizes of £2500 will be awarded to the three highest scoring teams based on the criteria of innovation and creativity, market potential and use of technology (none of the three will be specifically attributed to any particular criterion). Seven months later the winning teams attend the BAFTA Video Games Awards to compete for the coveted "Ones to Watch Award".

    Microsoft is proud to be an official sponsor for the provision of Windows Phone 7 and Microsoft Kinect

    Kinect_thumb2 Win7Phone_thumb2

    In this blog I want to focus on the Kinect teams

    The Microsoft Kinect Teams are:

    Team Ape-y Eyes
    Twitter @ApeyEyes

    Team Crispy Nugget Studios
    Twitter @Crispy_Nugget_S

    Team Digital Knights
    Twitter @Dare2011DK

    Team Furnace Games

    Twitter @FurnaceGames

    Here are the benefits for students taking part:

    • Enhance your CV
    • Get mentoring from the industry
    • Produce a demo to take to interviews
    • Hone your skills and get the experience that employers are looking for
    • Expose your skills and work to games industry luminaries / potential employers
    • Experience working as part of a team

    Want to know more

    Simply visit http://www.daretobedigital.com/

  • Microsoft UK Faculty Connection

    Introducing Windows HPC Server 2008 R2 SP2 white paper



    As your all aware from one of my recent posts HPC customers now have access to additional resources, which have been made available with the release of Windows HPC Server 2008 R2 Service Pack 2.

    I am pleased to announce the availability of a new white paper entitled Introducing Windows HPC Server 2008 R2 SP2 which can be downloaded via the Microsoft Download Center.

    The paper is available for FREE and is authored by David Chappell, Principal of DavidChappell & Associates, and is designed to provide insight into Windows HPC Server for those running parallel applications on clusters.

    Chappell explains. “The goal is to support high-performance computing (HPC), a category that includes a range of applications that can benefit from being distributed across a cluster. To allow this, Windows HPC Server 2008 R2 Service Pack (SP) 2 supports four major types of parallel applications. This paper provides an introduction to Windows HPC Server 2008 R2 SP2, including a look at the services it provides for creating and using clusters and an overview of how it supports each of the four application types. With today’s broader notion of cluster, which includes desktop workstations and cloud instances as well as traditional on-premises servers, adopting this technology has gotten easier.”

    The whitepaper describes the following methods of parallel applications supported by Windows HPC Server 2008 R2 SP2

    • MPI Apps,
    • Embarrassingly Parallel Apps
    • Excel Apps
    • Data-Intensive Apps

    Windows HPC Server 2008 R2 Service Pack 2 (SP2) RTM is available for download here.

  • Microsoft UK Faculty Connection

    Microsoft Surface 2.0 SDK to be launched on the 12th of July


    Today I’m excited to share with some exciting development news relating to Microsoft Surface and how were helping you support the next generation device – the Samsung SUR40 Microsoft Surface.

    Microsoft Surface 2.0 SDK releases next week!


    At MIX 2011, the Surface Team announced that they would release our SDK this summer. I am happy to share with you that the SDK will be available for public download for free from the Microsoft Download Center on July 12th.

    For those of you who haven't seen or heard of Surface SUR40 please watch the following video from the MIX11 Conference


    Here are some of the new features which are ideal in the academic teaching learning and research space.

    1. The SDK now runs on the latest technologies: WPF 4.0, XNA 4.0, Windows 7 (32 bit and 64 bit).

    2. Multiplatform support the new SDK target both Microsoft Surface Hardware and Windows 7 Touch enabled PCs with a single SDK. The surface team have coined the phrase  “Write once - touch anywhere”. That means that the same binary can be used in both types of hardware and for you this means you can get developing for surface using multitouch PCs which will save budgets and mean you can get developing today!

    3. The ability to actually query the hardware capabilities of the device.

    4. New APIs for you to query the capabilities of the hardware (maximum number of touches recognized by the hardware, whether the hardware can actually distinguish touches caused by fingers versus other touches, tag recognition support, tilt support, etc.)

    You can learn more about adapting your application to the environment here.

    5. The availability of a Microsoft Surface Input Simulator. For more information on our new Input Simulator, check out the Surface Team blog post.

    6. A new look  consistent with other Microsoft Products such as Zune and Windows Phone. The style is clean, simple yet elegant.

    7. The ability to port a Surface v1 application, check out the Microsoft Surface Migration PowerToy will be available via the Code Gallery on July 12 as well the PowerToy is also open source in case you want to tweak it for your needs.

    Resources to help you which will be launched on the 12th of July

    Introducing the Microsoft Surface Design and Development Center on MSDN

    The Microsoft Surface Design and Development Center provides access to the Microsoft Surface 2.0 SDK, online training, hands on labs, design and interaction guidelines, application certification, documentation, whitepapers, developer forums and other resources. The Design and Development Center focuses on helping people get jumpstarted with developing amazing new vision based touch applications that people can share at the same time.

    Microsoft Surface Online Training Resources

    The online training is a course that enables people to learn about planning, designing, developing, testing, and deploying Microsoft Surface 2.0 applications for use on the Samsung SUR40 for Microsoft Surface and Windows 7 touch PCs. People proceed through the course at their own pace, or jump directly to the topics which they need. Hands on labs provide developers and designers with a guided opportunity to start building applications and get familiarized with the Microsoft Surface 2.0 SDK. Design and interaction guidelines, certification, and SDK documentation help outline the best practices for making great touch applications that draw on the power of vision input and object interaction. The developer forums are a place that the Surface development community can share information, get help and support.

    For more information on Microsoft Surface see the Microsoft Surface Team Blog at http://blogs.msdn.com/b/surface/

  • Microsoft UK Faculty Connection

    Get your students developing over the summer



    Win7PhoneAre your students going to be sitting around this summer bored out of their minds? Why not promote the following opportunity and get them to use their free time and apply their newly learnt skills to the following opportunity?

    The Windows Phone team has set aside 50 phones running the latest Mango bits for students who are eager to take on a fun summer project.

    To get your hands on one of these phones, here’s what you do:

    1.) Register for the DreamSpark program, if you haven’t already. The DreamSpark program puts Microsoft software in your hands – for free!. Register now!

    2.) Download and install Expression Studio Ultimate and the new Windows Phone SDK 7.1 Beta 2 (available free as a member of DreamSpark)

    3.) Get the free Sketchflow Template for Windows Phone and create a SketchFlow mock-up of your app idea.

    4.) Post the SketchFlow mock-up somewhere online and tweet out the link using the hash tag #WPAppItUp.

    The Windows Phone team will review the submissions and will contact the developers with the best ones and send them their very own Mango developer phone!

    If you’re new to SketchFlow, there are some great training videos on the Expression Community site.

  • Microsoft UK Faculty Connection

    Microsoft Windows Azure in Academia and what help can you get from Microsoft Research



    What is Windows Azure?

    Windows Azure is a platform for building scalable, highly reliable, multi-tiered web service applications. It is hosted on Microsoft’s large data centers in the United States, Europe, and Asia. Windows Azure has both compute and data resources. The compute resources are designed to allow applications to scale to thousands of servers and data resources. For more information on Windows Azure keep an eye on the Windows Azure team blog.

    Windows Azure as a Platform for Research in Cloud Computing

    What types of research projects are well suited to Azure?

    Windows Azure can be an excellent research platform for many types of research. However, it is designed to support scalable web services, so projects that play to this strength will have the most success. One area of particular interest is computational models and techniques that augment the capabilities of client devices, ranging from feature rich desktop and laptop computers to cell phones of other mobile devices with data and computation resources in the cloud. How can we make the cloud into a transparent extension and experience amplifier of our client-based research tools?

    Others interesting areas include:

    • Evaluation of cloud computing for a spectrum of algorithms, computational models, and programming patterns.
    • Programming abstractions for cloud platforms that offer higher level abstractions and guarantees to application developers.
    • Scaling conventional algorithms to cloud scale, coping with load, and dealing with faults.
    • Research into scientific data management, data analysis, and new services in the cloud to support data intensive research.
    • Data parallel program frameworks, going beyond the map reduce model.
    • Experimental platforms for distributed agent technology.
    • Compiling declarative and/or functional languages for cloud platforms.
    • Sustainable science gateways and virtual organizations in the cloud for web-based application and collaboration frameworks.
    • Research to support digital data libraries in the cloud that contain scientific data, not just the metadata, and support integration with published literature.
    • New techniques for data visualization of cloud scale data sets, including visual analytics.
    • Frameworks to support sensor-based science in the cloud, from services to process data streaming and from sensors to the storage and curation of raw and derived data products.
    • Machine learning techniques for data understanding and data generation.
    • Research to support intelligent interactions leveraging web data and domain knowledge.

    Will Hadoop or Dryad/LINQ be available on Azure?

    There is no port of Hadoop or Dryad/LINQ currently available. However, Windows Azure is an excellent platform for experimenting with new variations on large-scale map-reduce algorithms, as these patterns are easily coded as worker role networks.

    Can I run my MPI HPC applications on Windows Azure?

    Windows Azure is not designed to replace the traditional HPC supercomputer. In its current data center configuration it does not have the high-bandwidth, low-latency communication model that is appropriate for tightly-coupled MPI jobs. However, Windows Azure can be used to host large parallel computations that do not require MPI messaging, such as ensemble or parameter sweep studies.

    Can Azure be useful as an experimental host for distributed computing research?

    Yes. Windows Azure worker roles have access to standard TCP/IP sockets on each virtual machine (VM) in which they run. Hence it is possible to use a large number of worker roles to experiment with distributed computing algorithms and protocols.

    Can Azure be used to support collaborations and “science gateways”?

    Yes. Windows Azure is an excellent platform for sharing “community” data and data analysis tools. Most science gateways are built as web portals and Windows Azure is ideally suited for this task.

    What data collections will be made available?

    We will be very interested in suggestions from researchers about important community data collections and tools that can be hosted. We currently have data collections from the NCBI genome databases, oceanographic instrument data, and some MODIS satellite data. We also are providing access to web scale n-grams via a service. However, our goal is to let the research community help us define a sustainable collection of shared resources and analysis tools.

    Web N-gram Services

    The Web N-gram Services, provided by Microsoft Research in partnership with Microsoft Bing, will provide researchers access to large scale real-world datasets and benchmarks. Access to the Web N-gram Services will be made available to NSF awardees, with the following properties:

    • Content types: Document Body, Document Title, Anchor Texts
    • Model types: smoothed models
    • Highest order N: 5 (N=5 in N-gram)
    • Training size (Body): over 1.3 trillion
    • #of 1-gram (Body): 1 billion
    • #of 5-gram (Body): 237 billion
    • Availability: Hosted Services by Microsoft
    • Refresh: 2 data updates

    N-gram models can advance research in areas such as document representation and content analysis (for example, clustering, classification, and information extraction), query analysis (for example, query suggestion and query reformulation), retrieval models and ranking, spelling, and machine translation. They can also improve intelligent interactions with better dialogue modeling (for example, semantic relations and summarization).

    Windows Azure Software and Architecture

    What is the programming model?

    A Windows Azure program is a scalable, multi-tiered web service. The service consists of one or more “web roles,” which are standard web service processes, and “worker roles,” which are computational and data management processes. Roles communicate by passing messages through queues or sockets. The number of instances of each type of role is determined by the developer when the application is deployed and each role is assigned by Windows Azure to a unique Windows Server virtual machine (VM) instance. (Currently no more than one VM instance runs on an individual core.)

    What types compute instances are available on Windows Azure?

    Each Windows Azure compute instance (web role or worker role) represents a virtual server. Although many resources are dedicated to a particular instance, some resources associated to I/O performance, such as network bandwidth and disk subsystem, are shared among the compute instances on the same physical host. During periods when a shared resource is not fully utilized, you can utilize a higher share of that resource. Each Windows Azure data center server currently has 8 cores, 14 GB of memory, and 2 TB of disk space. An instance can be mapped to one or more cores with the memory and resources divided evenly. The table below describes the way the resources are partitioned on each server.

    Instance Size






    1.6 GHz

    1.75 GB

    225 GB



    2 x 1.6 GHz

    3.5 GB

    490 GB



    4 x 1.6 GHz

    7 GB

    1,000 GB


    Extra large

    8 x 1.6 GHz

    14 GB

    2,040 GB


    Windows Azure Pricing Calculator

    What virtual machine (VM) types are available? Can I configure my own VM?

    Windows Azure automatically configures and manages Windows Server VM instances for your application. In the current version of Windows Azure, you cannot remotely connect and run a remote desktop on this VM instance. The VM instances are managed and deployed by the Windows Azure Fabric Controller and you interact with the Fabric Controller though the Windows Azure web interface.

    What types of data storage are available on Windows Azure?

    There are basically five storage systems. Blob storage is for long-term data. Blobs are binary objects together with <name, value> pair metadata. Each blob can be up to 50 GB and blobs are grouped into logical containers. Blobs are replicated three times in the data center for reliability purposes and they can be accessed from any server or by a URL over the Internet. Table storage is another type of persistent storage. A table can be very large (millions of rows and columns) and is partitioned by rows and distributed over the storage nodes in Windows Azure. It is also triply replicated. Tables are not full SQL tables because there is no join operator. Within the compute node there are two types of storage. Local disk is available to each Windows Azure role, but this is not persistent. If your role process goes down it may be restarted on another node, so the local disk is not for persistent data. However, XDrives are virtual drives that can be mounted on a Windows Azure VM instance and they are backed by the blob storage system so that they are persistent. The queue system is also part of the persistent Windows Azure storage model.

    Can I run the Windows Azure software stack on my own private cluster?

    Not currently. Windows Azure is a public cloud service and it is not available as a software product.

    Developing Applications for Windows Azure

    What languages/compilers are available? What IDEs can be used with Azure?

    Applications on Windows Azure are designed and debugged completely on the programmer’s local machine. So any compiler that generates a Windows binary can be used. Microsoft Visual Studio has a “plug-in” for Windows Azure that makes the construction of Windows Azure applications extremely simple. The plug-in allows the programmer to test the application on a local Windows Azure emulator. When the programmer is ready to deploy the application on Windows Azure, the binaries are uploaded through a web interface. This interface also controls deployment parameters such as the number of server instances to be used. Visual Studio is not required.

    The application program can also use a plug-in for the Eclipse software framework if that is preferred. Programmers can use Java, Ruby, Python, and C++. We have examples that illustrate how to deploy the Apache Tomcat server on Windows Azure for the web role.

    What scientific libraries will be available?

    We are working on a list of these currently.

    Can I run Matlab on Azure?

    Matlab can be used to “compile” a Matlab application and it is possible to upload this compiled code and libraries to Windows Azure. We have not yet installed a complete Matlab instance on Windows Azure, but it is a project currently under study.

    Can I run arbitrary applications as Azure workers?

    In general, any Windows binary that does not require modifications to the Windows operating system or registry can be loaded and run as part of a Windows Azure role. This includes compiled C, C++, or Fortran programs as well as Java, Python, PHP, and Ruby applications.

    How can I use custom libraries with my Azure applications?

    When you use the IDE to build the application, you simply include the libraries with the application. The IDE will roll these up into the binary that is uploaded to Windows Azure when you deploy your application.

    Can I manage collections of tasks (workflows) that involve local data and activities as well as Azure resident data and tasks?

    Yes. We have a sample Windows Azure service that can manage many concurrent tasks that run on Windows Azure as well as local compute resources. The tasks are arbitrary Windows executables that are wrapped as Windows Azure worker roles. The data that is used or produced can be in the Windows Azure replicated persistent storage or the local disk on each machine. This local storage is not persistent across deployments of your application; however, it is possible to mount a virtual disk that is part of the persistent storage.

    Are there hooks in Azure to enable systems-level research on scheduling and resource allocation?

    Unfortunately, no. Windows Azure applications are controlled by the Azure Fabric controller, which has the responsibility of resource allocation and quality of service for all the currently running applications. Consequently, Windows Azure is not well suited to many systems-level research projects.

    What dynamic scaling models are supported by Azure?

    The programmer must specify the number of each type of role to instantiate at deployment time. These numbers remain fixed until the application is de-deployed. However, it is possible to experiment with dynamic deployment in the application logic.

    What performance guarantees can I expect from my applications? What is the interference between workers?

    Performance will be variable depending on the load on the data center. We will provide basic benchmark tools to help guide application designers to optimize performance. At any given time, Windows Azure will be running many applications in the data center and many of these are commercial customers who demand high levels of service. The research engagement project will receive the same level of support as these commercial users.

    Will I be able to instrument my applications?

    Because you have no direct access to the Windows Server virtual machine instance, you will not be able to access instrumentation that requires administrator level authorization. However, you do have access to application logs and some performance counters, and application-level instrumentation is possible. A complete benchmark suite will be available that you can use to experiment with many performance features of Windows Azure.

    How can I get my data into the Azure storage?

    There are several ways to move data. The most direct method is through the web API to the Windows Azure blob storage. It is also possible to take data stored in Microsoft Office Excel or Matlab and, by using plug-ins we provide, save your data directly in Windows Azure tables. There are also free GUI tools to manage Windows Azure storage from your desktop, such as the
    Cloud Storage Studio. OpenDAP services will be available for loading and serving data and an FTP application can be used to pull data from FTP sites.

    Are there ways to connect desktop or mobile applications to Azure services?

    Windows Azure is a web service platform, so any web-based protocol can be used to build applications that fully integrate the cloud. This is how the plug-ins for Matlab and Office Excel were built.

    Are there data visualization tools available for Azure resident data collections?

    Both Excel and Matlab running on the desktop can be used to visualize data stored on Windows Azure. More sophisticated local
    and remote visualization tools will be made available.

    What will the Microsoft Research Cloud Research Engagement Team provide to the research community?

    The engagement team will support the community of researchers through the following:

    • Develop tutorials and white papers for a general overview of Windows Azure, identify best practices, and provide a benchmark suite as a guide for application architects and developers.

    • Host reference data sets in Windows Azure, selected based on research value/interest.
    • Host an internal kickoff workshop and annual all-hands meeting (invitation only) at Microsoft Research.
    • Field questions and provide technical consultation through our engagement team.
    • Regularly update a community web site with technical content, blogs, source codes, and examples—along with community-supplied content, questions and answers, and more.
    • Offer common services and tools that the research community finds useful.
Page 86 of 98 (977 items) «8485868788»