Installing and testing jessie-backports realtime kernels from debian archive

TL;DR

Kernel 4.1, 4.4, and 4.6 all give similar latency on my i7-4790k system running in 64-bit mode, at least for short (<10 minute) tests.

How to use backports

Or, rather, how *I* used backports..

First, find the kernels (or other packages) in the search interface at snapshot.debian.org. In the case of jessie-backports, look for versions that say ".bpo" or ".bpo8".

I found 3 realtime kernels that seemed interesting, based on 4.1, 4.4, and 4.6, so I came up with these lines for a file in /etc/apt/sources.list.d:

# Kernel 4.1
deb   http://snapshot.debian.org/archive/debian/20150911T214227Z jessie-backports main
deb-src   http://snapshot.debian.org/archive/debian/20150911T214227Z jessie-backports main

# Kernel 4.4
deb http://snapshot.debian.org/archive/debian/20160328T221517Z/ jessie-backports main
deb-src http://snapshot.debian.org/archive/debian/20160328T221517Z/ jessie-backports main

# Kernel 4.6
deb http://snapshot.debian.org/archive/debian/20160620T042742Z jessie-backports main
deb-src http://snapshot.debian.org/archive/debian/20160620T042742Z jessie-backports main

Then, update without checking whether the packages are out of date:

sudo apt-get  -o Acquire::Check-Valid-Until=false  update

and request that the packages get installed, e.g., for 4.6:

sudo apt-get install -t jessie-backports  linux-image-4.6.0-0.bpo.1-rt-amd64 linux-headers-4.6.0-0.bpo.1-rt-amd64

(you can omit -headers if you don't use any nonstandard kernel modules)

Now you have to remove or comment out the backports lines, because otherwise subsequent apt-get updates without special flags will (rightfully) error right out:

E: Release file for http://snapshot.debian.org/archive/debian/20150911T214227Z/dists/jessie-backports/InRelease is expired (invalid since 279d 3h 56min 3s). Updates for this repository will not be applied.
It looks like everything installed, so now to reboot and try my new kernels...

Latency results

Kernel 4.1 (4.1.0-0.bpo.2-rt-amd64)

nvidia X driver failed to automatically load. This may affect (improve) realtime results.

linuxcnc latency-histogram --nobase: 11.5us max latency in 3 minutes

Kernel 4.4 (4.4.0-trunk-rt-amd64)

(I believe this kernel is self-built and so may differ slightly from the one on bpo)

nvidia X driver loaded. This may harm realtime results.

linuxcnc latency-histogram --nobase: 135.2us max latency in 2 minutes

(this is perfectly adquate latency for mesa hardware, by the way!)

Kernel 4.6 (4.6.0-0.bpo.1-rt-amd64)

nvidia X driver loaded. This may harm realtime results.

linuxcnc latency-histogram --nobase: 126us max latency in 11 hours

nvidia kernel driver temporarily blacklisted.

linuxcnc latency-histogram --nobase: 9.4us max latency in 2 minutes

(note to self: why does the size and layout of the latency window change when my desktop resolution changes?)

Entry first conceived on 23 June 2016, 11:50 UTC, last modified on 24 June 2016, 0:46 UTC
Website Copyright © 2004-2017 Jeff Epler