Hello Barry,
The default load-balance is :
show interfaces port-channel load-balance
source-destination-mac
So this would explain why the multiple iperf threads (using different layer 4 (TCP) ports) are using the same egress ports on the NIC side and switch,
For the nic please change the xmit_hash_policy to layer3+4
xmit_hash_policy=layer3+4
For the switch please change it to use all Layer 2, Layer 3 and Layer 4 source,destination headers:
switch(config)# port-channel load-balance ethernet source-destination-mac source-destination-ip source-destination-port