title: How does a graphics driver programmatically communicate from CPU to GPU?
body: <p>I have wondered for quite some time how CPU instructions can interact with the GPU. As I understand things, the CPU has a certain set of instructions (machine code) that it understands and performs and a driver is a piece of software that communicates via the CPU to the GPU. </p>
  
  <p>But how does this piece of software communicate? Does the CPU contain certain assembly instructions that explicitly tells it to communicate to another device?</p>
  
  <p>Can I write assembly code or C/C++ code to communicate to the Graphics Card just like the driver does given one specific machine enviroment?</p>