A command queue is an object that holds commands that will be executed on a specific device. The command queue is created on a specific device within a context. Commands to a queue are queued in order but may be executed either in order or out of order.