节点文献

基于MPCore与Linux的中断亲和性研究

Research on interrupt affinity based on MPCore and Linux

  • 推荐 CAJ下载
  • PDF下载
  • 不支持迅雷等下载工具,请取消加速工具后下载。

【作者】 王伟都思丹

【Author】 Wang Wei,Du Si-Dan(Department of Electronic Science and Engineering, Nanjing University, Nanjing, 210093, China)

【机构】 南京大学电子科学与工程系

【摘要】 对Linux操作系统环境下中断任务的处理器亲和性进行了分析研究,提出了利用中断亲和性平衡处理器的中断负载,改进多核MPCore系统性能的方法.首先对MPCore特有的分布式中断控制器工作机制进行了研究,然后详细分析了中断亲和性在Linux内核中的实现原理以及特定条件下的中断迁移策略,指出中断亲和性在改进系统性能方面可以有静态和动态两种实现方式.在静态方式下,分析了中断亲和性可以提高系统性能的原因以及适用范围;在动态方式下,提出了一种动态负载均衡算法,实验结果表明该算法可以有效地分配中断任务到多个处理器上运行,避免单处理器负载过重,从而提高整个系统的性能.

【Abstract】 A detailed research on interrupt affinity based on the Linux OS(operating system) is studied and a novel interrupt load balancing method for MPCore implementing the ARM11 micro architecture is presented in this paper. Interrupt affinity implemented in the Linux kernel offers great advantages in enhancing the performance of multiprocessor system. Under this architecture, interrupt tasks can be bound to specific processors to obtain the best execution performance. And further, one processor can avoid saturating with interrupt load quickly while the other processors are idle. The realization of interrupt affinity is dependent on the interrupt controller. As an embedded multiprocessor, MPCore uses Distributed Interrupt Controller to manage all interrupts. The controller’s function is similar to APIC which is widely used on the x86 platforms. To fully excavate the parallelism performance of multiprocessor, interrupts are distributed across processors by the controller. In this paper, firstly the model of the MPCore’s specific controller and its working principle have been studied in detail. And then, further research on the implementation of interrupt affinity in recent Linux kernel based on the controller is made. It shows that: when interrupt affinity is set in kernel space, only the first processor in the bit mask of the allowed processors will be set up to handle interrupt tasks; then, if one processor is disabled, kernel migrates interrupts from that processor to others which remain online by modifying the affinity bit mask, and some migration strategies are adopted; also, a proc interface for user space to manage the interrupt affinity dynamically is provided by kernel. Finally, a new interrupt load balancing method using interrupt affinity is proposed to enhance the MPCore’s performance. Two modes may work, i.e. statically assigning tasks between processors and dynamically workloads balancing. This paper analyzes the cause of performance improvement, and presents an algorithm for dynamically workloads balancing. The experimental results indicate that the algorithm is effective in distributing interrupt tasks across several processors and avoiding single processor saturating with heavy loads.

【基金】 国家自然科学基金(60832003)
  • 【文献出处】 南京大学学报(自然科学版) ,Journal of Nanjing University(Natural Sciences) , 编辑部邮箱 ,2009年01期
  • 【分类号】TP332;TP316.81
  • 【被引频次】15
  • 【下载频次】192
节点文献中: 

本文链接的文献网络图示:

本文的引文网络