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.

  • $\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 '16 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 '16 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 '16 at 2:17

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.

  • $\begingroup$ I though you can ssh onto the card, and then run a regular linux environment with 60 cores there. No!? $\endgroup$ – Wolfgang Bangerth Mar 9 '16 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 '16 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$ – Wolfgang Bangerth Mar 9 '16 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 '16 at 9:27
  • $\begingroup$ Oh, I see. Very interesting. Thanks for educating me! $\endgroup$ – Wolfgang Bangerth Mar 11 '16 at 22:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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