- Exploring The Performance Impact of PGO and LTO on ARM– Mon, August 13, 5:00 PM
Abstract: Profile guided and linked time optimisation (PGO and LTO) are two of GCC’s cross program optimisations that should improve both the startup and runtime of typical programs. We know that they basically work on ARM but don’t know the potential speed up or the work involved in proper support. This session will cover the planning and investigation needed before starting on PGO or LTO:
- What are the expected benefits?
- What needs to be done to fully enable them on ARM?
- What features exist on other architectures that we should add?
- What ARM specific improvements can we make?
- How do we demonstrate it?
- Bootstrapping OpenEmbedded for ARMv8’s AArch64– Mon, August 13, 10:00 PM
Abstract: The goal of this session is to discuss the necessary steps to properly enable ARMv8 support in OpenEmbedded, taking into account all the ARMv8 related components supported by Linaro (Kernel, Toolchain, FastModels), and connecting the effort with the infrastructure and tools we have.Background: During the last ARMv8 LEB discussion session that happened at Connect, it was decided that the initial focus would be having a small cross-buildable rootfs, which would enable the distribution vendors to bootstrap for ARMv8, and which could be used in FastModels to provide a minimal SDK enviroment with chroot access. In order to accelerate distro enablement, OpenEmbedded was chosen to be used, since it’s the easiest way to bootstrap new architectures. It also allows us to quickly test and validate the toolchain for ARMv8 support.
- Breaking New Ground Through Host-Side Test Automation (with LAVA)– Tue, August 14, 4:00 AM
Abstract: LAVA testing is currently done with lava-test which runs on the target and lava-android-test which runs host side. As LAVA matures, its becoming clear that lava-test’s target-based approach needs to change. Additionally, LAVA needs to incorporate data from external sources like power measurement devices. It also needs to work with OpenEmbedded. All these forces are leading to a new, consolidated host-side based approach for LAVA that pulls in concepts previously discussed such as “test buddies” and “black box testing”.The goals of this session are:
- defining what this new architecture will look like
- how does this fit with SD-Mux, Master Image, FastModels
- how does it work with Android and traditional Linux
- ensure it supports things like power measurement or HDMI capture
- building a road-map to get there
- Streamlining Manual QA Testing of ARM Devices– Tue, August 14, 5:00 PM
Abstract: The Linaro QA Services team currently tracks results, for both manual and automated tests, of daily builds, weekly snapshots, and release candidate images. This is done for both Ubuntu and Android platform builds on all supported Linaro member devices. That’s a lot of testing, and a lot of test results!The time it takes to run many of the manual tests means that we have limited capacity for adding new tests, and even completing existing tests. This problem can be easily exacerbated by adding new images, respins, and one-off tests that are often needed. We’d like to address that by optimizing the way we execute and collect results. Goals for this session:
- Briefly review existing tests
- Establish a rough priority for the tests
- Determine if some of the existing tests can be easily automated with LAVA and moved out of manual testing
- Determine if some of tests can be made to run faster through the use of scripts baked into the build, or run remotely, even if they can’t be fully automated yet.
- Single Kernel Binary for ARM Devices: A Health Check– Tue, August 14, 10:00 PM
Abstract: One of the issues that Linaro engineering has been tackling over the last year, and which all of our work (Device Tree, driver consolidation, etc) helps in solving, is that of needing a different kernel binary for every single ARM based platform. As ARM moves beyond the consumer space and into the prosumer and enterprise market, it is critical to be able to build a single kernel to boot on any off-the-shelf ARM platform. In this session, we will provide a status update on this work and have a discussion on what works remains to provide a single binary that boots across the Linaro member platforms.
- Android and Traditional Linux: Differences and Convergence Plans – Wed, August 15, 4:00 AM
Abstract: We’re going to talk about the existing differences between Android and traditional Linux. Android has done a great deal to advance the state-of-the art including Dalvik, Binder, productization and multi-SoC development. Android usefulness and extremely forward thinking AOSP release process has also inspired users to take advantage of Android in unique and creative ways. As Android moves into the embedded system mainstream, developers are seeking the same tools that they’ve come to depend on preintegrated into the Android platforms they’re using.
- The big.LITTLE MP Roadmap– Wed, August 15, 5:00 PM
- Bridging the Gaps in the Android and Linux Graphics Stacks– Wed, August 15, 10:00 PM
- A closer look at Dalvik and native performance on the Cortex A9 and A15– Thu, August 16, 4:00 AM
Abstract: This session will talk about Dalvik and native performance measurement and preliminary improvements on the A9 and A15. It will feature an overview of the tools we currently use to characterize improvements, were we’re looking for improvements and future plans to optimize Dalvik and native code running on Cortex A9 and A15. We hope this session will not only give us a chance to talk about what’s been done, but also get feedback on additional things we can do.
- Analyzing vectorizer performance regressions in GCC 4.7 and 4.8– Thu, August 16, 5:00 PM
Abstract: GCC has a decent loop and straight line vectoriser that recognises data-parallel code and optimises them into the parallel, NEON based equivalent. We know that it works well on some cases and can show a ~400 % improvement, but doesn’t trigger on some expected cases and causes significant regressions in some of our standard benchmarks.This session includes the state of the nation, remaining regressions, and the work we already have planned. We’ll confirm some of the benchmarks that regress, and some where the vectoriser should apply but doesn’t. The outcome will be an updated and extended list of vectoriser work areas any benchmarks that we should add to watch for performance regressions and particularly bad code.
- Adding support for new Android platforms in Linaro, Summer Edition– Thu, August 16, 10:00 PM
Abstract: This session will talk about adding support for new Android platforms in Linaro. It will cover a little bit of history and talk about people that are currently using Linaro’s Android builds and tools. We hope this session will not only give us a chance to talk about what’s available, but also get feedback on additional things we may need.
- Collecting Linux test results in QA Dashboards for LAVA– Fri, August 17, 4:00 AM
Abstract: LAVA has the ability to summarize quality information across builds, boards and tests in graphical dashboards. Some great work has already been done on mocking up new dashboards to help with QA efforts around our releases, and on implementation by the LAVA team of features that will help with this — including a dashboard for analyzing daily builds. This momentum should continue so that we complete the objective of moving end-to-end results tracking and reporting into LAVA.Goals for this session:
- Review existing views for features still needed
- Review mockups of future views planned, see if there are any additional view or features needed that we can identify now
- Identify reports needed at release time, and how we can generate those in LAVA
- Idling SoCs in a busy world: cpuidle, hotplug and beyond– Fri, August 17, 5:00 PM
- Bringing ARM STM support to Linux: A Status Update– Fri, August 17, 10:00 PM
Abstract: The System Trace Macrocell block on modern ARM SOCs implements support for MIPIs System Trace Protocol (http://goo.gl/MFVbI), allowing for debug messages from various on chip sources (CPU complex, DSPs, co-processors, etc) to be multiplexed over a single HW interface.From the Linux side, the STM block is a sink for debug information from the kernel (printk, ftrace) and from user space applications. Until recently, there have been several implementations of STM support in Linux from various Linaro members but these are being consolidated into a single driver stack to be merged into the upstream kernel. This work requires integration into several kernel areas and in this session we will go over the current status and next steps in providing a unified codebase.
- Functional Regression Testing for Graphical Environments – Sat, August 18, 4:00 AM
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.