solo.ck is actualy a pool.
heres its own pool stats
https://solo.ckpool.org/pool/pool.status{"runtime": 49662976, "lastupdate": 1642182397,
"Users": 2050, "Workers": 13054, "Idle": 552, "Disconnected": 547}
{"hashrate1m": "30.3P", "hashrate5m": "30.4P", "hashrate15m": "30.8P", "hashrate1hr": "32.9P", "hashrate6hr": "25P", "hashrate1d": "28.6P", "hashrate7d": "27P"}
{"diff": 4.42, "accepted": 1078266779909, "rejected": 1765947892, "bestshare": 532446995741, "SPS1m": 232.0, "SPS5m": 234.0, "SPS15m": 234.0, "SPS1h": 233.0}
here it explains within the POOL there are 2050 users with about 5 asics on average each
now again to explain.
each asic owner(user) is not forming its own blockcheader and adjusting its own reward share to itself.
instead the CK pool is managing the block headers and setting the reward share. where it gives itself 2% and the uses the coinbase as an extra-extra-nonce which each user has a coinbase address, to give each user on the pool a variety of nonce and extra nonce to work through
all pools are collective. and change a coinbase per user/asic to give each asic varied work compared to other users.
and in all pools a winning hash is always found by one asic
all thats different is instead of CK taking 100% and in a separate later transactions split the reward over all users. ck takes 2% for himself and then lets the winning hash user get the 98%