A graphics processing unit can queue a large number of texture requests to
balance out the variability of texture requests without the need for a
large texture request buffer. A dedicated texture request buffer queues
the relatively small texture commands and parameters. Additionally, for
each queued texture command, an associated set of texture arguments,
which are typically much larger than the texture command, are stored in a
general purpose register. The texture unit retrieves texture commands
from the texture request buffer and then fetches the associated texture
arguments from the appropriate general purpose register. The texture
arguments may be stored in the general purpose register designated as the
destination of the final texture value computed by the texture unit.
Because the destination register must be allocated for the final texture
value as texture commands are queued, storing the texture arguments in
this register does not consume any additional registers.