DPI (Dots Per Inch), also known as PPI (Pixels Per Inch), is a property of an X screen that describes the physical size of pixels. Some X applications, such as xterm, can use the DPI of an X screen to determine how large (in pixels) to draw an object in order for that object to be displayed at the desired physical size on the display device.
You can query the DPI of your X screen by running:
% xdpyinfo | grep -B1 dot
which should generate output like this:
dimensions: 1280x1024 pixels (382x302 millimeters) resolution: 85x86 dots per inch
The NVIDIA X driver performs several steps to determine the DPI of each X screen:
If the display device provides an EDID, and the EDID contains information about the physical size of the display device, that is used to compute the DPI. If multiple display devices are used by this X screen, then the NVIDIA X screen will choose which display device to use. You can override this with the "UseEdidDpi" X configuration option: you can specify a particular display device to use; e.g.:
Option "UseEdidDpi" "DFP-1"
or disable EDID-computed DPI by setting this option to false:
Option "UseEdidDpi" "FALSE"
EDID-based DPI computation is enabled by default when an EDID is available.
If the "-dpi" commandline option to the X server is specified, that is used to set the DPI (see `X -h` for details). This will override the "UseEdidDpi" option.
If the "DPI" X configuration option is specified (see Appendix D, X Config Options for details), that will be used to set the DPI. This will override the "UseEdidDpi" option.
If none of the above are available, then the "DisplaySize" X config file Monitor section information will be used to determine the DPI, if provided; see the xorg.conf or XF86Config man pages for details.
If none of the above are available, the DPI defaults to 75x75.
You can find how the NVIDIA X driver determined the DPI by looking in your X log file. There will be a line that looks something like the following:
(--) NVIDIA(0): DPI set to (101, 101); computed from "UseEdidDpi" X config option
Note that the physical size of the X screen, as reported through `xdpyinfo` is computed based on the DPI and the size of the X screen in pixels.
The DPI of an X screen can be confusing when TwinView is enabled: with TwinView, multiple display devices (possibly with different DPIs) display portions of the same X screen, yet DPI can only be advertised from the X server to the X application with X screen granularity. Solutions for this include:
Use separate X screens, rather than TwinView; see Appendix O, Configuring Multiple X Screens on One Card for details.
Experiment with different DPI settings to find a DPI that is suitable for both display devices.