Benchmarking on mono 5.12
BlueCyro opened this issue · 2 comments
Heya. Out of curiosity, I wanted to try benchmarking some of my projects on mono 5.12 (as that's the closest I can find to Unity's version of mono, anyway) to get a better idea of how certain code may perform once ran in Unity's runtime (often poorly).
I'm running on Windows 10, and I keep getting The Roslyn toolchain is only supported on .NET Framework
when I try to run my benchmarks under mono by running the published .exe file compiled with net472
.
I can patch the check out, but it appears that anonymous pipes are just busted under mono even to this day.
Is there a way to run BDN without needing pipes? If the pipes are only used for logging to the current console, then is there a way to run it such that it only outputs to a log file? That would be sufficient enough for my use case. Any way to get those lovely performance numbers would be much appreciated, as I'm intensely curious just how much worse mono 5.12 is than modern runtimes.
For anybody who's looking for how to do this on versions later than 0.13.2, you can simply run the benchmark in-process. This does limit you to a single benchmark output (can't do multiple runtimes since the pipes will break) but it does work as long as you compile for .NET 4.7.2 (4.6.2 or 4.8 may work as well, but I haven't tried)