Given that there are a couple of different miners out there, such as the standard monerod, Wolfs XMR or lucasjones XMR miner, which one would be best suited for CPU mining? Is there any code difference between those choices, or are they just optimised builds for specific architectures (ie. different CFLAGS for monerod)? Do pools oblige one to use specific software?
I use wolf's XMR miner and am very happy with the results, compiled from source. However, your performance with any miner is going to be dependent upon the OS you are running (I run varying flavors of Debian for reference).
As far as pool preference, they don't care what miner you are running just that you are submitting hashes.