Commit 7158f9f9ed9ead4dfee4fab3a022492cfd798830

Znort 987 2011-08-12T13:38:18

Add automated benchmark of the CPU hashers The --algo switch now accepts the "auto" argument. When "auto" is passed to --algo, cgminer starts by benchmarking all the CPU algorithms it nows about and picks the fastest. This is useful for benchmarking, but also for folks who run cgminer on a large number of heterogeneous computers because it saves them from having to configure each instance optimally. Caveat emptor: depending on the platform, some algorithms will fail with "illegal instruction" (e.g. via padlock code on non via platforms, or SSE4 code on non SSE4 platforms). To protect against this, cgminer runs the benchmarks in a child process. The crash, if any occurs in the child, and the parent marks this algo as "fails" and continues benchmarking the next algorithm. Unfortunately, this safeguard is only implemented for Linux because I have no clue how to do this on win32 (nor access to a win32 box).