Archive for June, 2010
The video announcing the Linaro initiative is now available on youtube.com.
For the past couple of days I’ve been attending the first ever sprint held by the Linaro Tools and Infrastructure team. The sprint itself lasts all week but I arranged to be there for just Tuesday and Wednesday to find out what they had planned and to join up with a few guests.
This event is slightly different from what we typically do at Ubuntu sprints. The team hasn’t been together for that long so there was equal focus on both information sharing and collaboration. To that end, mornings were for presentations and discussion, afternoons for hands-on hacking.
A link to the whole schedule is here; for my account of what happened whilst I was there, read on.
Tuesday started with a discussion on image building by Michael Hudson. Often lively and full of good information, the key steps to producing the Linaro images was the focus of conversation. Two launchpad specifications cover this effort, the first, arm-m-image-building-tool concerns improving live-helper to accommodate Linaro’s needs, the second, arm-m-image-building-console aims to produce a web based front-end for the image building tools.
Zygmunt Krynicki‘s project entitled Validation Dashboard was next (slides can be found here). An ambitious project to produce a front end visual representation for various testing tools; this effort is of great importance as validation and correctness is paramount to the software releases Linaro makes.
Another requirement for Linaro is the ability to branch and rebuild parts of the Ubuntu archive. Linaro benefits from the great effort that is put into the Ubuntu archive but as Linaro’s needs are at times, different, being able to diverge without affecting Ubuntu itself is important. This effort is being lead by James Westby.
Tuesday morning finished with Paul Larson‘s testsuite and profiler presentation. Closely related to Zygmunt’s dashboard effort, Paul is working on combing the various testsuites and profiles into one big validation effort.
At this point the guys from Code Sourcery joined us to discuss toolchain’s and related tools. Will Deacon, Matthias Klose and David Rusling joined the conversation and many points were ironed out. Linaro will benefit from the great work Code Sourcery do around GCC and related tools, producing what we think will be the industry standard tool chain for ARM based devices. A lofty goal but everyone behind the effort is confident.
Talk on tools and toolchains continued to be the focus for the rest of Tuesday and Wednesday. Code Sourcery went away with a pile of work items and the Linaro members todo lists were equally full. There was just enough time Wednesday to sit down with Dave Rusling to formally sign off the technical requirements.
As one Linux Weekly News author put it,
the list of planned achievements for the five months before the release is quite ambitious … even completing a big chunk of it would be quite an accomplishment
We believe we can do it and with the great individuals such as those at the sprint this week, the 10.11 release will be something special.
“Any intelligent fool can make things bigger and more complex… It takes a touch of genius – and a lot of courage to move in the opposite direction”.
- Albert Einstein
A little history
Perhaps a little known fact is that well over 15 billion chips have been shipped using ARM’s technologies, 1.3 billion in the last quarter of 2009 alone and as the internet goes truely mobile this is set to sky rocket. ARM have sold over 600 processor licenses to more than 200 companies and 12 of the top 20 semiconductor companies use their technologies. ARM based devices really are everywhere. In contrast, Intel have shipped just 3.3 billion to date. Renowned for their low power consumption and high performance, ARM based devices really do seem to be the holy grail of computing but why is it that Intel continues to dominates the desktop, laptop, netbook and server market?
Developing for ARM devices isn’t without its problems. There are a lot of companies all working independently on producing their own products, often duplicating effort. Kernels, boot loaders, and to a lesser extent middleware are being worked on in isolation with little in the way of standards and a common direction. This is scary for those who are used to working in the Intel world where one kernel and one boot loader will pretty much work on all compatible devices. To really push ARM devices into the standard spaces Intel currently enjoy’s, something needs to be done.
Ubuntu’s Linux on ARM initative
Canonical, creators of the renowned Ubuntu distribution, and ARM saw the need to rally around an effort to produce a modern, full-featured Linux distribution tailored for ARM devices. Together, starting in 2008, Canonical and ARM took on the task of bring Ubuntu to ARM platforms. Release 9.04, codenamed “Jaunty Jackalope” was the first Ubuntu release supporting Freescales iMX51 and Marvell’s Dove platforms. This distribution was further refined in the 9.10 Karmic Koala release and 10.04, Lucid Lynx even added support for a third ARM platform, TI’s Beagle Board. With a completely redesigned user interface, a web based office solution and many more improvements, Lucid is a magnificent release; however there is still a need for a more consolidated effort. This is where Linaro fits into the story.
What is Linaro?
Linaro is an initiative undertaken by ARM, Canonical and partners with the task of improving the state of the whole Linux on ARM ecosphere. It brings together the vast talents of the open source community and ARM’s wealth of experience in the electronics industry to work on key and game-changing projects. It will work in the various upstreams where possible and provide engineering, technical and guidance support for a wide and diverse set of problem area’s. Linaro will not just help other projects, there will also be a clear set of deliverables which will culminate Linaro’s efforts into regular 6 monthly engineering releases, starting this November.
So this is the area which gets me the most excited. As the release manager for Linaro I am responsible for making sure each and every release captures exactly what the essence of Linaro is, consolidation, collaboration, improvement and robustness. Each of these qualities are goals for the Linaro releases and to that end our first release, 10.11, will contain all of these in abundance.
Building upon the already successful Linux on ARM effort, Linaro will utilize Canonical’s Launchpad framework including bug management, code hosting and blueprints.
Just some of the high-level highlights are below. I’ll leave the other Linaro team members to blog the details about their teams efforts later.
- Help standardize the industry on common kernel versions and features.
- Improve debugging and performance analysis at the kernel level.
- Bring power management and performance improvements including boot speed reduction.
- Promote and implement device-tree’s on ARM hardware.
- Provide test ‘heads’, whole vertical software stacks and distributions, to show what can be done on top of Linaro.
- Explore integrating telephony right into the distribution.
- Improve the state of graphics acceleration.
- Provide QA and validation harnesses to ensure anything built with Linaro is of the highest standard.
- Offer performance analysis and suggestions on how to improve.
- Supply a whole host of development, archive and image management, and distribution creation and customization tools.
And much, much more. A full list of blueprints which capture what we are trying to achieve can be found on the Linaro wiki.
For more information on the Linaro initiative please see the official website and the wiki. We have mailing lists and a Launchpad project page and I invite you all to come and participate in this exciting and ground-breaking venture.
So whats next? Well, the famous words of Albert Einstein that opened this post are most relevant here. We are the Genius’s trying to make ARM development both easier and simpler. So with courage and a bit of luck, Linaro will succeed in bring Linux and ARM to a whole new level.