from small one page howto to huge articles all in one place

search text in:




Other .linuxhowtos.org sites: www.linuxhowtos.org
toolsntoys.linuxhowtos.org



Last additions:
How to make X listen on port 6000

How to make X listen on port 6000

words:

34

views:

82635

userrating:

average rating: 1.2 (52 votes) (1=very good 6=terrible)


May, 25th 2007:
April, 26th 2007:
Apr, 10th. 2007:
Druckversion . pdf icon
You are here: Tips&Tricks

nice and PORTAGE_NICENESS

Very simply put, the Linux kernel has a (process) scheduler that selects which process to run next in your system. One factor influencing the scheduler's decision about which process to assign CPU time to, is the priority of a process. Processes with a high priority will run before those with a lower priority, and processes with the same priority will take turns in running, one after the other and over again.

Better have a look at it for yourself: Run top from a terminal on your host and pay special attention to the PR and NI columns:

Sample top output

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND 
 8005 root      20   0 85188  33m  57m R  3.3  6.7   8:43.77 X 
 8148 tobias    20  10 25624 2376  24m S  0.3  0.5   0:00.60 xscreensaver 
    1 root      20   0  2476  552 2304 S  0.0  0.1   0:00.31 init 
    2 root      39  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0 
    3 root      15  -5     0    0    0 S  0.0  0.0   0:00.09 events/0

The PR column indicates the priority level of a process, the value in the NI column displays the so-called nice value of process, which allows you to adjust the priority of a running process. Possible values range from -20 (very high priority), via 0 (standard priority) to 20 (very low priority). In our little example the xscreensaver process has a higher nice value than X, which indicates that X has a higher priority than xscreensaver.

Now, how do we make this work to our advantage when using Portage?

If you keep using your computer while compiling packages you will notice that your box is much less responsive as usal. This is caused by having two "groups" of processes with the same nice priority: your usual running tasks on one side, and emerge (and its child processes) on the other. Now, if you could renice emerge and its children to a higher nice (i.e. lower priority!) value (default is 0), compiling would inevitably take somewhat longer, but you could use your workstation without noticing much difference to its usual performance. That's what the PORTAGE_NICENESS parameter in /etc/make.conf is for:

Code Listing 1: Put this in /etc/make.conf

PORTAGE_NICENESS="15"

You can generally "renice" individual processes from the commandline, (e.g. renice 0 -p 8148 to prioritize xscreensaver in the above example), but this will not work with emerge, as Portage reads the PORTAGE_NICENESS setting from /etc/make.conf once and executes all child processes with the specified nice value.

From http://www.gentoo.org/news/en/gwn/20041101-newsletter.xml

back



Support us on Content Nation

New Packages

- as rdf newsfeed
- as rss newsfeed
- as Atom newsfeed
2025-12-28
automake-vanilla - 1.11.6
Ebuild name:

dev-build/automake-vanilla-1.11.6

Description

Used to generate Makefile.in from Makefile.am

Added to portage

2025-12-28

automake-vanilla - 1.15.1
Ebuild name:

dev-build/automake-vanilla-1.15.1

Description

Used to generate Makefile.in from Makefile.am

Added to portage

2025-12-28

automake-vanilla - 1.16.5
Ebuild name:

dev-build/automake-vanilla-1.16.5

Description

Used to generate Makefile.in from Makefile.am

Added to portage

2025-12-28

clr-loader - 0.2.9
Ebuild name:

dev-python/clr-loader-0.2.9

Description

Generic pure Python loader for .NET runtimes

Added to portage

2025-12-28

duplicati - 2.2.0.1.2025.11.09
Ebuild name:

app-backup/duplicati-2.2.0.1.2025.11.09

Description

Backup client that securely stores encrypted, incremental,

Added to portage

2025-12-28

intellij-idea - 2025.3.1-r1
Ebuild name:

dev-util/intellij-idea-2025.3.1-r1

Description

A complete toolset for web, mobile and enterprise development

