@ij balance-alb works by selectively reporting different MAC values for the two NICs to different clients, so it only load-balances across hosts.
You've presumably also got some form of spanning-tree running, which will selectively disable some links — othewrise I think you'd have a loop and the links would all be full?
Testing wise, make sure to run iperf with multiple TCP channels, as most bonding schemes result in any given TCP connection to only operate over one available channel.