Pretty sure a cable run is hardware, Sir. Ethernet doesn't rate adapt once connected so no point in measuring throughput between two devices directly connected to the cable run: you look at speed, duplex and errors and get that from switches.
An error free, stable cable run at 10G will give 10G as long as the equipment either side isn't a bottleneck. Software can't measure the performance of the cable run as it has to run on a computer. You're measuring performance from one computer to another via all the equipment and software layers in between, not the cable run.
Switches that are non-blocking and the error rates either side are fine. If they're very low or zero and the link is stable the throughput on the cable is what the link says on the tin.