Airtop: Installing Linux Mint 19.3

From fit-PC wiki
Jump to: navigation, search

Supported devices

  • This guide is valid for Airtop, Airtop2, Airtop3

Prepare installation media

LiveUSB installer crash on Quadro RTX 4000

  • In case your machine is configured with Quadro RTX4000 and experience crashes/freezes while LiveUSB installer running, please expand and follow the below:
  • To perform boot into "Safe Graphics" mode, add "nomodeset" parameter to the kernel boot line:
    • Power-on the Airtop3 with LiveUSB installer
    • Boot menu will appear, default entry will be "Start Linux Mint 19.3 Cinnamon 64-bit"
    • Press [e] to enter edit mode
    • Add "nomodeset" after the "splash", the end of line will look like "quiet splash nomodeset --"
    • Press [F10] to continue the boot
  • You will need to add "nomodeset" option once again, after base installation of Linux Mint and reboot
  • The problem will disappear after installing Nvidia graphics card drivers

Base installation of Linux Mint

  • Follow the standard Linux Mint installation procedure - choose timezone, partitions, username, password etc.
  • Disconnect the installation media and reboot.
  • Login using previously selected username and password.

I3M

See Installing I3M Linux Daemon on Airtop3

Intel video acceleration graphic drivers

$ sudo apt update
$ sudo apt install mint-meta-codecs i965-va-driver gstreamer1.0-vaapi vainfo 

Then run vainfo command, you should see list of supported profiles, for example on Airtop3:

$ vainfo
libva info: VA-API version 1.1.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_1
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.1 (libva 2.1.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Coffee Lake - 2.1.0
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSliceLP
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointEncSliceLP
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointEncSliceLP
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointEncSlice
      VAProfileVP9Profile2            :	VAEntrypointVLD

Nvidia graphics card drivers

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt update
$ nvidia_driver=$(apt-cache search "nvidia-driver-[0-9][0-9][0-9]" | grep -o "nvidia-driver-[0-9][0-9][0-9]" | sort | tail -1)
$ sudo apt install $nvidia_driver vdpauinfo mesa-vdpau-drivers vdpau-va-driver --install-recommends
$ sudo reboot
  • Then run nvidia-smi command, you should see current NVIDIA card status:
$ watch -n1 nvidia-smi
Sun May 26 15:57:21 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 430.14       Driver Version: 430.14       CUDA Version: 10.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Quadro RTX 4000     Off  | 00000000:01:00.0  On |                  N/A |
|  0%   43C    P8     1W / 125W |    338MiB /  7979MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1212      G   /usr/lib/xorg/Xorg                           279MiB |
|    0      1669      G   cinnamon                                      58MiB |
+-----------------------------------------------------------------------------+

Noise mitigation on Nvidia graphics card

  • To reduce the noise need to set PowerMizer Mode to "Prefer Consistent Performance"
  • From GUI:
Menu -> NVIDIA X Server Settings -> PowerMizer -> Preferred Mode:  "Prefer Consistent Performance"
  • The same from command line:
$ nvidia-settings -a "[gpu:0]/GPUPowerMizerMode=3"
  • To make the setting permanent:
Menu -> Startup Applications -> "+" -> Custom command
 Name:    NVIDIA PowerMizer Settings
 Command: nvidia-settings -a "[gpu:0]/GPUPowerMizerMode=3"
 Comment: Set working mode "Prefer Consistent Performanse" to reduce noise

MPV media player

  • Well known free and open-source multimedia player
  • Supports GPU accelerated video decoding including CUDA decoding on NVIDIA GPUs and gives excellent playback quality
  • Compatible with the most popular video formats
$ sudo apt install mpv

For example, Airtop3 with Quadro RTX 4000 is capable to play 4K UHD using CUDA video decoding without significant system load:

$ mpv -fs --hwdec=cuda ~/Videos/jellyfish/jellyfish-140-mbps-4k-uhd-hevc-10bit.mkv
Playing: ~/Videos/jellyfish/jellyfish-140-mbps-4k-uhd-hevc-10bit.mkv
 (+) Video --vid=1 (*) (hevc 3840x2160 29.970fps)
 (+) Audio --aid=1 (*) (truehd 6ch 48000Hz)
AO: [pulse] 48000Hz 5.1(side) 6ch s32
Using hardware decoding (cuda).
VO: [opengl] 3840x2160 cuda[p010]
AV: 00:00:30 / 00:00:30 (99%) A-V:  0.000 Cache:  0s+0KB

Or the same content directly from the youtube:

# NOTE: need to install fixed youtube-dl package
$ wget http://mirrors.kernel.org/ubuntu/pool/universe/y/youtube-dl/youtube-dl_2019.09.28-1_all.deb
$ sudo dpkg -i youtube-dl_2019.09.28-1_all.deb
$ mpv -fs --hwdec=cuda https://www.youtube.com/watch?v=j4oBg8capW8
Playing: https://www.youtube.com/watch?v=j4oBg8capW8
 (+) Video --vid=1 (*) (vp9 3840x2160 29.970fps)
 (+) Audio --aid=1 --alang=und (*) 'DASH audio' (aac 2ch 44100Hz) (external)
AO: [pulse] 44100Hz stereo 2ch float
Using hardware decoding (cuda).
VO: [opengl] 3840x2160 cuda[nv12]
AV: 00:00:29 / 00:00:29 (99%) A-V:  0.000 Cache:  0s+0KB