Performance/memory profiler guide?

NEED HELP TO UNDERSTAND HOW TO CORRECTLY READ AND USE PROFILERS TO INSPECT MY PROGRAM


i am writing an XNA/Monogame indie game in C#

however every 5-10 seconds, there is a very slight hiccup in the program - like an almost imperceptible "jump" that seems to have skipped one frame.

doing some research i figured this must be the doing of the garbage collector in my application (game - application sounds fancier/more serious)

so i download the CLR profiler 4.0 and Slimtune profiler

to my surprise CLR profiler crashes with monogame programs apparently, so i converted my whole game to XNA which was a little bit of a headache (xna makes errors where monogame just works fine)

 

anyhow, i can now profile my application, but i don't even know what i am looking at.


i can see a lot of memory is being put into system.byte() from the program's load method - and after about 10 seconds all that is collected it would seem.
what is system.byte(), is it just the variables i am declaring during initialize/load?

this is the extent of what i can do, i don't know how to really use the profiler to find problematic areas in my code -
maybe someone here has a minute to explain how to use slimtune, clr profiler or another similar profiler to delve into the inner workings of how garbage is collected and how memory is being allocated


hope someone can help me,
thanks in advance!
 

 

If you change the data view in the profiler then you will see which function call is causing excess allocations of system byte. That might help you with finding the culprit.