Canonical Voices

Posts tagged with 'amazon'

Michael Hall

Late last year Amazon introduce a new EC2 image customized for Machine Learning (ML) workloads. To make things easier for data scientists and researchers, Amazon worked on including a selection of ML libraries into these images so they wouldn’t have to go through the process of downloading and installing them (and often times building them) themselves.

But while this saved work for the researchers, it was no small task for Amazon’s engineers. To keep offering the latest version of these libraries they had to repeat this work every time there was a new release , which was quite often for some of them. Worst of all they didn’t have a ready-made way to update those libraries on instances that were already running!

By this time they’d heard about Snaps and the work we’ve been doing with them in the cloud, so they asked if it might be a solution to their problems. Normally we wouldn’t Snap libraries like this, we would encourage applications to bundle them into their own Snap package. But these libraries had an unusual use-case: the applications that needed them weren’t mean to be distributed. Instead the application would exist to analyze a specific data set for a specific person. So as odd as it may sound, the application developer was the end user here, and the library was the end product, which made it fit into the Snap use case.

Screenshot from 2017-03-23 16-43-19To get them started I worked on developing a proof of concept based on MXNet, one of their most used ML libraries. The source code for it is part C++, part Python, and Snapcraft makes working with both together a breeze, even with the extra preparation steps needed by MXNet’s build instructions. My snapcraft.yaml could first compile the core library and then build the Python modules that wrap it, pulling in dependencies from the Ubuntu archives and Pypi as needed.

This was all that was needed to provide a consumable Snap package for MXNet. After installing it you would just need to add the snap’s path to your LD_LIBRARY_PATH and PYTHONPATH environment variables so it would be found, but after that everything Just Worked! For an added convenience I provided a python binary in the snap, wrapped in a script that would set these environment variables automatically, so any external code that needed to use MXNet from the snap could simply be called with /snap/bin/mxnet.python rather than /usr/bin/python (or, rather, just mxnet.python because /snap/bin/ is already in PATH).

I’m now working with upstream MXNet to get them building regular releases of this snap package to make it available to Amazon’s users and anyone else. The Amazon team is also seeking similar snap packages from their other ML libraries. If you are a user or contributor to any of these libraries, and you want to make it easier than ever for people to get the latest and greatest versions of them, let’s get together and make it happen! My MXNet example linked to above should give you a good starting point, and we’re always happy to help you with your snapcraft.yaml in #snapcraft on rocket.ubuntu.com.

If you’re just curious to try it out ourself, you can download my snap and then follow along with the MXNet tutorial, using the above mentioned mxnet.python for your interactive python shell.

Read more
Mark Baker

Last week saw the culmination of one of the UK’s most popular TV shows – Britain’s Got Talent. The way in which this show over five series has captured the attention of the British public is quite incredible, with the majority of popular media outlets dedicating significant space to the contestants, the judges, rumours about the format and speculation about who would win.

Such coverage and excitement means that Britain’s Got Talent drives audience and voter engagement to levels that politicians must dream about. Of course there are many ways that the show makes sure it gets our attention, not least of which is having hours of live coverage on prime time television, but, the talented team behind the show are also using many techniques to encourage deeper engagement for a modern audience.

Take for example the Buzz Off game. This is a game with which viewers can play along while watching the show to ‘buzz’ the acts that they don’t like using a mobile or web-based application. The buzzes are stored with a running total kept and shown per act on the website, so that the audience goes from being an passive viewer to an active participant in the show. The Buzz Off game is developed by Livetalkback for the Britain’s Got Talent Team and recently Malcolm Box, CTO of Livetalkback explained to a group of London big data enthusiasts some of the challenges in building and designing an application that is required to scale to almost Facebook like proportions for a short period of time. The full presentation is below, but for convenience some of the key points are:

  • The volume of traffic being handled by the Buzz application during a two hour live show is equivalent to 130 billion requests per month – excluding Google, this would put the application as approximately the 2nd largest website in the world behind Facebook.
  • To manage this scale, the application is based on Ubuntu Server, MySQL and Cassandra all hosted in the Amazon Public Cloud
  • The service uses hundreds of instances that must be brought online very quickly as additional capacity is required and then released as the load declines after the show.

Malcolm and the team at Livetalkback have done an incredible job to put this together in a short space of time and have it work reliably throughout this year’s programme. A cloud-based approach made perfect sense for an application with such specific scaling requirements, and it was vital that the application scaled not only technically but financially as well. This is where Ubuntu on Amazon really proved its worth – customers pay for the resources they use and there are no license fees or royalties to worry about when bringing up new instances. It is the type of efficient driving of engagement that once again Government departments must be in awe of.

Which brings us onto the Cabinet Office. The UK Government is looking for ways to provide cost effective online systems that drive audience engagement. Recently there have been signs that there has been progress  through the Alpha.gov.uk project led by Martha Lane Fox. Alpha.gov.uk is a prototype site that demonstrates how digital services could be delivered more effectively and simply to users through the use of open, agile and cheaper digital technologies. It is only a prototype at the moment but it is significant in that it has been quickly put together and delivers exactly what it is supposed to do in a cost effective way. So how did they do it? Well they decided on a similar architecture to Livetalkback – Open source software based on Ubuntu Server in a public cloud. Full details of the technology used is at:

http://blog.alpha.gov.uk/colophon

British tax payers will take heart form the knowledge that someone in the Cabinet Office is looking at this and hopefully wondering why more Government services can’t be delivered like this. When it comes to engaging an audience and encouraging interaction in a cost effective way, Britain’s Got Talent and the Cabinet Office now have more in common than you’d think.

Read more
kendrachnik

Announcing the release of Landscape 1.3 – the next version of Canonical’s management and monitoring software that lets you manage multiple Ubuntu systems as easily as one. In addition, Landscape enables you to monitor all your systems from a single Web interface reducing the complexity of managing multiple systems. The theme of 1.3 is Cloud and scalability.

Cloud Computing: EC2 Support
Landscape 1.3 introduces support for Amazon’s EC2 Cloud service. Users can now start, stop and manage their Ubuntu instances on Amazon EC2 from within Landscape.  Just enter your EC2 credentials directly through Landscape to start, stop and manage one of our pre-configured versions of Ubuntu that include the Landscape Client.  We have both 32 and 64 bit server versions available in both the US and EU regions. Once you started, you can use Landscape to manage and monitor them as you would your physical systems. Landscape saves you time by allowing you to manage your physical, virtualized and Amazon EC2 instances from one page.

New Custom Graphs
Users can now create and store trends of key system parameters allowing them to view and act on issues before they impact system performance. This gives System Administrators the flexibility of writing a script to monitor any machine readable parameter that is important to them such as temperature, memory and disk usage.

Knowledge Base
We’ve taken the experience our support engineers have gained with Landscape and created a library of articles that are now available in our knowledge base. There are hundreds or articles that you can search through that will save you time by allowing to quickly find and learn about common procedures and fixes.

The Landscape 1.3 client is available today and is included with Ubuntu 9.04 server edition (Jaunty Jackalope). Read more at the Landscape blog or get product details here

Ken Drachnik – Landscape

Read more