How do graphics processing units work?