Lines Matching refs:affinity
81 KAFFINITY affinity; // affinity mask. member
134 Thread::Affinity affinity(allocator); in all() local
143 if ((group.affinity >> coreIdx) & 1) { in all()
145 affinity.cores.emplace_back(std::move(core)); in all()
158 affinity.cores.emplace_back(std::move(core)); in all()
170 affinity.cores.emplace_back(std::move(core)); in all()
179 return affinity; in all()
183 Affinity&& affinity, in anyOf() argument
186 Affinity affinity; in anyOf() member
187 Policy(Affinity&& affinity) : affinity(std::move(affinity)) {} in anyOf()
191 auto count = affinity.count(); in anyOf()
193 return Affinity(affinity, allocator); in anyOf()
195 auto group = affinity[threadId % affinity.count()].windows.group; in anyOf()
198 for (auto core : affinity.cores) { in anyOf()
205 return Affinity(affinity, allocator); in anyOf()
210 return allocator->make_shared<Policy>(std::move(affinity)); in anyOf()
214 Affinity&& affinity, in oneOf() argument
217 Affinity affinity; in oneOf() member
218 Policy(Affinity&& affinity) : affinity(std::move(affinity)) {} in oneOf()
221 auto count = affinity.count(); in oneOf()
223 return Affinity(affinity, allocator); in oneOf()
225 return Affinity({affinity[threadId % affinity.count()]}, allocator); in oneOf()
229 return allocator->make_shared<Policy>(std::move(affinity)); in oneOf()
283 Thread::Thread(Affinity&& affinity, Func&& func) { in Thread() argument
297 auto count = affinity.count(); in Thread()
299 groupAffinity.Group = affinity[0].windows.group; in Thread()
301 auto core = affinity[i]; in Thread()
362 Impl(Affinity&& affinity, Thread::Func&& f) in Impl() argument
363 : affinity(std::move(affinity)), func(std::move(f)), thread([this] { in Impl()
368 Affinity affinity; member in marl::Thread::Impl
373 auto count = affinity.count(); in setAffinity()
382 CPU_SET(affinity[i].pthread.index, &cpuset); in setAffinity()
390 CPU_SET(affinity[i].pthread.index, &cpuset); in setAffinity()
401 Thread::Thread(Affinity&& affinity, Func&& func) in Thread() argument
402 : impl(new Thread::Impl(std::move(affinity), std::move(func))) {} in Thread()