Lines Matching full:workloads
77 /** Execute workloads[info.thread_id] first, then call the feeder to get the index of the next work…
79 * Will run workloads until the feeder reaches the end of its range.
81 * @param[in] workloads The array of workloads
85 void process_workloads(std::vector<IScheduler::Workload> &workloads, ThreadFeeder &feeder, const Th… in process_workloads() argument
90 ARM_COMPUTE_ERROR_ON(workload_index >= workloads.size()); in process_workloads()
91 workloads[workload_index](info); in process_workloads()
161 /** Set workloads */
162 …void set_workload(std::vector<IScheduler::Workload> *workloads, ThreadFeeder &feeder, const Thread…
164 /** Request the worker thread to start executing workloads.
166 * The thread will start by executing workloads[info.thread_id] and will then call the feeder to
169 * @note This function will return as soon as the workloads have been sent to the worker thread.
230 void Thread::set_workload(std::vector<IScheduler::Workload> *workloads, ThreadFeeder &feeder, const… in set_workload() argument
232 _workloads = workloads; in set_workload()
272 // Exit if the worker thread has not been fed with workloads in worker_thread()
419 void run_workloads(std::vector<IScheduler::Workload> &workloads);
447 // No changes in the number of threads while current workloads are running in set_num_threads()
454 // No changes in the number of threads while current workloads are running in set_num_threads_with_affinity()
465 void CPPScheduler::run_workloads(std::vector<IScheduler::Workload> &workloads) in run_workloads() argument
467 … // Mutex to ensure other threads won't interfere with the setup of the current thread's workloads in run_workloads()
468 // Other thread's workloads will be scheduled after the current thread's workloads have finished in run_workloads()
469 // This is not great because different threads workloads won't run in parallel but at least they in run_workloads()
472 … num_threads_to_use = std::min(_impl->num_threads(), static_cast<unsigned int>(workloads.size())); in run_workloads()
494 ThreadFeeder feeder(num_threads_to_use, workloads.size()); in run_workloads()
500 …// Set num_threads_to_use - 1 workloads to the threads as the remaining 1 is left to the main thre… in run_workloads()
504 thread_it->set_workload(&workloads, feeder, info); in run_workloads()
512 process_workloads(workloads, feeder, info); // Main thread processes workloads in run_workloads()