# mesa, nvidia, gallium

## curmudgeon

From what I have read (which unfortunately, I don't understand much of), nvidia-drivers doesn't use any part of mesa's drivers built on either the gallium or classic architecture. So I have always used:

```

USE='-classic -gallium' emerge ... [anything that includes mesa]

```

This has always worked in the past (and present).

Two questions:

1. Is there any reason to enable either classic or gallium with nvidia-drivers, or is it recommended to use neither?

2. It seems that newer versions of mesa have some opencl implementation (that requires gallium). Is there any reason to use this, or is the implementation in nvidia-drivers superior?

----------

## Ant P.

There is no reason to enable anything in mesa beyond what's needed by dependencies, because you can't use any of it with that driver anyway.

----------

## curmudgeon

Both the classic and gallium USE flags are enabled by default, so it requires explicitly disabling them to not build mesa with them.

Any thoughts on the usefulness (or lack thereof) of the mesa opencl?

----------

## Ant P.

All of the test programs in their repos work with it on my (old, low-end) Radeon card.

ffmpeg-2.0* has opencl support, and I think media-libs/gegl does too, but Gentoo doesn't expose a USE flag for it on either of those. Seems like it's not ready for real world use yet (at least in this distro).

It'll probably pick up once kernel 3.12 is out with the changes to allow DRM GPU access independent of the display.

----------

## Yamakuzure

 *curmudgeon wrote:*   

> Any thoughts on the usefulness (or lack thereof) of the mesa opencl?

 Not needed with "eselect opencl set nvidia"  :Wink: 

----------

