Blocks are created irrespective of whether there are messages to be included. This makes sense because at the time of block making, we don’t even actually know if there is stuff to execute, because not everything comes in via blocks, canisters can also do work on their own via heartbeat or timers. We need to regularly have a new block to trigger a new execution round which then may execute those heartbeat/timer messages.
Wrt why this subnet has essentially no load: not all subnets are made available by the CMC, and this is one where you cannot install canisters without an NNS proposal allowing you to do so. This is some legacy thing where around launch time, some projects had designated subnets. I hope we can get rid of that, but before we can do that, we need to make sure that all these subnets are equivalent, and currently these weird subnets allow for some legacy features which other subnets don’t.