Nintendo 3DS CPU Profiler  4.04
 All Functions Enumerations Enumerator Groups Pages
Runtime Control

These functions are used to control profiling from an application. More...

Modules

 Sampling Rates
 

Macros

#define NN_PROF_SETTINGS_ACTIVE_THREAD_ID   0xFFFFFFFF
 Used to denote that the currently active thread should be profiled rather than a specific thread ID. More...
 

Enumerations

enum  NN_PROF_FLAGS {
  NN_PROF_FLAGS_NONE = 0x00,
  NN_PROF_FLAGS_CALLSTACKS = 0x01,
  NN_PROF_FLAGS_SAMPLEONPERFCOUNTER = 0x04
}
 Denotes profile options. More...
 
enum  NN_PROF_CORE {
  NN_PROF_CORE_0 = 1,
  NN_PROF_CORE_1 = 2,
  NN_PROF_CORE_APPLICATION = NN_PROF_CORE_0,
  NN_PROF_CORE_SYSTEM = NN_PROF_CORE_1
}
 Specifies cores to profile on. More...
 
enum  NN_PROF_PERFCOUNTERGROUP {
  NN_PROF_PERFCOUNTERGROUP_NONE = 0,
  NN_PROF_PERFCOUNTERGROUP_INSTRUCTION_MISSES_AND_BUS_CONTENTION = 1,
  NN_PROF_PERFCOUNTERGROUP_INSTRUCTION_AND_ICACHE_EFFICIENCY = 2,
  NN_PROF_PERFCOUNTERGROUP_MEMORY_AND_COMPUTE_PERFORMANCE = 3,
  NN_PROF_PERFCOUNTERGROUP_DATA_CACHE_READ_PERFORMANCE = 4,
  NN_PROF_PERFCOUNTERGROUP_DATA_CACHE_WRITE_PERFORMANCE = 5,
  NN_PROF_PERFCOUNTERGROUP_PRESSURE_ON_LOAD_STORE_QUEUE = 6,
  NN_PROF_PERFCOUNTERGROUP_MISPREDICTED_BRANCHES = 7
}
 Specifies a performance counter group to gather data on when profiling. More...
 
enum  NN_PROF_SAMPLEMETHOD {
  NN_PROF_SAMPLEMETHOD_TIME = 0,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_MISS_ICACHE = 1,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_MISS_DCACHE_READ = 2,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_MISS_DCACHE_WRITE = 3,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_BRANCH_MISPREDICTION = 4,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_CYCLES_STALLED_INSTRUCTION = 5,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_CYCLES_STALLED_DHAZARD = 6,
  NN_PROF_SAMPLEMETHOD_PERFCOUNTER_CYCLES_STALLED_LSU_FULL = 7
}
 Specifies what kind of sampled profile to take. More...
 

Functions

void nnprofRuntimeControlInitialize (void)
 Initializes the Runtime Control library. More...
 
void nnprofRuntimeControlSetFlags (u32 flags)
 Sets the flags that will control how profiling occurs. More...
 
void nnprofRuntimeControlSetSampleMethod (NN_PROF_SAMPLEMETHOD sampleMethod)
 Sets what determines when a sample should be taken. More...
 
void nnprofRuntimeControlSetSampleTime (u32 time)
 Sets the time between samples. More...
 
void nnprofRuntimeControlSetPerformanceCounters (NN_PROF_PERFCOUNTERGROUP perfGroup)
 Sets which performance counters to record. More...
 
void nnprofRuntimeControlSetThreadIDToProfile (u32 threadId)
 Sets the thread ID that should be profiled. More...
 
void nnprofRuntimeControlSetCoreToProfile (NN_PROF_CORE core)
 Sets the core ID that should be profiled. More...
 
void nnprofRuntimeControlSetCoresToProfile (u32 coreMask)
 Sets the core IDs that should be profiled. More...
 
void nnprofRuntimeControlStart (void)
 Tells the profiler to start profiling. More...
 
void nnprofRuntimeControlStop (void)
 Tells the profiler to stop profiling. More...
 
void nnprofRuntimeControlEnableProfiling (void)
 Tells the profiler to enable profiling. More...
 
void nnprofRuntimeControlDisableProfiling (void)
 Tells the profiler to disable profiling. More...
 

Detailed Description

These functions are used to control profiling from an application.