14 Nov

How to get graphics card (GPU) details on Linux

GPU (Graphics processing units)

You need to find the right model and the supplier of the graphics card in your system to be able to install the appropriate drivers and get the equipment to function properly. Most modern Linux distributions can detect variety of graphics card, but do not always have the best driver for it. So if you have an external graphics card like Nvidia or Ati, then you need to find the name / model number and then looking for more details online. Of course, it is easier if you have the hardware manual that came when you bought the computer. But here, we’re using the controls to find the same information.

 

details about Hardware

The are some commands to learn. First one is lscpi and here is a quick example showing indicating to fetch details about graphics unit (also called vga card or video card).

$ lspci -vnn | grep VGA -A 12
00:02.0 VGA compatible controller [0300]: Intel Corporation 82G35 Express Integrated Graphics Controller [8086:2982] (rev 03) (prog-if 00 [VGA controller])
        Subsystem: Intel Corporation Device [8086:d701]
        Flags: bus master, fast devsel, latency 0, IRQ 44
        Memory at e0200000 (32-bit, non-prefetchable) [size=1M]
        Memory at d0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 2440 [size=8]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: <access denied>
        Kernel driver in use: i915

The first line has the nae of the vendor, the model name/series and the pci id.

VGA compatible controller [0300]: Intel Corporation 82G35 Express Integrated Graphics Controller [8086:2982]

Note the numbers in the bracket – 8086:2982. Such a number is present for almost all graphics card. The first part (8086) indicates the vendor id (which is Intel here) and the second number (2982) indicates the pci id, which indicates the model of the graphics unit.

Now you can search google for more details using the Vendor name and the pci id.

The lshw command can also be used to get the above information.

$ lshw -numeric -C display
WARNING: you should run this program as super-user.
  *-display:0             
       description: VGA compatible controller
       product: 82G35 Express Integrated Graphics Controller [8086:2982]
       vendor: Intel Corporation [8086]
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 03
       width: 64 bits
       clock: 33MHz
       capabilities: vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:44 memory:e0200000-e02fffff memory:d0000000-dfffffff ioport:2440(size=8)


The pci details is indicated in the same way. The active device driver is also listed in the “configuration” line.

Here is a sample output from a system having an nvidia geforce 210 graphics card.

$ lspci -vnn | grep VGA -A 12
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT218 [GeForce 210] [10de:0a65] (rev a2) (prog-if 00 [VGA controller])
.....

Integrated chipsets and dedicated gpus

For units dedicated as nvidia or ati, you can easily search online for the model number or PCI ID. Specifications and other details will be available on the vendor’s Web site.

However, for integrated graphics chipsets like Intel GMA, you can not get enough details by simply searching the name of the series (82G35 here) or PCI ID. The series covers many similar models, while the PCI ID is not documented on the site.

In this case, look for the model of the motherboard and know its specifications. Suppliers publish product specification documents for each motherboard model they manufacture. These contain technical details of the equipment.

To find your motherboard model, use dmidecode or inxi command.

Dmidecode

$ sudo dmidecode -t baseboard | grep -i 'Product'
        Product Name: DG35EC

Inxi

$ inxi -M
Machine:   Mobo: Intel model: DG35EC version: AAE29266-210
           Bios: Intel version: ECG3510M.86A.0112.2009.0203.1136 date: 02/03/2009

The above output shows that its a “Intel DG35EC” motherboard. Google up for that model to find the product specifiation document, and look for Video/Graphics information in it.

 

Check hardware acceleration

With 3D hardware acceleration based on applications that need to draw 3D graphics hardware can be used directly to process and produce graphs, which considerably accelerates 3D rendering. For this, the graphics card must support hardware acceleration and the appropriate drivers must be installed on the system to use this feature.

3D processing functions provided by the hardware to meet the specifications of OpenGL, and with the right hardware, applications can be accessed via the OpenGL API. OpenGL simply defines the functions and implementation is inside the material which makes it very fast.

However, as there are libraries which implement the MESA OpenGL functions entirely within the software. It is therefore possible to make graphics using OpenGL without an OpenGL-compatible GPU. So by checking the OpenGL rendering library, we can find out if hardware acceleration is present or not.

Check the glxinfo command output for OpenGL details

$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) 965G 
OpenGL version string: 2.1 Mesa 10.1.0
OpenGL shading language version string: 1.20
OpenGL extensions:

The “chain of OpenGL” issues MESA libraries which means that 3D rendering software is being fully treatment inside. It will be slow and the games do not work well.

The output on a machine with NVIDIA GeForce dedicated graphics card 200 looks like this

$ glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 210/PCIe/SSE2
OpenGL core profile version string: 3.3.0 NVIDIA 331.20
OpenGL core profile shading language version string: 3.30 NVIDIA via Cg compiler
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.3.0 NVIDIA 331.20
OpenGL shading language version string: 3.30 NVIDIA via Cg compiler

Note the line

OpenGL renderer string: GeForce 210/PCIe/SSE2
Share this

Leave a reply