pContext->ppScratch = new uint8_t*[pContext->NumWorkerThreads];
pContext->pStats = new SWR_STATS[pContext->NumWorkerThreads];
-#if KNOB_ENABLE_AR
+#if defined(KNOB_ENABLE_AR)
// Setup ArchRast thread contexts which includes +1 for API thread.
pContext->pArContext = new HANDLE[pContext->NumWorkerThreads+1];
pContext->pArContext[pContext->NumWorkerThreads] = ArchRast::CreateThreadContext();
+ _AR_EVENT(pContext->pArContext[pContext->NumWorkerThreads], ThreadStartApiEvent());
#endif
// Allocate scratch space for workers.
pContext->ppScratch[i] = (uint8_t*)AlignedMalloc(32 * sizeof(KILOBYTE), KNOB_SIMD_WIDTH * 4);
#endif
-#if KNOB_ENABLE_AR
+#if defined(KNOB_ENABLE_AR)
// Initialize worker thread context for ArchRast.
pContext->pArContext[i] = ArchRast::CreateThreadContext();
+ _AR_EVENT(pContext->pArContext[i], ThreadStartWorkerEvent());
#endif
}
AlignedFree(pContext->ppScratch[i]);
#endif
-#if KNOB_ENABLE_AR
+#if defined(KNOB_ENABLE_AR)
ArchRast::DestroyThreadContext(pContext->pArContext[i]);
#endif
}