(I guess this question in principle applies likewise to Bitcoin, but given how un-profitable CPU mining of Bitcoin seems to be, this question actually arose with regards to Yacoin mining).
I am currently using the AVX version of the 64-bit Windows miner whose link can be found on Yacoin's homepage. As with all forks of minerd, you can specify how many threats minerd should use for mining. It seems as if the default number it uses is the number of logical processors, which in my case happens to be 8. I've tried playing around with this value, however, and it seems that playing around with the number of threads can significantly increase my hash-rate (of course it can also decrease it). I guess this came as a bit of a surprise as I just assumed that the default thread count would have been the most efficient.
There is also the variable of how many workers I have running on the pool (in my case, yac.coinmine.pl) and how many processes of minerd I am running.
This means that there are various combinations of process count / thread count I could play around with to try to find the most efficient combination, but before I figured I'd spend the time playing with these various possibilities, it would be easier to just ask someone who has a better idea of how this actually works: Is there any reason it would be beneficial to run 8 instances of minerd with 1 thread each vs 1 instance of minerd with 8 threads each? Perhaps in principle there shouldn't be, but because I'm mining in a pool the fact that separate instances require separate workers makes a difference? What should be an ideal thread count and why should this actually be an efficient thread count to use? For example, using 16 threads seems to improve my hash-rate over that of just using 8, but doubling again to 32 threads seems to lower the hash-rate again. Why would this be the case?
As a separate but related question, why does my hash-rate seem to slow the longer the miner runs?