The question is old, but I guess it deserves a general answer. For such problems, there are mainly two possibilities:

either you don't have enough RAM

or you don't have enough computation power (which you can increase through more CPUs)

To decide between those two issues, you can look at the CPU and memory use, but in some cases (like yours) it is not sufficient. So a good way to know is to look at the data while you are mining (e.g. using htop or top). At the beginning, your CPUs should be at 100% each and your memory use should increase slowly. Then, at some point, one of the following should happen:

your RAM use approaches 80-100%, your swap use begins to increase and your CPU use decreases. your RAM use stays constant, each CPU use stays near 100%.

In the first case, you have not enough RAM. In the second case, you have not enough computation power.

In you case, you said you achieved 360% CPU use. If it is an average use (as outputed by GNU time), then I would say it is a RAM issue (you should have >= 390% else).

I hope it helps.