So I am trying to start a virtual machine on ubuntu 14.04 using virtual machine manager.
I used the following instructions:
Minus the kernel patch part. (Which may be the issue).
When the virtual machine starts this is the status:
Hello, I have written a simple kernel-space memory allocator module for Xeon Phi, but I have yet to figure out how it builds.
It should compile from the host, but there is no Xeon Phi-specific build /lib/modules/ folder.
I copied one from the ramfs in running Xeon Phi (184.108.40.206+mpss3.4.2), but then there is no 'build' folder initialized.
Is there any documentation or an article to guide me through?
I am calculating FLOPS of an application. The application is really simple and short. It's just a matrix multiplication. The code is like the below.
I would like to pre-allocate a number of buffers for later data transfers from CPU to MIC, using explicit offloading in C++.
It works nicely if each buffer corresponds to an explicit variable name, as e.g. in the double-buffering examples. However, I would like to have a configurable number of such buffers (more than 2), i.e. an array of buffers. (the buffers are used for asynchronous processing on the MIC, and I need quite a few of them).
MIC requires strict 64Byte data alignment to utilize vpu, but why? I found Sparc also have such an requirement. But other multi-core CPU can handle unaligned data.
As MIC can automatically vectorize a for loop of data(with compiler optimization), what if the data is unaligned in this case? will the auto optimization still work? if yes, how?
I would like to clarify my problem here.
I'm attempting to run a simple offload example: