/foundation/resourceschedule/ffrt/src/dfx/perf/ |
H A D | ffrt_perf.h | 80 inline void FFRTPerfWorkerIdle(int qos) in FFRTPerfWorkerIdle() argument 82 if (qos >= 0 && qos < static_cast<int>(PerfEU::qos_max)) { in FFRTPerfWorkerIdle() 83 FFRT_TRACE_COUNT(PerfEU::worker_num_tag[qos], in FFRTPerfWorkerIdle() 84 PerfEU::worker_num[qos].fetch_sub(1, std::memory_order_relaxed) - 1); in FFRTPerfWorkerIdle() 88 inline void FFRTPerfWorkerAwake(int qos) in FFRTPerfWorkerAwake() argument 90 if (qos >= 0 && qos < static_cast<int>(PerfEU::qos_max)) { in FFRTPerfWorkerAwake() 91 FFRT_TRACE_COUNT(PerfEU::worker_num_tag[qos], in FFRTPerfWorkerAwake() 92 PerfEU::worker_num[qos] in FFRTPerfWorkerAwake() 96 FFRTPerfWorkerWake(int qos) FFRTPerfWorkerWake() argument 103 FFRTPerfTaskNum(int qos, int taskn) FFRTPerfTaskNum() argument [all...] |
/foundation/resourceschedule/ffrt/test/ut/ |
H A D | deadline_test.cpp | 59 qos qos = qos_deadline_request; in HWTEST_F() local 61 interval qi = qos_interval_create(deadline_us, qos); in HWTEST_F() 64 qos = qos_max + 1; in HWTEST_F() 65 interval qi1 = qos_interval_create(deadline_us, qos); in HWTEST_F() 80 qos qos = qos_max + 1; in HWTEST_F() local 82 interval qi1 = qos_interval_create(deadline_us, qos); in HWTEST_F() 97 qos qos in HWTEST_F() local 111 qos qos = qos_max + 1; HWTEST_F() local 128 qos qos = qos_max + 1; HWTEST_F() local 144 qos qos = qos_deadline_request; HWTEST_F() local 161 qos qos = qos_deadline_request; HWTEST_F() local [all...] |
H A D | worker_manager_test.cpp | 64 QoS* qos = new QoS(); in HWTEST_F() local 65 cm->JoinRtg(*qos); in HWTEST_F() 76 QoS* qos = new QoS(ffrt_qos_deadline_request); in HWTEST_F() local 77 ThreadGroup* tg = cm->JoinTG(*qos); in HWTEST_F() 93 QoS* qos = new QoS(); in HWTEST_F() local 94 cm->LeaveTG(*qos); in HWTEST_F()
|
/foundation/resourceschedule/ffrt/src/eu/ |
H A D | cpu_monitor.cpp | 68 for (auto qos = QoS::Min(); qos < QoS::Max(); ++qos) { in SetupMonitor() 69 ctrlQueue[qos].maxConcurrency = DEFAULT_MAXCONCURRENCY; in SetupMonitor() 70 if (qos > qos_max) { in SetupMonitor() 71 ctrlQueue[qos].hardLimit = DEFAULT_HARDLIMIT - DEFAULT_SINGLE_NUM; in SetupMonitor() 72 ctrlQueue[qos].reserveNum = 0; in SetupMonitor() 73 qosWorkerConfig.mQosWorkerCfg[qos].reserveNum = 0; in SetupMonitor() 74 qosWorkerConfig.mQosWorkerCfg[qos].hardLimit = DEFAULT_HARDLIMIT - DEFAULT_SINGLE_NUM; in SetupMonitor() 77 ctrlQueue[qos] in SetupMonitor() 136 unsigned int qos = qosData->qosConfigArray[i].qos; QosWorkerNumValid() local 268 IsExceedRunningThreshold(const QoS& qos) IsExceedRunningThreshold() argument 283 TimeoutCount(const QoS& qos) TimeoutCount() argument 295 WakeupCount(const QoS& qos, bool isDeepSleepWork) WakeupCount() argument 304 DoDestroy(const QoS& qos) DoDestroy() argument 314 WakedWorkerNum(const QoS& qos) WakedWorkerNum() argument 321 SleepingWorkerNum(const QoS& qos) SleepingWorkerNum() argument 328 HasDeepSleepWork(const QoS& qos) HasDeepSleepWork() argument 335 IntoDeepSleep(const QoS& qos) IntoDeepSleep() argument 343 OutOfDeepSleep(const QoS& qos) OutOfDeepSleep() argument 353 IntoPollWait(const QoS& qos) IntoPollWait() argument 361 OutOfPollWait(const QoS& qos) OutOfPollWait() argument 415 TryAcquirePublicWorkerNum(const QoS& qos) TryAcquirePublicWorkerNum() argument 420 ReleasePublicWorkerNum(const QoS& qos) ReleasePublicWorkerNum() argument 453 Poke(const QoS& qos, uint32_t taskCount, TaskNotifyType notifyType) Poke() argument 500 NotifyWorkers(const QoS& qos, int number) NotifyWorkers() argument 530 HandleTaskNotifyDefault(const QoS& qos, void* p, TaskNotifyType notifyType) HandleTaskNotifyDefault() argument 550 PokeAdd(const QoS& qos) PokeAdd() argument 583 PokePick(const QoS& qos) PokePick() argument [all...] |
H A D | cpu_monitor.h | 23 #include "qos.h" 55 virtual SleepType IntoSleep(const QoS& qos) = 0; 56 virtual void WakeupCount(const QoS& qos, bool isDeepSleepWork = false); 57 void IntoDeepSleep(const QoS& qos); 58 void OutOfDeepSleep(const QoS& qos); 59 void TimeoutCount(const QoS& qos); 61 void IntoPollWait(const QoS& qos); 62 void OutOfPollWait(const QoS& qos); 63 void DoDestroy(const QoS& qos); 65 bool IsExceedRunningThreshold(const QoS& qos); [all...] |
H A D | worker_thread.cpp | 27 #include "qos.h" 32 WorkerThread::WorkerThread(const QoS& qos) : exited(false), idle(false), tid(-1), qos(qos) in WorkerThread() argument 36 size_t stackSize = FFRTFacade::GetEUInstance().GetGroupCtl()[qos()].workerStackSize; in WorkerThread() 42 domain_id = (qos() <= BLOCKAWARE_DOMAIN_ID_MAX) ? qos() : BLOCKAWARE_DOMAIN_ID_MAX + 1; in WorkerThread() 50 SetThreadAttr(this, qos); in NativeConfig() 56 std::string qosStr = std::to_string(qos()); in WorkerSetup() 58 std::string(WORKER_THREAD_SYMBOL) + std::to_string(threadIndex[qos()] in WorkerSetup() 81 SetThreadAttr(WorkerThread* thread, const QoS& qos) SetThreadAttr() argument [all...] |
H A D | cpuworker_manager.cpp | 18 #include "qos.h" 35 void InsertTask(void* task, int qos) in InsertTask() argument 39 if (!ffrt::FFRTFacade::GetSchedInstance()->InsertNode(node, qos)) { in InsertTask() 46 bool CPUWorkerManager::IncWorker(const QoS& qos) in IncWorker() argument 48 QoS localQos = qos; in IncWorker() 51 FFRT_LOGE("IncWorker qos:%d is invaild", workerQos); in IncWorker() 69 FFRT_LOGE("qos:%d worker insert fail:%d", workerQos, result.second); in IncWorker() 80 int CPUWorkerManager::GetTaskCount(const QoS& qos) in GetTaskCount() argument 82 auto& sched = FFRTFacade::GetSchedInstance()->GetScheduler(qos); in GetTaskCount() 86 int CPUWorkerManager::GetWorkerCount(const QoS& qos) in GetWorkerCount() argument 155 NotifyLocalTaskAdded(const QoS& qos) NotifyLocalTaskAdded() argument 170 int qos = static_cast<int>(thread->GetQos()); WorkerRetired() local 194 NotifyTaskAdded(const QoS& qos) NotifyTaskAdded() argument 199 NotifyWorkers(const QoS& qos, int number) NotifyWorkers() argument 209 WorkerJoinTg(const QoS& qos, pid_t pid) WorkerJoinTg() argument 228 WorkerLeaveTg(const QoS& qos, pid_t pid) WorkerLeaveTg() argument [all...] |
H A D | cpuworker_manager.h | 41 void NotifyTaskAdded(const QoS& qos) override; 42 void NotifyLocalTaskAdded(const QoS& qos) override; 43 void NotifyWorkers(const QoS& qos, int number) override; 45 std::mutex* GetSleepCtl(int qos) override 47 return &sleepCtl[qos].mutex; 50 void AddStealingWorker(const QoS& qos) in AddStealingWorker() argument 52 stealWorkers[qos].fetch_add(1); in AddStealingWorker() 55 void SubStealingWorker(const QoS& qos) in SubStealingWorker() argument 58 uint64_t stealWorkersNum = stealWorkers[qos].load(); in SubStealingWorker() 62 if (atomic_compare_exchange_weak(&stealWorkers[qos], in SubStealingWorker() 66 GetStealingWorkers(const QoS& qos) GetStealingWorkers() argument [all...] |
H A D | scpuworker_manager.cpp | 52 for (auto qos = QoS::Min(); qos < QoS::Max(); ++qos) { in ~SCPUWorkerManager() 55 pollersMtx[qos].unlock(); in ~SCPUWorkerManager() 56 FFRTFacade::GetPPInstance().GetPoller(qos).WakeUp(); in ~SCPUWorkerManager() 57 sleepCtl[qos].cv.notify_all(); in ~SCPUWorkerManager() 60 std::shared_lock<std::shared_mutex> lck(groupCtl[qos].tgMutex); in ~SCPUWorkerManager() 61 if (groupCtl[qos].threads.empty()) { in ~SCPUWorkerManager() 68 FFRT_LOGE("erase qos[%d] threads failed", qos); in ~SCPUWorkerManager() 74 AddDelayedTask(int qos) AddDelayedTask() argument 209 WakeupWorkers(const QoS& qos) WakeupWorkers() argument 221 CreateCPUWorker(const QoS& qos, void* manager) CreateCPUWorker() argument [all...] |
H A D | execute_unit.h | 34 ThreadGroup* BindTG(const DevType dev, QoS& qos); 35 void UnbindTG(const DevType dev, QoS& qos); 36 void BindWG(const DevType dev, QoS& qos); 38 void NotifyTaskAdded(const QoS& qos) in NotifyTaskAdded() argument 41 wManager[static_cast<size_t>(DevType::CPU)]->NotifyTaskAdded(qos); in NotifyTaskAdded() 45 void NotifyWorkers(const QoS& qos, int number) in NotifyWorkers() argument 48 wManager[static_cast<size_t>(DevType::CPU)]->NotifyWorkers(qos, number); in NotifyWorkers() 52 void NotifyLocalTaskAdded(const QoS& qos) in NotifyLocalTaskAdded() argument 55 wManager[static_cast<size_t>(DevType::CPU)]->NotifyLocalTaskAdded(qos); in NotifyLocalTaskAdded() 59 std::mutex* GetSleepCtl(int qos) in GetSleepCtl() argument [all...] |
H A D | worker_manager.h | 47 ThreadGroup* JoinTG(QoS& qos); 48 void LeaveTG(QoS& qos); 49 void JoinRtg(QoS& qos); 51 virtual bool IncWorker(const QoS& qos) = 0; 53 virtual void NotifyTaskAdded(const QoS& qos) = 0; 54 virtual void NotifyLocalTaskAdded(const QoS& qos) = 0; 55 virtual void NotifyWorkers(const QoS& qos, int number) = 0; 56 virtual std::mutex* GetSleepCtl(int qos) = 0;
|
H A D | worker_manager.cpp | 20 void WorkerManager::JoinRtg(QoS& qos) in JoinRtg() argument 22 auto& tgwrap = groupCtl[qos]; in JoinRtg() 32 ThreadGroup* WorkerManager::JoinTG(QoS& qos) in JoinTG() argument 34 auto& tgwrap = groupCtl[qos]; in JoinTG() 59 void WorkerManager::LeaveTG(QoS& qos) in LeaveTG() argument 61 auto& tgwrap = groupCtl[qos]; in LeaveTG() 73 if (qos != qos_user_interactive) { in LeaveTG() 74 for (auto& thread : groupCtl[qos].threads) { in LeaveTG()
|
H A D | cpu_manager_interface.h | 20 #include "qos.h" 60 std::function<bool (const QoS& qos)> IncWorker; 61 std::function<void (const QoS& qos)> WakeupWorkers; 62 std::function<int (const QoS& qos)> GetTaskCount; 63 std::function<int (const QoS& qos)> GetWorkerCount; 64 std::function<void (const QoS& qos, void*, TaskNotifyType)> HandleTaskNotity; 70 static WorkerThread* CreateCPUWorker(const QoS& qos, void* manager);
|
H A D | execute_unit.cpp | 38 ThreadGroup* ExecuteUnit::BindTG(const DevType dev, QoS& qos) in BindTG() argument 40 return wManager[static_cast<size_t>(dev)]->JoinTG(qos); in BindTG() 43 void ExecuteUnit::BindWG(const DevType dev, QoS& qos) in BindWG() argument 45 return wManager[static_cast<size_t>(dev)]->JoinRtg(qos); in BindWG() 48 void ExecuteUnit::UnbindTG(const DevType dev, QoS& qos) in UnbindTG() argument 50 wManager[static_cast<size_t>(dev)]->LeaveTG(qos); in UnbindTG()
|
/foundation/resourceschedule/ffrt/src/dfx/trace_record/ |
H A D | ffrt_trace_record.h | 72 static inline void AddSubmitCounter(int qos) in AddSubmitCounter() argument 75 g_recordTaskCounter_[taskType][qos].submitCounter.fetch_add(1, std::memory_order_relaxed); in AddSubmitCounter() 88 static inline void TaskSubmit(int qos) in TaskSubmit() argument 93 AddSubmitCounter<taskType>(qos); in TaskSubmit() 105 static inline void TaskSubmit(int qos, uint64_t* createTime, int32_t* fromTid) in TaskSubmit() argument 110 AddSubmitCounter<taskType>(qos); in TaskSubmit() 122 static inline void TaskExecute(int qos) in TaskExecute() argument 125 g_recordTaskCounter_[taskType][qos].runCounter.fetch_add(1, std::memory_order_relaxed); in TaskExecute() 130 static inline void TaskDone(int qos) in TaskDone() argument 133 g_recordTaskCounter_[taskType][qos] in TaskDone() 138 TaskDone(int qos, TaskBase* task) TaskDone() argument 157 TaskEnqueue(int qos) TaskEnqueue() argument 165 TaskCancel(int qos) TaskCancel() argument 172 TaskRun(int qos, TaskBase* task) TaskRun() argument 186 WorkRecord(int qos, int workerNum) WorkRecord() argument [all...] |
/foundation/resourceschedule/ffrt/src/sched/ |
H A D | qos.h | 25 typedef int (*FuncQosMap)(int qos); 29 int QoSMap(int qos); 39 QoS(int qos = qos_default) in QoS() 41 if (qos < static_cast<int>(qos_inherit)) { in QoS() 42 qos = qos_inherit; in QoS() 43 } else if (qos > static_cast<int>(qos_max)) { in QoS() 44 qos = qos_max; in QoS() 46 qos_ = qos; in QoS() 49 QoS(const QoS& qos) : qos_(qos()) in QoS() argument [all...] |
H A D | qos.cpp | 15 #include "qos.h" 18 int QoSMap(int qos) in QoSMap() argument 20 if (qos <= static_cast<int>(qos_inherit)) { in QoSMap() 22 } else if (qos >= static_cast<int>(qos_background) && in QoSMap() 23 qos <= static_cast<int>(qos_max)) { in QoSMap() 24 return qos; in QoSMap()
|
H A D | deadline.cpp | 28 QosIntervalPrivate(uint64_t deadlineUs, const QoS& qos) in QosIntervalPrivate() argument 30 if (qos == qos_user_interactive) { in QosIntervalPrivate() 31 it = std::make_unique<FrameInterval>(deadlineUs, qos); in QosIntervalPrivate() 33 it = std::make_unique<DefaultInterval>(deadlineUs, qos); in QosIntervalPrivate() 55 ffrt_interval_t ffrt_interval_create(uint64_t deadline_us, ffrt_qos_t qos) in ffrt_interval_create() argument 57 if (qos < static_cast<int>(ffrt_qos_deadline_request) || qos > static_cast<int>(ffrt_qos_user_interactive)) { in ffrt_interval_create() 62 return new ffrt::QosIntervalPrivate(deadline_us, qos); in ffrt_interval_create()
|
/foundation/resourceschedule/ffrt/src/sync/ |
H A D | poller_api.cpp | 21 static bool QosConvert(ffrt_qos_t qos, ffrt::QoS& mappedQos) in QosConvert() argument 27 mappedQos = ffrt::GetFuncQosMap()(qos); in QosConvert() 29 mappedQos = ffrt::ExecuteCtx::Cur()->qos(); in QosConvert() 35 int ffrt_epoll_ctl(ffrt_qos_t qos, int op, int fd, uint32_t events, void* data, ffrt_poller_cb cb) in ffrt_epoll_ctl() argument 38 if (!QosConvert(qos, ffrtQos)) { in ffrt_epoll_ctl() 56 int ffrt_epoll_wait(ffrt_qos_t qos, struct epoll_event* events, int max_events, int timeout) in ffrt_epoll_wait() argument 59 if (!QosConvert(qos, ffrtQos)) { in ffrt_epoll_wait() 66 void ffrt_poller_wakeup(ffrt_qos_t qos) in ffrt_poller_wakeup() argument 69 if (!QosConvert(qos, pollerQos)) { in ffrt_poller_wakeup() 77 uint8_t ffrt_epoll_get_count(ffrt_qos_t qos) in ffrt_epoll_get_count() argument [all...] |
H A D | timer_api.cpp | 22 static bool QosConvert(ffrt_qos_t qos, ffrt::QoS& mappedQos) in QosConvert() argument 28 mappedQos = ffrt::GetFuncQosMap()(qos); in QosConvert() 30 mappedQos = ffrt::ExecuteCtx::Cur()->qos(); in QosConvert() 36 ffrt_timer_t ffrt_timer_start(ffrt_qos_t qos, uint64_t timeout, void* data, ffrt_timer_cb cb, bool repeat) in ffrt_timer_start() argument 39 if (!QosConvert(qos, pollerQos)) { in ffrt_timer_start() 56 int ffrt_timer_stop(ffrt_qos_t qos, int handle) in ffrt_timer_stop() argument 59 if (!QosConvert(qos, pollerQos)) { in ffrt_timer_stop() 67 ffrt_timer_query_t ffrt_timer_query(ffrt_qos_t qos, int handle) in ffrt_timer_query() argument 70 if (!QosConvert(qos, pollerQos)) { in ffrt_timer_query()
|
/foundation/resourceschedule/qos_manager/qos/ |
H A D | qos.cpp | 23 #include "qos.h" 45 int qos = static_cast<int>(level); in SetThreadQosForOtherThread() local 47 CONCUR_LOGE("[Qos] invalid qos level %{public}d", qos); in SetThreadQosForOtherThread() 50 int ret = QosApplyForOther(qos, tid); in SetThreadQosForOtherThread() 52 CONCUR_LOGD("[Qos] qoslevel %{public}d apply for tid %{public}d success", qos, tid); in SetThreadQosForOtherThread() 54 CONCUR_LOGD("[Qos] qoslevel %{public}d apply for tid %{public}d failure", qos, tid); in SetThreadQosForOtherThread() 81 int qos = -1; in GetThreadQosForOtherThread() local 82 int ret = QosGetForOther(tid, qos); in GetThreadQosForOtherThread() 84 if (qos < static_cas in GetThreadQosForOtherThread() [all...] |
/foundation/resourceschedule/ffrt/test/ut/testcase/ |
H A D | ut_worker_manager.cpp | 62 QoS* qos = new QoS(); in HWTEST_F() local 63 cm->IncWorker(*qos); in HWTEST_F() 64 cm->JoinRtg(*qos); in HWTEST_F() 66 delete qos; in HWTEST_F() 73 QoS* qos = new QoS(-1); in HWTEST_F() local 74 cm->IncWorker(*qos); in HWTEST_F() 76 delete qos; in HWTEST_F() 83 QoS* qos = new QoS(2); in HWTEST_F() local 84 cm->GetWorkerCount(*qos); in HWTEST_F() 86 delete qos; in HWTEST_F() 93 QoS* qos = new QoS(ffrt::qos_deadline_request); HWTEST_F() local 105 QoS* qos = new QoS(ffrt::qos_deadline_request); HWTEST_F() local 186 GetTaskCountStub(const QoS& qos) GetTaskCountStub() argument [all...] |
H A D | ut_ffrt_io.cpp | 61 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; in SetUp() local 62 ffrt::FFRTFacade::GetPPInstance().GetPoller(qos).flag_ = ffrt::EpollStatus::WAKE; in SetUp() 67 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; in TearDown() local 68 ffrt::FFRTFacade::GetPPInstance().GetPoller(qos).timerHandle_ = -1; in TearDown() 69 ffrt::FFRTFacade::GetPPInstance().GetPoller(qos).timerMap_.clear(); in TearDown() 70 ffrt::FFRTFacade::GetPPInstance().GetPoller(qos).executedHandle_.clear(); in TearDown() 71 ffrt::FFRTFacade::GetPPInstance().GetPoller(qos).flag_ = ffrt::EpollStatus::TEARDOWN; in TearDown() 212 ffrt::QoS qos in HWTEST_F() local 225 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 253 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 277 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 311 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 341 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 370 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 400 ffrt::QoS qos = ffrt::ExecuteCtx::Cur()->qos; HWTEST_F() local 437 ffrt_qos_t qos = ffrt_qos_default; HWTEST_F() local 466 ffrt_qos_t qos = ffrt_qos_default; HWTEST_F() local 707 ffrt_qos_t qos = ffrt_qos_default; HWTEST_F() local 719 ffrt_qos_t qos = ffrt_qos_default; HWTEST_F() local 732 ffrt_qos_t qos = ffrt_qos_default; HWTEST_F() local [all...] |
/foundation/resourceschedule/ffrt/src/tm/ |
H A D | cpu_task.cpp | 33 this->qos = parent->qos; in SetQos() 35 this->qos = QoS(); in SetQos() 37 FFRT_LOGD("Change task %s QoS %d", label.c_str(), this->qos()); in SetQos() 39 this->qos = newQos; in SetQos() 46 PollerProxy::Instance().GetPoller(qos).ClearCachedEvents(this); in FreeMem() 74 const QoS &qos) in CPUEUTask() 75 : parent(parent), rank(id), qos(qos) in CPUEUTask() 73 CPUEUTask(const task_attr_private *attr, CPUEUTask *parent, const uint64_t &id, const QoS &qos) CPUEUTask() argument
|
/foundation/distributedhardware/distributed_camera/services/channel/test/unittest/common/channel/ |
H A D | session_mock.cpp | 30 int Listen(int32_t socket, const QosTV qos[], uint32_t qosCount, const ISocketListener *listener) in Listen() argument 33 (void)qos; in Listen() 39 int Bind(int32_t socket, const QosTV qos[], uint32_t qosCount, const ISocketListener *listener) in Bind() argument 42 (void)qos; in Bind() 87 int32_t EvaluateQos(const char *peerNetworkId, TransDataType dataType, const QosTV *qos, uint32_t qosCount) in EvaluateQos() argument 91 (void)qos; in EvaluateQos()
|