6

I am going to offload some computation to Xeon Phi but would like to test different APIs and different apporached to the parallel programming first.

Is there a simulator / emulator for Xeon Phi (either Windows or Linux) ?

Boppity Bop
  • 9,613
  • 13
  • 72
  • 151
  • The Phi runs x86 instructions (for the most part), so you can use your host computer as a simulator. – pburka Apr 14 '14 at 13:11
  • 1
    @pburka - If your Phi is not using KNC (Knights Corner) ISA with vector SIMD instructions, you may as well not use the Phi at all. The Phi runs x86 instructions poorly. – Mark Lakata Dec 17 '14 at 20:38
  • https://www.hpcwire.com/2017/06/29/reinders-avx-512-may-hidden-gem-intel-xeon-scalable-processors/ – mpapec Apr 30 '18 at 11:28

2 Answers2

5

In the event that future internet users see this question and wonder about Knights Landing simulation, the Intel SDE (https://software.intel.com/en-us/articles/intel-software-development-emulator) emulates AVX-512.

For the uninitiated, Knights Landing is the official code name for the next-generation of Intel Xeon Phi processor. It is incorrect to assume that Xeon Phi means Knights Corner, any more than it is incorrect to assume that Xeon means Haswell. It's just that there has only been one iteration of Xeon Phi to date.

Jeff Hammond
  • 5,374
  • 3
  • 28
  • 45
3

Suitability feature in Intel(R) Advisor XE 2015 Beta (could be "enrolled" for free here) could be used to address your requests. Suitability Beta is specifically capable to:

  • evaluate if Intel® Xeon Phi™ (native or limited support for offload) performance levels can exceed CPU performance peaks for given workload
  • evaluate imbalance, run-time overhead and other performance losses impact depending on parallel APIs, number of threads and loop iteration number/granularity being used

All kinds of given "evaluations" could be done on arbitrary x86 machine (Windows or Linux OS supported). So it's really sort of "emulation". However it's a software-based modeling tool (not traditional hardware simulator or emulator).

Note: given Xeon Phi-specific stuff is only available as "experimental" feature now. Which means that at the moment (as of April 2014) it's still Beta quality and it's still unavailable by default. You will have to set-up experimental variable ADVIXE_EXPERIMENTAL=suitability_xeon_phi_modeling to make it enabled. Usually Advisor Beta experimental features tend to become better quality and more mature later in the year (either in Beta Update or later releases). Given note is not applicable to all other parts of Suitability feature which are not Xeon Phi-specific.

Here is a screen-shot for given Beta Experimental feature GUI look&feel (bold red is mine add-on):

AdvisorXESuitabilityBeta

zam
  • 1,664
  • 9
  • 16
  • can I model host threads interacting with the 'soft emulated' 50 Phi threads? – Boppity Bop Apr 15 '14 at 15:56
  • I've explained more details on given subject in answer to your different question at http://stackoverflow.com/questions/23042472/how-to-offload-particular-thread-of-a-single-app-to-particular-xeon-phi-cores – zam Apr 15 '14 at 17:37
  • And for Advisor XE, yes - you can do that, by chaning "Xeon Phi threads" number being equialent to ~64 via combo-box shown in top right corner of screen-shot above. – zam Apr 15 '14 at 17:38