Hi All,
First time Biostar poster here with a question that is baffling me. I'm using codeml to test for positive selection on a 6 taxa phylogeny using about 2000 alignments. I'm running some of these analyses on a lab server and some of them on an iMac (specs for both listed below), but there are no substantial differences in the analyses being run on the two machines. The only difference is which specific branches are being analyzed. However, the codeml runs are taking about 30 hours each on the iMac, while several runs on the server were started 7 days ago and are all less than half done. I've run similar codeml analyses (i.e., similar numbers of branches being tested and similar numbers of alignments) on a variety of different pieces of hardware, and I have never seen codeml perform this slowly before.
There are still plenty of unused CPU's on the server as well as available memory, so I don't think a CPU/RAM bottleneck is causing this. Does anybody have any idea what could be going on? Here are the specs:
iMac
OS: 10.11.2 (El Capitan)
CPU: i5-5575R 2.8Ghz
Memory: 16 GB DDR3
Server
OS: CentOS 7.1.1503
CPU: Intel Xeon E5-2680 v3 2.5Ghz (39 of 48 threads currently utilized)
Memory: 768 GB
EDIT: I should also add that paml v 4.8a is being used for all analyses.
If anybody has suggestions for how I could go about figuring out why my codeml analyses are taking drastically longer on the server than on the iMac, I would be greatly appreciative!
Thanks,
Dave
Assuming use of correct optimization options when compiling the code, likely explanations in the case of multi-threaded programs are resource contention and context switching.