Graphics Card Cores
According to this specification, my GPU is supposed to have 96(!) cores.
Yet, when I compile the upstream Linux kernels specifying in the config that the maximum number of GPU be 48 (rising from the default of 8), the resulting kernel fails to detect the card at boot and uses some really bad fall-back graphics.
Anybody with some knowledge about GPU cores, care to enlighten me about the difference in the type of the 'core' in the specification and that the configuration is talking about ?
They are not like CPU cores... they are tiny primitive processors coordinated by some kind of logic on the GPU, not exposed to the outside world.
You have 1 GPU, not 48.
A GPU core is more akin to a stream processor - it does the job of what used to be called a pixel or vertex shader (i.e. each core is a simple circuit that is dedicated to the single task of computing the colour and other attributes of a pixel). Any GPU is made up of multiple GPU cores, and some coordinating circuitry. The more cores a GPU has, the more pixels of an image it can manipulate in parallel.
A GPU is organised (architected) very differently from a conventional CPU. A GPU itself (with its many GPU cores) is more akin to a single CPU core, except that a CPU core is designed for performing sequential, often complex, operations real fast and a GPU core is designed to process lots of simple, often slow, operations concurrently.
A GPU is designed to manipulate a large array of pixels: there are a lot of pixels in a typical image, or on a display. There are only so many operations that can be done on a single pixel, and one pixel on its own doesn't mean much, so the operations on each pixel do not need to be particularly fast. A GPU core is a simple thing that is able to do the small set of operations on one pixel at a time, and doesn't need to be too fast. The GPU includes a lot of GPU cores, plus some coordinating logic (or circuitry) that pushes a small set of instructions and data into the bank of cores, over and over. The more cores a GPU has, the more pixels it can manipulate in parallel, and the faster it can crank out all of the pixels for an image/scene/display.