1big.LITTLE is a form of heterogeneous computing that comes with two
2types of general purpose cpu cores: big cores, more powerful and with a
3higher power consumption rate, and LITTLE cores, less powerful and
4cheaper to run. For example, Cortex A53 and Cortex A57 cpus. Typically,
5big cores are only recommended for burst activity, especially in
6battery powered environments. Please note that Xen doesn't not use any
7board specific power management techniques at the moment, it only uses
8WFI. It is recommended to check the vendor's big.LITTLE and power
9management documentation before using it in a Xen environment.
10
11
12big and LITTLE cores are fully compatible in terms of instruction sets,
13but can differ in many subtle ways. For example, their cacheline sizes
14might differ. For this reason, vcpu migration between big and LITTLE
15cores can lead to data corruptions.
16
17Today, the Xen scheduler does not have support for big.LITTLE,
18therefore, it might unknowingly move any vcpus between big and LITTLE
19cores, potentially leading to breakages. To avoid this kind of issues,
20at boot time Xen disables all cpus that differ from the boot cpu.
21
22
23Expert users can enable all big.LITTLE cores by passing hmp-unsafe=true
24to the Xen command line [1]. Given the lack of big.LITTLE support in the
25scheduler, it is only safe if the cpu affinity of all domains is
26manually specified, so that the scheduler is not allowed to switch a
27vcpu from big to LITTLE or vice versa.
28
29In the case of dom0, dom0_vcpus_pin needs to be added to the Xen command
30line options [1]. For DomUs, the `cpus' option should be added to all VM
31config files [2].
32
33For example, if the first 4 cpus are big and the last 4 are LITTLE, the
34following options run all domain vcpus on either big or LITTLE cores
35(not both):
36
37  cpus = "0-3"
38  cpus = "4-7"
39
40The following option runs one domain vcpu as big and one as LITTLE:
41
42  cpus = ["0-3", "4-7"]
43
44
45[1] docs/misc/xen-command-line.markdown
46[2] docs/man/xl.cfg.pod.5
47