1. A method of performing queries in a graphics processing system, the method comprising: issuing a plurality of tile-based rendering queries as part of commands to a graphics processing unit (GPU) to draw all tiles of a frame, wherein the plurality of tile-based rendering queries includes a first tile-based rendering query and a second tile-based rendering query, wherein the first tile-based rendering query is associated with a plurality of primitives, and wherein the second tile-based rendering query is associated with a subset of primitives of the plurality of primitives associated with the first tile-based rendering query; allocating a plurality of accumulate final result memory locations for the plurality of tile-based rendering queries, wherein the plurality of accumulate final result memory locations comprises a first accumulate final result memory location allocated to the first tile-based rendering query, and a second accumulate final result memory location allocated to the second tile-based rendering query; and for the first tile-based rendering query: reading a running counter at the start of the first tile-based rendering query to determine a first start value, wherein the running counter counts discrete graphical entities; reading the running counter at the end of the first tile-based rendering query to determine a first end value; subtracting the first start value from the first end value to determine a result indicating a number of discrete graphical entities of the plurality of primitives associated with the first tile-based rendering query; and adding the result to an accumulator value stored in the first accumulate final result memory location allocated to the first tile-based rendering query; and for the second tile-based rendering query: reading the running counter that is also read for the first tile-based rendering query at the start of the second tile-based rendering query to determine a second start value; reading the running counter at the end of the second tile-based rendering query to determine a second end value; subtracting the second start value from the second end value to determine a second result indicating a number of discrete graphical entities of the subset of primitives associated with the second tile-based rendering query; and adding the second result to an accumulator value stored in the second accumulate final result memory location allocated to the second tile-based rendering query; wherein, during processing of a particular tile, the determining of the second start value and second end value is nested within the determining of the first start value and first end value.