Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Hannes_Z_
Beginner
154 Views

Porting CPU code to Xeon Phi

Jump to solution

I  make use of an open source CPU-based programme that is designed to use  Intel® AES-NI more spesficly aeskeygenassist instruction. The program runs on Linux and is compiled for every system it runs on.It detects the number of cores are on the CPU and utilise that. So far I have run it from anything I3 to Dual Xeon Xeon e5-2699. it is multi-threaded and scales well based on the hardware.  

We are looking to use a server that has several Xeon Phi installed but as it is nearly impossible to get a demo unit in South Africa it is a big risk to invest just to see if it would work. 

I know nothing is trivial on Linux but is it possible someone can confirm that my logic is correct for the approach I am suggesting?  

The system will have 6 Xeon Phi 5110P running on Ubuntu

Can we write a script that would SSH into each and copy the relevant repositories over, compile the code and run them? 

I am assuming the following;

1. some network setup will be required to let each of the Xeon Phi see the internet. 

2. The repositories will run on the Phi Linux.

3. The code will not be needed to change the native environment is Linux and hardware is handled by the Phi Linux 

 

Tags (1)
0 Kudos
1 Solution
jimdempseyatthecove
Black Belt
154 Views

See: https://software.intel.com/sites/landingpage/IntrinsicsGuide/#=undefined&cats=Cryptography&expand=20...

You will find that Xeon Phi  KNC (e.g. 5110P) does not support the aeskeygenassist instruction (_mm_aeskeygenassist_si128 intrinsic).

KNL might support this instruction, but the above intrinsic guide does not indicate this.

Jim Dempsey

View solution in original post

6 Replies
jimdempseyatthecove
Black Belt
155 Views

See: https://software.intel.com/sites/landingpage/IntrinsicsGuide/#=undefined&cats=Cryptography&expand=20...

You will find that Xeon Phi  KNC (e.g. 5110P) does not support the aeskeygenassist instruction (_mm_aeskeygenassist_si128 intrinsic).

KNL might support this instruction, but the above intrinsic guide does not indicate this.

Jim Dempsey

View solution in original post

Hannes_Z_
Beginner
154 Views

What a life saver! thank. Glad I asked. 

Hannes_Z_
Beginner
154 Views

The 7290 shows it supports Intel® AES New Instructions but as you said, the IntrinsicsGuide does not confirm that _mm_aeskeygenassist_si128 is supported

Just confirm that I really need to test one before buying yet not sure how to arrange that. 

McCalpinJohn
Black Belt
154 Views

My Xeon Phi 7250 processors show "aes" in the "flags:" field of /proc/cpuinfo.

The header file "wmmintrin.h" includes the function of interest, but I don't know how to test whether this actually works on my system.

wmmintrin.h:extern __m128i __ICL_INTRINCC _mm_aeskeygenassist_si128(__m128i, const int);

 

jimdempseyatthecove
Black Belt
154 Views

The 7290 and 7250 (KNL host) are not the coprocessor (n1nn series KNC). Until the KNL (n2nn series) comes out as coprocessor, Hannes is somewhat stuck. Unless he decides to use a cluster of KNL's.

Jim Dempsey

 

 

Hannes_Z_
Beginner
154 Views

So the Intel® Xeon Phi™ Processor 7290  is not a co-processor. Why did I miss that! So I am totally confused now as to how they managed to fit 16GB of ram into the such a small space.  And what benefits could there be to have 16GB ram inside the processor? But this is going off topic. 

Thank for the help looks like this is a fitting end to my flight of fantasy with the Phi. Just glad I never bought the 6 Xeon Phi 5110P. 

Reply