Abstract. The StrongARM processor features virtually-addressed caches and a TLB without address-space tags. A naive implementation therefore requires flushing of all CPU caches and the TLB on each context switch, which is very costly. We present an implementation of fast context switches on the architecture in both Linux and the L4 microkernel. It is based on using domain tags as address-space identifiers and delaying cache flushes until a clash of mappings is detected. We observe a reduction of the context-switching overheads by about an order of magnitude compared to the naive scheme presently implemented in Linux. We also implemented sharing of TLB entries for shared pages, a natural extension of the fast-context-switch approach. Even though the TLBs of the StrongARM are quite small and a potential bottleneck, we found that benefits from sharing TLB entries are generally marginal, and can only be expected to be significant under very restrictive conditions.
Researchers have shown that the use of Fast Address-Space Switching (FASS) support on the StrongARM processor reduces context switching overheads by an order of magnitude REF .
Implementation of fast address-space switching and TLB sharing on the StrongARM processor
In 8th Asia-Pacific Computer Systems Architecture Conference (ACSAC), Aizu-Wakamatsu City
Computer Science