Why K2?
Modern mobile System-on-chip(SoC) often embraces heterogeneous cores that are hosted in separate coherence domains, i.e. no hardware coherence among them. This architecture promises high energy efficiency, however complicates software development, thus preventing the energy efficiency from being harvested by software.
Can we ease software development by properly constructing OS for such an architecture? To answer this question, we create K2. As a refactoring of Linux 3.4, K2 reuses most of the existing Linux source. Spanning heterogeneous coherence domains, K2 provides a single system image, preserves the current OS performance, and finally ensures high energy efficiency.
K2 runs on Texas Instruments OMAP4430/4460 SoC, the hearts of Samsung Galaxy Nexus, Amazon Kindle Fire, Google Glass, etc. OMAP4 incorporates both the powerful ARM Cortex-A9 and the low-power ARM Cortex-M3.
Publications
-
[ASPLOS’14] "K2: A Mobile Operating System for Heterogeneous Coherence Domains," Felix Xiaozhu Lin, Zhen Wang, and Lin Zhong, in Proc. ACM Int. Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS), March 2014. Best Paper Award
-
[HotPower’12] "Supporting Distributed Execution of Smartphone Workloads on Loosely Coupled Heterogeneous Processors," Felix Xiaozhu Lin, Zhen Wang, and Lin Zhong, in Proc. the 2012 Workshop on Power-Aware Computing and Systems (HotPower), October 2012.
Software
Quick start:
wget https://dl.dropboxusercontent.com/u/4159218/K2/release/k2-panda.img.gz gzip -dc k2-panda.img.gz | dd of=/dev/sdX
For detailed instructions see here.
For obtaining and building from the source, see instructions.
Here are our notes.
Acknowledgement
-
K2 was supported in part by NSF CAREER Award #1054693.
-
The current K2 implementation is based on ARM Linux 3.4 released by Linaro TI landing team (tilt).
-
K2 has benefited from the linux-panda project at NICTA, in particular:
-
A portion of the M3 kernel and user code is from, or is derived from linux-panda.
-
Most of the M3 user-space toolchain is from linux-panda-m3-toolchain.
-
People
K2 is being developed at Rice Efficient Computing Group.
- Faculty
- PhD students
-
Felix Xiaozhu Lin (Lead)
Zhen Wang
This page is generated with asciidoc. source