SYNOPSIS

primusrun command

DESCRIPTION

Primus implements low-overhead local-only client-side OpenGL offloading via GLX forking.

It is currently intended to be used alongside Bumblebee and provides a drop-in replacement for optirun (i.e. "primusrun").

VARIABLES

The following is a list of environment variables affecting primus library that may be relevant for end users:

\s-1PRIMUS_SYNC\s0

Readback-display synchronization method (default: 0)

0: no sync, 1: synced, display previous frame, 2: synced, display latest frame

\s-1PRIMUS_VERBOSE\s0

Verbosity level (default: 1)

0: only errors, 1: warnings, 2: profiling

\s-1PRIMUS_DISPLAY\s0

The secondary Xorg server display number (default: :8)

EXAMPLES

primusrun glxgears -info

Runs the graphics demo supplied by mesa-utils to confirm whether the discrete card is being used for GL rendering.

PRIMUS_VERBOSE=2 primusrun glxgears

Runs the graphics demo supplied by mesa-utils with verbose output from primus.

vblank_mode=0 primusrun glxgears

Disable vblank synchronisation, typically used for benchmarking purposes.

ISSUES

Since compositing hurts performance, invoking primus when a compositing WM is active is not recommended. If you need to use primus with compositing and see flickering or bad performance, synchronizing primus' display thread with the application's rendering thread may help.

PRIMUS_SYNC=1 primusrun ...

This makes primus display the previously rendered frame. Alternatively, with PRIMUS_SYNC=2 primus will display the latest rendered frame, trading frame rate for reduced visual latency.

AUTHOR

Primus was created by Alexander Monakov <[email protected]>.

This manual page was written by Vincent Cheng <[email protected]>, for the Debian project (and may be used by others).