TR-43 - Installing MPSS 3.6.1 to use a Intel Xeon Phi Coprocessor on Ubuntu Trusty 14.04 LTS

The “Intel Manycore Platform Software Stack” is a series of Intel software components to run the Intel Xeon Phi Coprocessor. The Intel Xeon Phi is a coprocessor computer architecture for high-performance computing.

Most of the documentations available on the Internet is made for RedHat based systems, this document aims to help someone willing to configure MPSS on Ubuntu Trusty 14.04 LTS.

The code base provided by Intel is pretty huge and not all of it has been installed, only the modules required to connect to the system.

We provide git repositories (with a few changes from the original ones) for different reasons:

  • Build failures because the code expects older systems
  • Make failing due to various reasons
  • Wrong installation paths due to different distributions expected

For more details, check the commit logs.

You will need to download the following archives:

Kernel Modules

Patched sources

Kernel module (mic) used to communicate to the system.

1
2
3
4
5
6
7
8

        # Compile
        make MIC_CARD_ARCH=k1om
        # install
        sudo make install
        sudo depmod -a
        # Install dev headers
        sudo make dev_install

libscif

Patched sources

Requirements:

  • dev headers of kernel module

Notes:

  • XML of documentation fails at validation, disabled from makefile
1
2
3
4
5

        # Compile
        make
        # install
        sudo make install

miclib (from mpss-micmgmt)

Patched sources

Requirements:

  • dev header of kernel module
1
2
3
4
5

        # Compile
        make
        # install
        sudo make install

mpss-micmgmt

Patched sources

Requirements:

  • libscif
  • miclib
  • dev header of kernel module
1
2
3
4
5

        # Compile
        make
        # install
        make install

Note:

  • Apps in: build-tmp/usr/bin

Flash firmware update

Get firmware from RPM packages available in mpss-3.6.1-linux.tar:

1
2
3
4
5
6
7
8
9
alien glibc2.12pkg-mpss-flash-3.6.1-1.glibc2.12.x86_64.rpm
alien glibc2.12pkg-mpss-memdiag-kernel-3.6.1-1.glibc2.12.x86_64.rpm
alien glibc2.12pkg-mpss-rasmm-kernel-3.6.1-1.glibc2.12.x86_64.rpm
alien mpss-boot-files-3.6.1-1.glibc2.12.x86_64.rpm

dpkg -i glibc2.12pkg-mpss-flash_3.6.1-2_amd64.deb
dpkg -i mpss-boot-files_3.6.1-2_amd64.deb
dpkg -i glibc2.12pkg-mpss-rasmm-kernel_3.6.1-2_amd64.deb
dpkg -i glibc2.12pkg-mpss-memdiag-kernel_3.6.1-2_amd64.deb
1
2
3
cd build-tmp/usr/bin
./micflash -update -device all
cd -

mpss-daemon

Patched sources

Requirements:

  • libscif
  • miclib
  • initramfs to boot
1
2
3
4
5

        # Compile
        make
        # install
        sudo make install

Note:

  • installs micctrl and mpssd
  • put the initscripts in /etc/mpss

Configure:

1
    micctrl --initdefaults

Load the module:

1
2
3
    depmod -a
    rmmod mic_host
    modprobe mic

Manual start

1
    sudo mpssd -l

Setup as a Service

When previous steps were successful:

  • Add to the /etc/modprobe.d/blacklist.conf:
1
    blacklist mic_host
  • Move /etc/mpss/mpss.ubuntu to /etc/init.d/mpss
  • Update RC
1
    update-rc.d mpss defaults

miccheck

Patched sources

Optional: only to make sure your setup is running

Requirements:

  • libscif
  • miclib
  • mpss-daemon
1
2
3
4
5

        # Compile
        make
        # run
        ./miccheck.py

Note: You can safely ignore Test 6 failing

References

Revision

  • Version 1.0 - TLP:CLEAR - First version