Added to portage

2025-12-28

jdupes - 1.30.0-r2
Ebuild name:

app-misc/jdupes-1.30.0-r2

Description

Identify duplicate files on the filesystem

Added to portage

2025-12-28

joplin-desktop - 3.5.9
Ebuild name:

app-office/joplin-desktop-3.5.9

Description

Secure note taking and to-do app with synchronization capabilities

Added to portage

2025-12-28

langkit-contrib - 26.0.0
Ebuild name:

dev-ada/langkit-contrib-26.0.0

Description

A Python framework to generate language parsers - Contrib

Added to portage

2025-12-28

libadalang - 26.0.0
Ebuild name:

dev-ada/libadalang-26.0.0

Description

high performance semantic engine for the Ada programming language

Added to portage

2025-12-28

mptcpd - 0.14
Ebuild name:

net-misc/mptcpd-0.14

Description

Daemon that performs multipath TCP path management related operations.

Added to portage

2025-12-28

netcoredbg - 3.1.3.1062
Ebuild name:

dev-dotnet/netcoredbg-3.1.3.1062

Description

NetCoreDbg is a managed code debugger with MI interface for CoreCL

Added to portage

2025-12-28

nvc - 1.18.2-r1
Ebuild name:

sci-electronics/nvc-1.18.2-r1

Description

NVC is a VHDL compiler and simulator

Added to portage

2025-12-28

pkg-info - 0.6-r1
Ebuild name:

app-emacs/pkg-info-0.6-r1

Description

Provide information about Emacs packages

Added to portage

2025-12-28

polychromatic - 0.9.6
Ebuild name:

sys-apps/polychromatic-0.9.6

Description

RGB lighting management software for GNU/Linux powered by OpenRazer

Added to portage

2025-12-28

puppet-mode - 0.4-r1
Ebuild name:

app-emacs/puppet-mode-0.4-r1

Description

Emacs major mode for editing Puppet manifests

Added to portage

2025-12-28

pwsh - 7.5.4-r1
Ebuild name:

app-shells/pwsh-7.5.4-r1

Description

Cross-platform automation and configuration tool

Added to portage

2025-12-28

pygresql - 6.2.1
Ebuild name:

dev-python/pygresql-6.2.1

Description

A Python interface for the PostgreSQL database

Added to portage

2025-12-28

pytest-gitconfig - 0.9.0
Ebuild name:

dev-python/pytest-gitconfig-0.9.0

Description

Provide a Git config sandbox for testing

Added to portage

2025-12-28

scss-mode - 0.5.0_p20180123-r2
Ebuild name:

app-emacs/scss-mode-0.5.0_p20180123-r2

Description

Major mode for editing SCSS files in Emacs

Added to portage

2025-12-28

session - 2.4b-r1
Ebuild name:

app-emacs/session-2.4b-r1

Description

When you start Emacs, Session restores various variables from your last s

Added to portage

2025-12-28

sonarr-bin - 4.0.16.2946
Ebuild name:

www-apps/sonarr-bin-4.0.16.2946

Description

Sonarr is a Smart PVR for newsgroup and bittorrent users

Added to portage

2025-12-28

sqlite3 - 2.9.0
Ebuild name:

dev-ruby/sqlite3-2.9.0

Description

An extension library to access a SQLite database from Ruby

Added to portage

2025-12-28

sumibi - 0.7.4-r1
Ebuild name:

app-emacs/sumibi-0.7.4-r1

Description

Statistical Japanese input method using the Internet as a large corpus

Added to portage

2025-12-28

tempo-snippets - 0.1.5-r1
Ebuild name:

app-emacs/tempo-snippets-0.1.5-r1

Description

Visual insertion of tempo templates

Added to portage

2025-12-28

treepy - 0.1.2-r1
Ebuild name:

app-emacs/treepy-0.1.2-r1

Description

Generic tree traversing tools for Emacs Lisp

Added to portage

2025-12-28

