【架構分析】Apollo CyberRT Framework分析 - Scheduler調度器

目錄

Apollo Cyber RT Framework 理念

Cyber RT Framework Overview

Cyber Scheduler 詳解


 

Apollo Cyber RT Framework 理念

Apollo Cyber RT 框架核心理念是基於的組件,組件有預先設定的輸入輸出。實際上,每個組件就代表一個專用得算法模塊。框架可以根據所有預定義的組件生成有向無環圖 (DAG)

在運行時刻,框架把融合好的傳感器數據和預定義的組件打包在一起形成用戶級輕量任務,之後,框架的調度器可以根據資源可用性和任務優先級來派發這些任務

  By  Apollo開放平臺首席架構師王京傲

 

Cyber RT Framework Overview

Apollo 3.5 軟件架構圖

 

CyberRT Framework 架構圖概述

 

Cyber Scheduler 詳解

Scheduler 工作原理說明

 

Scheduler 主要類關係圖
  • Scheduler cyber調度器基類,負責把Task放到派發到對應CPU的線程中執行
  • SchedulerClassic - cyber調度器的Classic模式實現
  • SchedulerChoreography - cyber調度器Choreography模式實現
  • Processor 1Process擁有1Thread以及cpu setaffinity,線程調度策略的配置
  • ProcessContext 提供協程的切換上下文以及獲取下一個協程Croutine
  • ClassicContext - ProcessContextClassic模式實現
  • ChoreographyContext - ProcessContextChoreography模式實現

 

Scheduler 工作時序圖

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章