How to diagnose and attribute memory consumption

It is probably more a generic question, but since I am experiencing it on OpenWrt, I am asking here, hoping, someone might give an insight.

I am running custom build OpenWrt image on two TL-WR1024ND v2 routers (same hardware). The image is built with the same modules and apps (built from the same ImageBuilder) the only difference is in configuration, but not much:

  • router A is defining two wireguard interfaces, while router B only one
  • network uses different IP addresses
  • firewall defines different ports open, etc.

But, when I boot the two routers, right after the start, router B consumes 10+MB memory more than router A (according to top or free).

Now, when I compare the memory (VSZ) reported for each process in top or ps w they are basically the same on both routers. So I assume that the memory used by the processes does not really contribute to this difference and it is actually kernel which uses more on one router than on the other.
Is this a correct interpretation?

If yes, is there a way to better refine the memory consumption in kernel, to understand from where this bigger consumption comes?