-P, --parallel n number of parallel client streams to run. Note that iperf3 is single threaded, so if you are CPU bound, this will not yield higher throughput.
If you run iperf3 from a OPNsense interface to a client, your only limiting factor is the single core performance of your CPU(s).If you run iperf3 from client 1 to client 2 and have OPNsense in the middle, it has to do a lot of work routing the Packets with pf(4), which uses lots of CPU time.Afaik iperf3 usually only creates one tcp stream, which isn't really a real world load on a firewall.You could try to run multiple parallel streams with the -P flag:Quote-P, --parallel n number of parallel client streams to run. Note that iperf3 is single threaded, so if you are CPU bound, this will not yield higher throughput.