In the first case (no-persistence) the bottleneck is the network throughput. In the second case the bottleneck is the disk IO.
We stopped adding more Redis shards as we reached the disk IO limit with the 12 shards. Adding more shards wouldn't affect the results as the disk was choking with the number of transactions from 12 shards.