An artifact of sampling data. Top runs through /proc/<pid>/* - i.e. it reads all of them sequentially. All takes some time, and strictly speaking the data is all from different times. Then it reads the total system consumption over the period, and does some math.
Did you ever get collectl working ?. Even that will suffer somewhat, but the granularity is much better. Another option would be to do your own measurement - pull the numbers for only your pid, and the system wide, do the math after. Will still be some disparity - unavoidable.