MPSS recompilation

MPSS recompilation

can any one help me to recompile mpss 3 on centos 6.4  with kernel 3.11

12 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Quote:

Hemant A. wrote:

can any one help me to recompile mpss 3 on centos 6.4  with kernel 3.11

when we recommpiling with  kernel  3.11 we are gtting the bellow errors 

CC [M] /root/compile/mpss_gold_update_3/src/kernel/linsysfs.o
CC [M] /root/compile/mpss_gold_update_3/src/kernel/linvcons.o
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c: In function ‘micvcons_create’:
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c:99: error: ‘struct tty_driver’ has no member named ‘minor_num’
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c: In function ‘micvcons_open’:
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c:205: error: ‘struct tty_struct’ has no member named ‘low_latency’
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c: In function ‘micvcons_readchars’:
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c:338: warning: passing argument 1 of ‘tty_insert_flip_string’ from incompatible pointer type
include/linux/tty_flip.h:28: note: expected ‘struct tty_port *’ but argument is of type ‘struct tty_struct *’
/root/compile/mpss_gold_update_3/src/kernel/linvcons.c:339: warning: passing argument 1 of ‘tty_flip_buffer_push’ from incompatible pointer type
include/linux/tty_flip.h:13: note: expected ‘struct tty_port *’ but argument is of type ‘struct tty_struct *’
make[2]: *** [/root/compile/mpss_gold_update_3/src/kernel/linvcons.o] Error 1
make[1]: *** [_module_/root/compile/mpss_gold_update_3/src/kernel] Error 2
make[1]: Leaving directory `/usr/src/kernels/3.11.5-1.el6.elrepo.x86_64'
make: *** [modules] Error

Frances Roth (Intel)'s picture

The instructions given in the readme file unfortunately make some assumptions. (The directions in the next release are a bit clearer I believe.)

Anyway, did you install the kernel-headers and kernel-devel packages from the Centos release? And are you using the version of gcc and glibc that came in the src directory with the MPSS?

Dear Frances Roth , Thank  you for your reply.

Centos version 6.4,

Kernel 3.11.5-1.el6.elrepo.x86_64

GCC version 4.4.7 20120313 ( Red Har 4.4.7-3)

bitutils 2.20.51.0.2-5.36.el6.x86_64

yes we installed the kernel headers  and kernel devel  packages.

Frances Roth (Intel)'s picture

I will check with the developers to be sure, but, after digging around some more, I think the answer is you cannot use the 3.11 kernel unless you modify the code for the mic kmod. In the meantime, there may be other users out there who have done this and perhaps they will chime in with suggestions.

Frances Roth (Intel)'s picture

After asking around, I couldn't find anyone here who has tried anything beyond 3.5. And I don't have any timeframe for when it will be supported in an MPSS release. Sorry

I too would like to use kernel 3.11 (.6-1) from elrepo, on Scientific Linux, with mpss 3.1. I want to use this kernel because my Xeon E3-1225 v3 will then have proper video support. And yes, my Phi works fine using 2.6.32-358.23.2.el6.x86_64 on that little workstation :-)

My error is this:

make[1]: Entering directory `/usr/src/kernels/3.11.6-1.el6.elrepo.x86_64'
  CC [M]  /root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.o
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c: In function 'mic_dma_proc_init':
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1478: error: implicit declaration of function 'create_proc_entry'
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1478: warning: assignment makes pointer from integer without a cast
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1479: error: dereferencing pointer to incomplete type
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1480: error: dereferencing pointer to incomplete type
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1483: warning: assignment makes pointer from integer without a cast
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1484: error: dereferencing pointer to incomplete type
/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.c:1485: error: dereferencing pointer to incomplete type
make[2]: *** [/root/rpmbuild/BUILD/mpss-modules-3.1/dma/mic_dma_lib.o] Error 1
make[1]: *** [_module_/root/rpmbuild/BUILD/mpss-modules-3.1] Error 2
make[1]: Leaving directory `/usr/src/kernels/3.11.6-1.el6.elrepo.x86_64'
make: *** [modules] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.uKlPOr (%build) 

Hopefully newer versions of the mpss stack wil have support for newer kernels. Or better, mic.ko will be assimilated into the normal kernel tree.

Ahmet Inan's picture

I was able to make the mic module compile on Linux kernel version up to Linux-3.11.

It's tested and working on Linux-3.11.6 and you can find it here:
https://github.com/xdsopl/mpss-modules

Would be nice if someone from Intel could review the patches and maybe help as i am not familiar with the code and could have missed something.

It would be also nice if you guys could test the code and give feedback. Patches are also welcome :)

Ahmet

Frances Roth (Intel)'s picture

Thank you for your effort, Ahmet. I'll let you know if I hear any feedback.

I tested Ahmet's mpss kernel module and it works on 3.11.6 AND on 3.12.0. Nice! Thanks Ahmet.

[grepit@phi-test zelf]$ OMP_NUM_THREADS=128 ./a-phi.out 2048
 Code running on MIC
 matrix multiplication running with          128  threads
 avg time :    4.534012      sec
 C(1)=   4096.000   
[grepit@phi-test zelf]$ uname -r
3.12.0-1.el6.elrepo.x86_64

Hi, I am trying to install mpss 3.1 on ubuntu 13 with kernel 3.10. when I make install mic module i get a message:

"make -C /lib/modules/3.11.0-15-generic/build M=/home/user1/temp/MIC/mpss-modules-master modules_install \
        INSTALL_MOD_PATH=
make[1]: Entering directory `/usr/src/linux-headers-3.11.0-15-generic'
  INSTALL /home/user1/temp/MIC/mpss-modules-master/mic.ko
Can't read private key
  DEPMOD  3.11.0-15-generic
make[1]: Leaving directory `/usr/src/linux-headers-3.11.0-15-generic'
install -d /usr/local/etc/udev/rules.d
install -m644 udev-mic.rules /usr/local/etc/udev/rules.d/50-udev-mic.rules
install -d /lib/modules/3.11.0-15-generic
install -m644 Module.symvers /lib/modules/3.11.0-15-generic/scif.symvers
install -d /usr/src/linux-headers-3.11.0-15-generic/include/modules
install -m644 include/scif.h /usr/src/linux-headers-3.11.0-15-generic/include/modules"

When I try to modprobe mic, i get FATAL ERROR mic not found and it succeeds with insmod. and later when i try to depmod, i get an error message

"ERROR: fstatat(3, mic.ko): Too many levels of symbolic links"

 

Taylor Kidd (Intel)'s picture

Roshan,

MPSS doesn't support Ubuntu, though there are successful ports for earlier versions of MPSS.

Additionally, there is a newer version of MPSS coming out in late Q1, so I suggest you delaying any personal porting efforts until then.

Regards
--
Taylor

PS I notice that you posted similar questions under other threads. I put a similar answer (well, actually identical) there.

Login to leave a comment.