I have setup xdebug and webgrind and I have generated a profile so I can start improving the speed of my code execution. I have displayed the profile in webgrind but I haven't got a clue what any of it means. All the googling I have done doesn't really explain any of it either.

Could someone please explain the basics of reading a webgrind report:

Invocation Count

Total Self Cost

Total Inclusive Cost

What the different colours mean

What the coloured bar means

Calls

Total Call Cost

Count

Edit
Report