Remove remnants of frame profiler code

This commit is contained in:
Exzap 2023-06-24 08:04:40 +02:00
parent 4a04fab9c4
commit 45072fccb2
8 changed files with 9 additions and 81 deletions

View file

@ -604,42 +604,3 @@ void LatteOverlay_updateStats(double fps, sint32 drawcalls)
// update vram
g_renderer->GetVRAMInfo(g_state.vramUsage, g_state.vramTotal);
}
void LatteOverlay_updateStatsPerFrame()
{
if (!ActiveSettings::FrameProfilerEnabled())
return;
// update frametime graph
uint32 frameTime_total = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_frameTime.getPreviousFrameValue());
uint32 frameTime_idle = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_idleTime.getPreviousFrameValue());
uint32 frameTime_dcStageTextures = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_dcStageTextures.getPreviousFrameValue());
uint32 frameTime_dcStageVertexMgr = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_dcStageVertexMgr.getPreviousFrameValue());
uint32 frameTime_dcStageShaderAndUniformMgr = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_dcStageShaderAndUniformMgr.getPreviousFrameValue());
uint32 frameTime_dcStageIndexMgr = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_dcStageIndexMgr.getPreviousFrameValue());
uint32 frameTime_dcStageMRT = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_dcStageMRT.getPreviousFrameValue());
uint32 frameTime_dcStageDrawcallAPI = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_dcStageDrawcallAPI.getPreviousFrameValue());
uint32 frameTime_waitForAsync = (uint32)PPCTimer_tscToMicroseconds(performanceMonitor.gpuTime_waitForAsync.getPreviousFrameValue());
// make sure total frame time is not less than it's sums
uint32 minimumExpectedFrametime =
frameTime_idle +
frameTime_dcStageTextures +
frameTime_dcStageVertexMgr +
frameTime_dcStageShaderAndUniformMgr +
frameTime_dcStageIndexMgr +
frameTime_dcStageMRT +
frameTime_dcStageDrawcallAPI +
frameTime_waitForAsync;
frameTime_total = std::max(frameTime_total, minimumExpectedFrametime);
//g_state.frametimeGraph.appendEntry();
//g_state.frametimeGraph.setCurrentEntryValue(0xFF404040, frameTime_idle);
//g_state.frametimeGraph.setCurrentEntryValue(0xFFFFC0FF, frameTime_waitForAsync);
//g_state.frametimeGraph.setCurrentEntryValue(0xFF000040, frameTime_dcStageTextures); // dark red
//g_state.frametimeGraph.setCurrentEntryValue(0xFF004000, frameTime_dcStageVertexMgr); // dark green
//g_state.frametimeGraph.setCurrentEntryValue(0xFFFFFF80, frameTime_dcStageShaderAndUniformMgr); // blueish
//g_state.frametimeGraph.setCurrentEntryValue(0xFF800080, frameTime_dcStageIndexMgr); // purple
//g_state.frametimeGraph.setCurrentEntryValue(0xFF00FF00, frameTime_dcStageMRT); // green
//g_state.frametimeGraph.setCurrentEntryValue(0xFF00FFFF, frameTime_dcStageDrawcallAPI); // yellow
//g_state.frametimeGraph.setCurrentEntryValue(0xFFBBBBBB, frameTime_total - minimumExpectedFrametime);
}

View file

@ -3,6 +3,5 @@
void LatteOverlay_init();
void LatteOverlay_render(bool pad_view);
void LatteOverlay_updateStats(double fps, sint32 drawcalls);
void LatteOverlay_updateStatsPerFrame();
void LatteOverlay_pushNotification(const std::string& text, sint32 duration);

View file

@ -113,7 +113,6 @@ void LattePerformanceMonitor_frameEnd()
gui_updateWindowTitles(false, false, fps);
}
}
LatteOverlay_updateStatsPerFrame();
}
void LattePerformanceMonitor_frameBegin()

View file

@ -1201,20 +1201,10 @@ void OpenGLRenderer::draw_beginSequence()
void OpenGLRenderer::draw_execute(uint32 baseVertex, uint32 baseInstance, uint32 instanceCount, uint32 count, MPTR indexDataMPTR, Latte::LATTE_VGT_DMA_INDEX_TYPE::E_INDEX_TYPE indexType, bool isFirst)
{
bool isMinimal = !isFirst;
if (ActiveSettings::FrameProfilerEnabled())
{
if (isMinimal)
draw_genericDrawHandler<true, true>(baseVertex, baseInstance, instanceCount, count, indexDataMPTR, indexType);
else
draw_genericDrawHandler<false, true>(baseVertex, baseInstance, instanceCount, count, indexDataMPTR, indexType);
}
else
{
if (isMinimal)
draw_genericDrawHandler<true, false>(baseVertex, baseInstance, instanceCount, count, indexDataMPTR, indexType);
else
draw_genericDrawHandler<false, false>(baseVertex, baseInstance, instanceCount, count, indexDataMPTR, indexType);
}
if (isMinimal)
draw_genericDrawHandler<true, false>(baseVertex, baseInstance, instanceCount, count, indexDataMPTR, indexType);
else
draw_genericDrawHandler<false, false>(baseVertex, baseInstance, instanceCount, count, indexDataMPTR, indexType);
}
void OpenGLRenderer::draw_endSequence()

View file

@ -115,9 +115,9 @@ void DebugLogStackTrace(OSThread_t* thread, MPTR sp)
void coreinitExport_OSPanic(PPCInterpreter_t* hCPU)
{
debug_printf("OSPanic!\n");
debug_printf("File: %s:%d\n", memory_getPointerFromVirtualOffset(hCPU->gpr[3]), hCPU->gpr[4]);
debug_printf("Msg: %s\n", memory_getPointerFromVirtualOffset(hCPU->gpr[5]));
cemuLog_log(LogType::Force, "OSPanic!\n");
cemuLog_log(LogType::Force, "File: {}:{}\n", (const char*)memory_getPointerFromVirtualOffset(hCPU->gpr[3]), hCPU->gpr[4]);
cemuLog_log(LogType::Force, "Msg: {}\n", (const char*)memory_getPointerFromVirtualOffset(hCPU->gpr[5]));
DebugLogStackTrace(coreinit::OSGetCurrentThread(), coreinit::OSGetStackPointer());
#ifdef CEMU_DEBUG_ASSERT
assert_dbg();
@ -271,7 +271,8 @@ namespace coreinit
void coreinit_exit(uint32 r)
{
cemuLog_log(LogType::Force, "coreinit.exit({})", r);
cemuLog_log(LogType::Force, "The title terminated the process by calling coreinit.exit({})", (sint32)r);
DebugLogStackTrace(coreinit::OSGetCurrentThread(), coreinit::OSGetStackPointer());
cemu_assert_debug(false);
// never return
while (true) std::this_thread::sleep_for(std::chrono::milliseconds(100));