visual-basic-mode - 1.5-r1
Ebuild name:

app-emacs/visual-basic-mode-1.5-r1

Description

A mode for editing Visual Basic programs

Added to portage

2025-12-28

yaml-mode - 0.0.16-r1
Ebuild name:

app-emacs/yaml-mode-0.0.16-r1

Description

A major mode for GNU Emacs for editing YAML files

Added to portage

2025-12-28

zenburn - 20110907-r2
Ebuild name:

app-emacs/zenburn-20110907-r2

Description

Zenburn color theme for Emacs

Added to portage

2025-12-28

2025-12-27
adolc - 2.7.2-r1
Ebuild name:

sci-libs/adolc-2.7.2-r1

Description

Automatic differentiation system for C/C++

Added to portage

2025-12-27

awscli - 1.44.7
Ebuild name:

app-admin/awscli-1.44.7

Description

Universal Command Line Environment for AWS

Added to portage

2025-12-27

boto3 - 1.42.17
Ebuild name:

dev-python/boto3-1.42.17

Description

The AWS SDK for Python

Added to portage

2025-12-27

botocore - 1.42.17
Ebuild name:

dev-python/botocore-1.42.17

Description

Low-level, data-driven core of boto 3

Added to portage

2025-12-27

django-auth-ldap - 5.3.0
Ebuild name:

dev-python/django-auth-ldap-5.3.0

Description

Django LDAP authentication backend

Added to portage

2025-12-27

docker - 29.1.3-r1
Ebuild name:

app-containers/docker-29.1.3-r1

Description

The core functions you need to create Docker images and run Docker

Added to portage

2025-12-27

execline - 2.9.8.0
Ebuild name:

dev-lang/execline-2.9.8.0

Description

A non-interactive scripting language

Added to portage

2025-12-27

fotema - 2.4.0
Ebuild name:

media-gfx/fotema-2.4.0

Description

Photo gallery for Linux

Added to portage

2025-12-27

fractal - 13
Ebuild name:

net-im/fractal-13

Description

Matrix messaging app for GNOME written in Rust

Added to portage

2025-12-27

gcc - 13.4.1_p20251225
Ebuild name:

sys-devel/gcc-13.4.1_p20251225

Description

The GNU Compiler Collection

Added to portage

2025-12-27

gcc - 14.3.1_p20251226
Ebuild name:

sys-devel/gcc-14.3.1_p20251226

Description

The GNU Compiler Collection

Added to portage

2025-12-27

gloo - 2025.12.02
Ebuild name:

sci-ml/gloo-2025.12.02

Description

library of floating-point neural network inference operators

Added to portage

2025-12-27

jdupes - 1.28.0-r1
Ebuild name:

app-misc/jdupes-1.28.0-r1

Description

Identify duplicate files on the filesystem

Added to portage

2025-12-27

kgb - 7.3
Ebuild name:

dev-python/kgb-7.3

Description

Python function spy support for unit tests

Added to portage

2025-12-27

koleo-cli - 0.2.137.27
Ebuild name:

app-misc/koleo-cli-0.2.137.27

Description

A simple CLI for koleo.pl railway planner

Added to portage

2025-12-27

libslirp - 4.9.1
Ebuild name:

net-libs/libslirp-4.9.1

Description

A TCP-IP emulator used to provide virtual networking services

Added to portage

2025-12-27

lossless-cut-bin - 3.67.2
Ebuild name:

media-video/lossless-cut-bin-3.67.2

Description

The swiss army knife of lossless video/audio editing

Added to portage

2025-12-27

minitest - 6.0.1
Ebuild name:

dev-ruby/minitest-6.0.1

Description

minitest/unit is a small and fast replacement for ruby's huge and slow test

Added to portage

2025-12-27

multi_json - 1.19.1
Ebuild name:

dev-ruby/multi_json-1.19.1

Description

A gem to provide swappable JSON backends

Added to portage

2025-12-27

openhab-bin - 5.0.3-r2
Ebuild name:

