3
$\begingroup$

I do a lot of general processing of data on my desktop computer. It can be stuff like extracting timeseries of point measurements from a large number of NetCDF files, or converting csv-files into binary or making a lot of plots.

My question is, would it be useful to have a Xeon Phi for this kind of work? I try to use trivial parallelisation on my 8-core CPU whenever I can, using things like xargs to run several copies of my python scripts. Would I be able to use a Xeon Phi in the same way?

I have some experience using OpenMP and MPI on Xeon Phi, so I have an idea of how that works, but I never thought of trying it in a more interactive manner, and I only had access to one for a limited time, so I can't easily check this myself.

$\endgroup$
3
  • $\begingroup$ This isn't actually a CS question and as such is off topic. Consider migrating to SO. Voting to close. $\endgroup$
    – nluigi
    Mar 9, 2016 at 13:15
  • 1
    $\begingroup$ You're probably better off buying a dual/quad socket rack with Xeons/Opterons. A server with a single Xeon Phi is only slightly cheaper than a quad socket 64 Opteron core server (e.g., see thinkmate.com). $\endgroup$
    – stali
    Mar 9, 2016 at 17:10
  • $\begingroup$ I'm voting to close this question as off-topic because it is not directly concerned with scientific computing methods. Discussions of Xeon Phi for heavy workloads can be found at ServerFault. $\endgroup$
    – hardmath
    Mar 12, 2016 at 2:17

1 Answer 1

3
$\begingroup$

In short: No. Sadly the Xeon Phi does not work like a 60 core cpu, but more like a GPU including its own dedicated memory.
This means that all software has to be written to exploit the card, through things like OpenCL, Intels OpenMP, TBB, etc. The advantage is that for applications already written to use OpenMP or OpenCL, recompiling with the intel libraries should be enough to start using the Xeon.

For your case, that is unlikely to be relevant however. There is nothing like xargs for the Xeon Phi. Additionally, the problems you describe could easily be bound by the speed of the harddrive, rather than CPU.

$\endgroup$
5
  • $\begingroup$ I though you can ssh onto the card, and then run a regular linux environment with 60 cores there. No!? $\endgroup$ Mar 9, 2016 at 13:03
  • $\begingroup$ The xeon phi runs embedded linux, so you're almost right. The caveat is that you need to recompile all programs you run with the -mmic option in icc. In this case that would be python, numpy and all the libraries on which they depend, as well as Xargs. $\endgroup$
    – LKlevin
    Mar 9, 2016 at 14:13
  • $\begingroup$ Right, but at least most of the standard tools such as 'grep', 'ls' and, yes, 'xargs' should probably already be available if it's a standard linux environment. It may indeed be more complicated to build something like Python. (Though, if you build on the xeon phi, -mmic is probably the default and you could simply build there.) $\endgroup$ Mar 9, 2016 at 23:16
  • $\begingroup$ But it is NOT a standard linux environment, but an embedded one. It basically uses busybox to provide the standard tools like 'ls' and 'grep', and the busybox 'xargs' does not support the -P option used for multithreading. $\endgroup$
    – LKlevin
    Mar 10, 2016 at 9:27
  • $\begingroup$ Oh, I see. Very interesting. Thanks for educating me! $\endgroup$ Mar 11, 2016 at 22:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.