This work is motivated by the needs to synchronize task executions where tasks might use semaphores to protect their critical sections and run over accelerators. In particular, the Priority Ceiling Protocol is extended to manage priority inversion caused by accelerator usages. By recognizing the difference between an accelerator and a semaphore, higher-priority tasks are less likely blocked by lower-priority tasks, due to their requests for an accelerator. In particular, blocking that will not contribute to any deadlock and/or chained blocking is allowed in a managed way, with an objective to maximize the utilization of accelerators. A series of experiments is then conducted to derive insights to task synchronization when accelerators might be used.
Ravindra JejurikarRajesh K. Gupta
Ravindra JejurikarRajesh K. Gupta
Lin-Fong FanTing-Hao TsaiYa-Shu ChenShian-Shing Shyu
Ting-Hao TsaiLin-Fong FanYa-Shu ChenTien-Shun Yao