[development] Migrated Atom CPU profiler to utilize new AzCore Profiler interface and related macros (#4160)
- Added new interface type AZ::Debug::Profiler to externally register profiler systems - Modified the Atom CPU profiler to register as an AzCore profiler -- This allows full engine markers to be visualized in the associated ImGui tool - Converted all AZ_ATOM_PROFILE_* macros to use AZ_PROFILE_* macros instead Signed-off-by: AMZN-ScottR 24445312+AMZN-ScottR@users.noreply.github.com
This commit is contained in:
@@ -169,7 +169,7 @@ namespace AZ
|
||||
void PassSystem::RemovePasses()
|
||||
{
|
||||
m_state = PassSystemState::RemovingPasses;
|
||||
AZ_ATOM_PROFILE_FUNCTION("RPI", "PassSystem: RemovePasses");
|
||||
AZ_PROFILE_SCOPE(RPI, "PassSystem: RemovePasses");
|
||||
|
||||
if (!m_removePassList.empty())
|
||||
{
|
||||
@@ -189,8 +189,7 @@ namespace AZ
|
||||
void PassSystem::BuildPasses()
|
||||
{
|
||||
m_state = PassSystemState::BuildingPasses;
|
||||
AZ_PROFILE_FUNCTION(RPI);
|
||||
AZ_ATOM_PROFILE_FUNCTION("RPI", "PassSystem: BuildPassAttachments");
|
||||
AZ_PROFILE_SCOPE(RPI, "PassSystem: BuildPasses");
|
||||
|
||||
m_passHierarchyChanged = m_passHierarchyChanged || !m_buildPassList.empty();
|
||||
|
||||
@@ -239,8 +238,7 @@ namespace AZ
|
||||
void PassSystem::InitializePasses()
|
||||
{
|
||||
m_state = PassSystemState::InitializingPasses;
|
||||
AZ_PROFILE_FUNCTION(RPI);
|
||||
AZ_ATOM_PROFILE_FUNCTION("RPI", "PassSystem: BuildPassAttachments");
|
||||
AZ_PROFILE_SCOPE(RPI, "PassSystem: InitializePasses");
|
||||
|
||||
m_passHierarchyChanged = m_passHierarchyChanged || !m_initializePassList.empty();
|
||||
|
||||
@@ -277,7 +275,6 @@ namespace AZ
|
||||
void PassSystem::Validate()
|
||||
{
|
||||
m_state = PassSystemState::ValidatingPasses;
|
||||
AZ_ATOM_PROFILE_FUNCTION("RPI", "PassSystem: Validate");
|
||||
|
||||
if (PassValidation::IsEnabled())
|
||||
{
|
||||
@@ -286,7 +283,7 @@ namespace AZ
|
||||
return;
|
||||
}
|
||||
|
||||
AZ_PROFILE_FUNCTION(RPI);
|
||||
AZ_PROFILE_SCOPE(RPI, "PassSystem: Validate");
|
||||
|
||||
PassValidationResults validationResults;
|
||||
m_rootPass->Validate(validationResults);
|
||||
@@ -298,7 +295,7 @@ namespace AZ
|
||||
|
||||
void PassSystem::ProcessQueuedChanges()
|
||||
{
|
||||
AZ_ATOM_PROFILE_FUNCTION("RPI", "PassSystem: ProcessQueuedChanges");
|
||||
AZ_PROFILE_SCOPE(RPI, "PassSystem: ProcessQueuedChanges");
|
||||
RemovePasses();
|
||||
BuildPasses();
|
||||
InitializePasses();
|
||||
@@ -307,8 +304,7 @@ namespace AZ
|
||||
|
||||
void PassSystem::FrameUpdate(RHI::FrameGraphBuilder& frameGraphBuilder)
|
||||
{
|
||||
AZ_PROFILE_FUNCTION(RPI);
|
||||
AZ_ATOM_PROFILE_FUNCTION("RPI", "PassSystem: FrameUpdate");
|
||||
AZ_PROFILE_SCOPE(RPI, "PassSystem: FrameUpdate");
|
||||
|
||||
ResetFrameStatistics();
|
||||
ProcessQueuedChanges();
|
||||
@@ -317,14 +313,14 @@ namespace AZ
|
||||
Pass::FramePrepareParams params{ &frameGraphBuilder };
|
||||
|
||||
{
|
||||
AZ_ATOM_PROFILE_TIME_GROUP_REGION("RPI", "Pass: FrameBegin");
|
||||
AZ_PROFILE_SCOPE(RPI, "Pass: FrameBegin");
|
||||
m_rootPass->FrameBegin(params);
|
||||
}
|
||||
}
|
||||
|
||||
void PassSystem::FrameEnd()
|
||||
{
|
||||
AZ_ATOM_PROFILE_FUNCTION("RHI", "PassSystem: FrameEnd");
|
||||
AZ_PROFILE_SCOPE(RHI, "PassSystem: FrameEnd");
|
||||
|
||||
m_state = PassSystemState::FrameEnd;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user