| /TaskScheduler/SchedulerTests/Tests/ |
| H A D | PriorityTests.cpp | 42 uint32 taskPrio; in SUITE() 43 uint32 highProcessed; in SUITE() 44 uint32 normalProcessed; in SUITE() 45 uint32 lowProcessed; in SUITE() 68 uint32 id; in SUITE() 70 TaskHigh(uint32 _id) in SUITE() 97 uint32 id; in SUITE() 130 uint32 id; in SUITE() 132 TaskLow(uint32 _id) in SUITE() 177 uint32 index = 0; in SUITE() [all …]
|
| H A D | DxtTests.cpp | 124 uint32 pixels[4*4]; in SUITE() 159 uint32 width; in SUITE() 160 uint32 height; in SUITE() 161 uint32 stride; in SUITE() 163 uint32 blkWidth; in SUITE() 164 uint32 blkHeight; in SUITE() 166 uint32 passCount; in SUITE() 173 …ssDxt(uint32 _width, uint32 _height, uint32 _stride, const MT::ArrayView<uint8> & _srcPixels, MT::… in SUITE() 279 uint32 pixels[4*4]; in SUITE() 314 uint32 blkWidth; in SUITE() [all …]
|
| H A D | AtomicTests.cpp | 100 uint32 uNowValue = test3.IncFetch(); in SUITE() 136 MT::Atomic32<uint32> isReady; in SUITE() 137 MT::Atomic32<uint32> a; in SUITE() 138 MT::Atomic32<uint32> b; in SUITE() 140 uint32 sharedValue = 0; in SUITE() 142 MT::Atomic32<uint32> simpleLock; in SUITE() 157 uint32 prevA = a.AddFetch(1); in SUITE() 158 uint32 prevB = b.AddFetch(1); in SUITE() 170 uint32 randDelay = 1 + (rand() % 4); in SUITE() 171 uint32 count = 0; in SUITE() [all …]
|
| H A D | SimpleTests.cpp | 106 uint32 counterPhase0; in SUITE() 107 uint32 counterPhase1; in SUITE() 124 uint32 TASK_COUNT_PER_WORKER = 0; in SUITE() 126 MT::Atomic32<uint32> finishedTaskCount; in SUITE() 130 MT::Atomic32<uint32> counter; in SUITE() 140 volatile WorkerThreadState* GetWorkerState( volatile uint32 workerIndex) volatile in SUITE() 152 CHECK_EQUAL((uint32)1, counter.IncFetch()); in SUITE() 163 CHECK_EQUAL((uint32)2, counter.IncFetch()); in SUITE() 201 scheduler.RunAsync(MT::TaskGroup::Default(), tasks.Begin(), (uint32)tasks.Size()); in SUITE()
|
| H A D | PlatformTests.cpp | 101 MT::Atomic32Base<uint32> needExitSignal = { 0 }; in SUITE() 102 MT::Atomic32Base<uint32> needExitWait = { 0 }; in SUITE() 103 MT::Atomic32Base<uint32> needStartWork = { 0 }; in SUITE() 164 for(uint32 i = 0; i < MT_ARRAY_SIZE(signalThreads); i++) in SUITE() 169 for(uint32 i = 0; i < MT_ARRAY_SIZE(waitThreads); i++) in SUITE() 174 printf("Signal threads num = %d\n", (uint32)MT_ARRAY_SIZE(signalThreads)); in SUITE() 175 printf("Wait threads num = %d\n", (uint32)MT_ARRAY_SIZE(waitThreads)); in SUITE() 244 for(uint32 i = 0; i < MT_ARRAY_SIZE(waitThreads); i++) in SUITE() 252 for(uint32 i = 0; i < MT_ARRAY_SIZE(signalThreads); i++) in SUITE()
|
| H A D | FiberTests.cpp | 59 uint32 microsecondsFromThreadToFiber = (uint32)(endTime - startTime); in SUITE()
|
| /TaskScheduler/Scheduler/Include/ |
| H A D | MTProfilerEventListener.h | 41 virtual void OnFibersCreated(uint32 fibersCount) = 0; 44 virtual void OnThreadsCreated(uint32 threadsCount) = 0; 47 virtual void OnThreadCreated(uint32 workerIndex) = 0; 50 virtual void OnThreadStarted(uint32 workerIndex) = 0; 53 virtual void OnThreadStoped(uint32 workerIndex) = 0; 56 virtual void OnThreadIdleStarted(uint32 workerIndex) = 0; 59 virtual void OnThreadIdleFinished(uint32 workerIndex) = 0;
|
| H A D | MTThreadContext.h | 69 const uint32 ALIVE = 0; 70 const uint32 EXIT = 1; 105 uint32 workerIndex; 119 void SetThreadIndex(uint32 threadIndex); 123 void NotifyThreadCreated(uint32 threadIndex); 124 void NotifyThreadStarted(uint32 threadIndex); 125 void NotifyThreadStoped(uint32 threadIndex); 129 void NotifyThreadIdleStarted(uint32 threadIndex); 130 void NotifyThreadIdleFinished(uint32 threadIndex);
|
| H A D | MTQueueMPMC.h | 36 template<typename T, uint32 CAPACITY> 41 static const uint32 MASK = (CAPACITY - 1); 45 Atomic32<uint32> sequence; 60 Atomic32<uint32> enqueuePos; 65 Atomic32<uint32> dequeuePos; 82 for (uint32 i = 0; i < CAPACITY; i++) in LockFreeQueueMPMC() 95 uint32 pos = enqueuePos.LoadRelaxed(); in TryPush() 100 uint32 seq = cell->sequence.Load(); in TryPush() 105 uint32 nowPos = enqueuePos.CompareAndSwap(pos, pos + 1); in TryPush() 135 uint32 pos = dequeuePos.LoadRelaxed(); in TryPop() [all …]
|
| H A D | MTScheduler.h | 177 const uint32 MT_MAX_THREAD_COUNT = 64; 178 const uint32 MT_SCHEDULER_STACK_SIZE = 1048576; // 1Mb 180 const uint32 MT_MAX_STANDART_FIBERS_COUNT = 256; 183 const uint32 MT_MAX_EXTENDED_FIBERS_COUNT = 8; 202 uint32 core; 289 uint32 waitTimeMs; 290 uint32 exitCode; 368 bool WaitGroup(TaskGroup group, uint32 milliseconds); 370 bool WaitAll(uint32 milliseconds); 388 void NotifyFibersCreated(uint32 fibersCount); [all …]
|
| H A D | MTStaticVector.h | 37 uint32 count; 73 inline StaticVector(uint32 _count, const T & defaultElement = T()) 77 for (uint32 i = 0; i < count; i++) in count() 85 for (uint32 i = 0; i < count; i++) in ~StaticVector() 91 inline const T &operator[]( uint32 i ) const 97 inline T &operator[]( uint32 i ) 106 uint32 lastElementIndex = count; in PushBack()
|
| H A D | MTTools.h | 57 uint32 GetPastMicroSeconds() const in GetPastMicroSeconds() 59 return (uint32)(MT::GetTimeMicroSeconds() - startMicroSeconds); in GetPastMicroSeconds() 62 uint32 GetPastMilliSeconds() const in GetPastMilliSeconds() 64 return (uint32)((MT::GetTimeMicroSeconds() - startMicroSeconds) / 1000); in GetPastMilliSeconds()
|
| H A D | MTFiberContext.h | 76 void RunAsync(TaskGroup taskGroup, const TaskHandle* taskHandleArray, uint32 taskHandleCount); 77 …void RunSubtasksAndYield(TaskGroup taskGroup, const TaskHandle* taskHandleArray, uint32 taskHandle… 119 uint32 fiberIndex;
|
| H A D | MTTaskQueue.h | 60 template<typename T, uint32 CAPACITY> 222 for(uint32 i = 0; i < MT_ARRAY_SIZE(queues); i++) in TaskQueue() 257 uint32 queueIndex = (uint32)item.desc.priority; in Add() 273 for(uint32 queueIndex = 0; queueIndex < TaskPriority::COUNT; queueIndex++) in TryPopOldest() 287 for(uint32 queueIndex = 0; queueIndex < TaskPriority::COUNT; queueIndex++) in TryPopNewest()
|
| H A D | MTTypes.h | 60 typedef uint32_t uint32; typedef 87 static_assert( sizeof(uint32) == 4, "Invalid type size, uint32" );
|
| H A D | MTPlatform.h | 87 uint32 state; 96 void SetSeed(uint32 seed) in SetSeed()
|
| H A D | MTColorTable.h | 180 inline uint32 ConvertToABGR(Color::Type _color) in ConvertToABGR() 182 uint32 color = _color; in ConvertToABGR() 187 uint32 result = (color & 0xFF00FF00); in ConvertToABGR()
|
| H A D | MTScheduler.inl | 102 void TaskScheduler::RunAsync(TaskGroup group, const TTask* taskArray, uint32 taskCount) 107 uint32 bytesCountForGroupedTasks = sizeof(internal::GroupedTask) * taskCount; 110 uint32 bucketCount = MT::Min((uint32)GetWorkersCount(), taskCount); 111 uint32 bytesCountForTaskBuckets = sizeof(internal::TaskBucket) * bucketCount;
|
| /TaskScheduler/Scheduler/Source/ |
| H A D | MTThreadContext.cpp | 30 static const uint32 primeNumbers[] = { 36 uint32 GetPrimeNumber(uint32 index) in GetPrimeNumber() 79 void ThreadContext::SetThreadIndex(uint32 threadIndex) in SetThreadIndex() 127 void ThreadContext::NotifyThreadCreated(uint32 threadIndex) in NotifyThreadCreated() 135 void ThreadContext::NotifyThreadStarted(uint32 threadIndex) in NotifyThreadStarted() 143 void ThreadContext::NotifyThreadStoped(uint32 threadIndex) in NotifyThreadStoped() 151 void ThreadContext::NotifyThreadIdleStarted(uint32 threadIndex) in NotifyThreadIdleStarted() 159 void ThreadContext::NotifyThreadIdleFinished(uint32 threadIndex) in NotifyThreadIdleFinished()
|
| H A D | MTFiberContext.cpp | 130 …void FiberContext::RunAsync(TaskGroup taskGroup, const TaskHandle* taskHandleArray, uint32 taskHan… in RunAsync() 141 uint32 bucketCount = MT::Min((uint32)scheduler.GetWorkersCount(), taskHandleCount); in RunAsync() 149 …RunSubtasksAndYield(TaskGroup taskGroup, const TaskHandle* taskHandleArray, uint32 taskHandleCount) in RunSubtasksAndYield() 159 uint32 bucketCount = MT::Min((uint32)scheduler.GetWorkersCount(), taskHandleCount); in RunSubtasksAndYield()
|
| H A D | MTScheduler.cpp | 51 …threadsCount.StoreRelaxed( MT::Clamp(workerThreadsCount, (uint32)1, (uint32)MT_MAX_THREAD_COUNT) ); in TaskScheduler() 58 uint32 fiberIndex = 0; in TaskScheduler() 61 for (uint32 i = 0; i < MT_MAX_STANDART_FIBERS_COUNT; i++) in TaskScheduler() 114 uint32 threadCore = i; in TaskScheduler() 345 uint32 victimIndex = threadContext.random.Get(); in TryStealTask() 349 uint32 index = victimIndex % workersCount; in TryStealTask() 684 groupStats[i].Add((uint32)groupNewTaskCount); in RunTasksImpl() 689 allGroups.Add((uint32)count); in RunTasksImpl() 728 uint32 bucketCount = MT::Min((uint32)GetWorkersCount(), taskHandleCount); in RunAsync() 772 bool TaskScheduler::WaitAll(uint32 milliseconds) in WaitAll() [all …]
|
| /TaskScheduler/SchedulerTests/Profiler/ |
| H A D | Profiler.cpp | 11 const uint32 MAX_INSTRUMENTED_WORKERS = 8; 17 uint32 totalFibersCount; 29 virtual void OnFibersCreated(uint32 fibersCount) override in OnFibersCreated() 33 for(uint32 fiberIndex = 0; fiberIndex < fibersCount; fiberIndex++) in OnFibersCreated() 39 virtual void OnThreadsCreated(uint32 threadsCount) override in OnThreadsCreated() 75 virtual void OnThreadCreated(uint32 workerIndex) override in OnThreadCreated() 81 virtual void OnThreadStarted(uint32 workerIndex) override in OnThreadStarted() 86 virtual void OnThreadStoped(uint32 workerIndex) override in OnThreadStoped() 92 virtual void OnThreadIdleStarted(uint32 workerIndex) override in OnThreadIdleStarted() 97 virtual void OnThreadIdleFinished(uint32 workerIndex) override in OnThreadIdleFinished()
|
| /TaskScheduler/Scheduler/Include/Platform/Posix/ |
| H A D | MTThread.h | 71 Atomic32<uint32> isInitialized; 157 static void GetAffinityMask(cpu_set_t & cpu_mask, uint32 cpuCore) in GetAffinityMask() 163 uint32 threadsCount = (uint32)GetNumberOfHardwareThreads(); in GetAffinityMask() 164 for(uint32 i = 0; i < threadsCount; i++) in GetAffinityMask() 217 …void Start(size_t _stackSize, TThreadEntryPoint entryPoint, void* userData, uint32 cpuCore = MT_CP… 322 …static void SetThreadSchedulingPolicy(uint32 cpuCore, ThreadPriority::Type priority = ThreadPriori… 346 static void Sleep(uint32 milliseconds) in Sleep()
|
| /TaskScheduler/Scheduler/Include/Platform/Windows/ |
| H A D | MTThread.h | 45 Atomic32<uint32> isInitialized; 153 …void Start(size_t stackSize, TThreadEntryPoint entryPoint, void *userData, uint32 cpuCore = MT_CPU… 166 …MT_VERIFY((cpuCore < (uint32)GetNumberOfHardwareThreads()) || cpuCore == MW_MAXIMUM_PROCESSORS, "I… 228 …static void SetThreadSchedulingPolicy(uint32 cpuCore, ThreadPriority::Type priority = ThreadPriori… 234 …MT_VERIFY((cpuCore < (uint32)GetNumberOfHardwareThreads()) || cpuCore == MW_MAXIMUM_PROCESSORS, "I… 253 static void Sleep(uint32 milliseconds) in Sleep()
|
| /TaskScheduler/Scheduler/Include/Platform/Common/ |
| H A D | MTSpinWait.h | 107 inline void SpinSleepMicroSeconds(uint32 microseconds) in SpinSleepMicroSeconds() 126 inline void SpinSleepMilliSeconds(uint32 milliseconds) in SpinSleepMilliSeconds()
|