1. In a network switching device, a method to load balance network flows across links of the device, the method comprising: receiving a packet in a network flow; mapping the packet to a bin of a plurality of bins; identifying candidate links for the network flow, the candidate links being links of the device that are available to forward the packet to its equal-cost multipath (ECMP) destination; determining a profile score for each candidate link by, for each respective candidate link, dividing a number of available paths along the respective candidate link by a number of total available paths from the device; determining a link-usage-by-ECMP-destination score for each candidate link, the link-usage-by-ECMP-destination score indicating an amount of traffic sent along the candidate link toward the ECMP destination over a period of time relative to other candidate links; selecting the candidate link whose link-usage-by-ECMP-destination score is furthest below its profile score; creating a bin-link mapping between the bin and the selected candidate link; and forwarding the packet along the candidate link.