2

I would like to port a semi-HPC code scriptable with Python to Xeon Phi, to try out the performance increase; it cannot be run in offload mode (data transfers would be prohibitive), the whole code must be run on the co-processor.

Can someone knowledgeable confirm that it means I will have to "cross-compile" all the libraries (including Python) for the Xeon Phi arch, have those libs mounted over NFS on the Xeon Phi, and then execute it all there?

For cross-compilation: what is the target arch? Of course, for numerics the xeon-phi is a must due to extended intrinsics, but for e.g. Python, would the binaries and libs be binary-compatible with amd64? That would make it much easier, essentially only changing some flags for the number-crunching parts.

UPDATE: For the record, we've had a very bad support from Intel on the forums; realizing poor technical state of the software stack (yocto could not compile and so on), very little documentation and so on, we abandoned this path. Goodbye, Xeon Phi.

eudoxos
  • 18,545
  • 10
  • 61
  • 110
  • 2
    Maybe these python responses from the Intel forums will help: https://software.intel.com/en-us/forums/topic/392736 and http://www.bing.com/search?q=site%3Asoftware.intel.com+phi+python&qs=n&form=QBLH&pq=site%3Asoftware.intel.com+phi+python&sc=8-34&sp=-1&sk=&cvid=c194c28f2001441ea044079342b171ce. – Taylor Kidd Jan 07 '15 at 16:26

1 Answers1

0

Why not first port it from Python (which is bytecode for a virtual machine -- that is a software emulation of a CPU -- then to be translated and executed on a certain 'real' hardware CPU). You could port to C++ or so, which -- when compiled for the target platform -- produces machine code that runs natively on the target. That should improve execution speed, right, so you may not even need a Xeon Phi.