I’ve been trying to create some simple Benchmarking tests for some methods in a library for our RhinoPlugin. The methods use Rhino Geometry and so need to reference the RhinoCommon.dll correctly to resolve.
This however doesn’t work, it fails to find the RhinoCommon Assembly. I’ve even tried adding in an AssemblyResolver but this hasn’t fixed the issue.
Has anyone successfully Created a BenchmarkDotNet test with RhinoCommon Geometry?
I managed to get it to run by copying the RhinoCommon.dll into the Release directory. Although I don’t like this solution so I’m going to leave this issue open for better suggestions.
Any functionality that requires a Rhino license will not run outside Rhino. My experience is that yes, you can put RhinoCommon.dll in the same directory, and some tests may run that don’t do anything fancy, like curve intersections, surface intersections or Boolean operations.
You probably also need all the dependencies of RhinoCommon.dll from the installation directory.
Could you please shed some more light on this topic @nathanletwory?
My layman’s approach to benchmarking so far was setting a System.Diagnostics.Stopwatch in VS and logging its output while running my logic. What would be a more structured approach to benchmarking from within Rhino?
Didnt have time to look at it yet, but my colleague recommended looking into slimtune as it can attach to already running tasks. His friend uses it for games.