app-misc/openhab-bin-5.0.3-r2

Description

An open-source automation software for your home

Added to portage

2025-12-27

openhab-bin - 5.1.0-r1
Ebuild name:

app-misc/openhab-bin-5.1.0-r1

Description

An open-source automation software for your home

Added to portage

2025-12-27

ostree - 2025.7
Ebuild name:

dev-util/ostree-2025.7

Description

Operating system and container binary deployment and upgrades

Added to portage

2025-12-27

pry - 0.16.0
Ebuild name:

dev-ruby/pry-0.16.0

Description

Pry is a powerful alternative to the standard IRB shell for Ruby

Added to portage

2025-12-27

railway - 2.9.4
Ebuild name:

gui-apps/railway-2.9.4

Description

Travel with all your train information in one place

Added to portage

2025-12-27

rake-compiler-dock - 1.11.0
Ebuild name:

dev-ruby/rake-compiler-dock-1.11.0

Description

Easy to use and reliable cross compiler environment for building

Added to portage

2025-12-27

rake-compiler-dock - 1.11.1
Ebuild name:

dev-ruby/rake-compiler-dock-1.11.1

Description

Easy to use and reliable cross compiler environment for building

Added to portage

2025-12-27

rdoc - 7.0.3
Ebuild name:

dev-ruby/rdoc-7.0.3

Description

An extended version of the RDoc library from Ruby 1.8

Added to portage

2025-12-27

rmagick - 6.1.5
Ebuild name:

dev-ruby/rmagick-6.1.5

Description

An interface between Ruby and the ImageMagick(TM) image processing library

Added to portage

2025-12-27

runc - 1.4.0-r1
Ebuild name:

app-containers/runc-1.4.0-r1

Description

runc container cli tools

Added to portage

2025-12-27

s6 - 2.14.0.0
Ebuild name:

sys-apps/s6-2.14.0.0

Description

skarnet.org's small and secure supervision software suite

Added to portage

2025-12-27

s6-linux-init - 1.2.0.0
Ebuild name:

sys-apps/s6-linux-init-1.2.0.0

Description

Generates an init binary for s6-based init systems

Added to portage

2025-12-27

s6-linux-utils - 2.6.4.0
Ebuild name:

sys-apps/s6-linux-utils-2.6.4.0

Description

Set of tiny linux utilities

Added to portage

2025-12-27

s6-portable-utils - 2.3.1.1
Ebuild name:

sys-apps/s6-portable-utils-2.3.1.1

Description

Set of tiny portable unix utilities

Added to portage

2025-12-27

skalibs - 2.14.5.0
Ebuild name:

dev-libs/skalibs-2.14.5.0

Description

General-purpose libraries from skarnet.org

Added to portage

2025-12-27

slirp4netns - 1.3.3
Ebuild name:

app-containers/slirp4netns-1.3.3

Description

User-mode networking for unprivileged network namespaces

Added to portage

2025-12-27

sphinx - 9.1.0_rc2
Ebuild name:

dev-python/sphinx-9.1.0_rc2

Description

Python documentation generator

Added to portage

2025-12-27

xnec2c - 4.4.18
Ebuild name:

sci-electronics/xnec2c-4.4.18

Description

A GTK+ graphical interactive version of nec2c

Added to portage

2025-12-27

yq-go - 4.50.1
Ebuild name:

app-misc/yq-go-4.50.1

Description

yq is a lightweight and portable command-line YAML, JSON and XML processor

Added to portage

2025-12-27

zstd-ruby - 2.0.4
Ebuild name:

dev-ruby/zstd-ruby-2.0.4

Description

Ruby binding for zstd (Zstandard - Fast real-time compression algorithm).

Added to portage

2025-12-27

rdf newsfeed | rss newsfeed | Atom newsfeed
Copyright 2004-2025 Sascha Nitsch Unternehmensberatung GmbH
- Copyright and legal notices -
Time to create this page: 53.2 ms