so is the rule of thumb lots of high perf cores?
Yes.
Most important thing is what generation of CPU (needs to be new enough to support the newer AES instructions -- Lynnfield, Nehalem, and Westmere are bad options)
If you get that part right, next most important thing is cache. After you have enough cache, you need enough cores to fully utilize that cache. And once you have "enough cores to use your cache", faster cores are better. For example, a Dual E5-2650Lv2 performs VERY poorly compared to a Dual E5-2660v2. In monero, roughly 600 H/s vs 950 H/s. Similar differences in Aeon performance. These two CPUs have the same number of cores, same amount of cache, same generation CPU, but the 2650Lv2 has far lower clock speeds, and performs accordingly.
==========
For cores vs cache, 1 CPU core per 2MB cache is ideal for Aeon, and you need at least 2MB cache per CPU core to make good use of Monero (but more is better). E3 Xeons and Core i7's tend to have 2MB cache per "real cpu core", whereas Xeon E5 v1 / v2 tend to have 2.5MB cache per "real CPU core". So for E3 Xeons and Core i7's, Aeon is your best option. For E5 xeons, both Monero and Aeon perform well. For GPUs, Monero is generally better than Aeon.
With 2MB cache per CPU core, you can either run Monero at 2MB per thread, and leave all your hyperthreads unused, or you can disable half of your CPU cores in the bios to save power, and run 2MB threads on both your "real cores" and on your "hyperthreads".
With Monero, there is only a small performance hit when using 2 threads on one physical core (i.e. hyperthreading works really well). Because of this, for Monero, a CPU with 4MB cache per CPU core would actually be perfect (if it had hyperthreading), as you could run one thread on all cores and all hyperthreads. but I've never seen a CPU like that, 2.5MB / core is the best you'll usually find.
Similar applies to Aeon, but there is more of a "bonus" for using "real cores" with Aeon, and using "hyperthreads" causes more of a performance hit, compared to Monero. So, as Aeon can use 1MB per thread (standard) or 2MB per thread (low-power-mode), the exact best options can vary.
"Standard mode" (1MB cache needed per thread) scales pretty well when using 2 threads on one cpu core (one for the "real core" and one for "the hyperthreading core").
If you have a typical Core i7 or an E3 Xeon with 4 cores and 8MB cache, a good option is to run 7 or 8 "standard mode" threads (1MB cache per thread), using all (or nearly all) cores, threads, and cache.
However, for E5 v1 / v2 Xeons, which have 2.5MB cache per CPU core, using "standard mode" with 1MB cache used per thread, you leave 20% of your cache unused, while using all real cores and all hyperthreads. This generally leads to poor performance. In the first place, there is some performance hit when using both the hyperthreads and the real cores, and you need to use all of both in this mode. Secondly, this runs the CPU harder than Monero, so the power use will be higher. Also, in this mode, you'd need to leave all CPU cores enabled, again, increasing power use vs Monero.
So for E5 v1 / v2 Xeons, using "low power mode" (2MB cache needed per thread) for some or all of your threads will provide the best performance. The exact best mix of threads seems to vary by CPU on a case-by-case basis. Also, the performance hit of using "real" vs "hyperthreaded" cores seems to vary. Definitely running two low-power-mode threads on one CPU core (1 on the real core and 1 on the hyperthread) does not perform at 2x the performance of just running a single low-power-mode thread on the real cpu core.
==========
So for Aeon, for E5 v1 / v2 CPUs, there's no real "rule of thumb" to follow like with Monero or like with Aeon on E3 / i7. The exact best configuration varies by CPU model.
Some combinations that have worked well for me:
E5-2660v1 / E5-2670v1 -- 6 out of 8 cores enabled in bios (little or no performance loss vs 8 cores) -- 6 "low power mode" (2MB) threads, one for each real cpu core, Plus, 3 - 4 more "low power mode" (2MB) threads split between the hyperthreading cores.
E5-2650v2 -- This is a weird one. All 8 cores enabled in bios. 8 "standard mode" (1MB) threads on all 8 real cores. 3-4 "standard mode" (1MB) threads on 4 of the 8 hyperthreading cores. 4 "low power mode" (2MB) threads on the remaining 4 hyperthreading cores.
E5-2660v2 -- 8 out of 10 cores enabled in bios (little or no performance loss vs 8 cores) -- 8 "low power mode" (2MB) threads one for each real cpu core, Plus, 6-7 "standard mode" (1MB) threads on CPU1 on the hyperthreading cores, and 7-8 "standard mode" (1MB) threads on CPU2 on the hyperthreading cores.
E5-2680v2 -- a little different than the E5-2660v2 for some reason. I still recommend 8 out of 10 threads enabled, but there is a small performance hit from doing so (about 3 - 5%), while this does lower power use by about 10%. If you leave 8 out of 10 cores enabled, use the same settings as above for E5-2660v2.