Hasty Briefsbeta

双语

SuperPass: Fast-Tracking Blocking Threads to Mitigate Priority Inversion

9 hours ago
  • 优先级反转在Android上频繁发生,导致高优先级线程(如UI线程)被低优先级线程阻塞长达210毫秒,从而造成丢帧。
  • 现有的实时系统解决方案(如优先级继承、实时UI提升、代理执行)无法消除Android上的长时间优先级反转阻塞,且可能引入高开销。
  • 两个关键洞察:长时间阻塞源于低优先级阻塞线程累积的CPU等待时间,而非临界区延迟;跟踪有限数量的并发读取器足以在低开销下实现良好的响应性。
  • SuperPass是一种轻量级内核机制,通过使用调度器快速通道和锁级别检测器来快速追踪阻塞延迟关键线程的低优先级线程,从而识别大多数此类线程。
  • 在Google Pixel 8上的评估显示:99.9百分位阻塞持续时间减少72.0%,阻塞次数减少47.7%,卡顿帧减少29.2%,仅增加0.74%的CPU开销。