This is heavily dependent on "what" and "which" and other questions. I believe I have read somewhere that reference is in general the fastest method of passing larger pieces of data around in Rust. You will get different results based on the size, the access, possible the type and to mix it all up, even your environment and other running processes can affect the results. The same benchmark test could differ in end results depending on your system.
I made some very un-scientific tests, and on my system, the fewer iterations i made the relatively slower the reference method became, while it would catch up as i increased the # of iterations.
In the lower end of iterations the reference was taking twice the time as the no_reference, and as i increased the time difference would decrease. By the 10_000_000 mark the difference was less than 1%.
Currently it is iterating through 1_000_000_000_000_000, and by the time of writing this, it wasn't finished. yeah.. didn't really think that one through when I clicked run!