Als Entwickler sieht man sich beim Entwurf einer neuen Anwendung zunächst mit der Frage konfrontiert, wie sich die Rechenleistung älterer, aktueller und zukünftiger Computer bestmöglich ausnutzen lässt. Insbesondere bei Echtzeitanwendungen, die für den Einsatz im Rahmen der Spieleprogrammierung entwickelt werden, kommt dieser Fragestellung eine besondere Bedeutung zu.
Betrachten wir als Beispiel eine Physik-Engine. In nicht wenigen Internetforen wird verbissen darüber gestritten, ob Physikberechnungen von der CPU oder von der GPU (Grafikkarte) ausgeführt werden sollten. Die pragmatische Antwort lautet, dass die Berechnungen sinnvoller Weise dort durchgeführt werden sollten, wo momentan genügend Rechenleistung zur Verfügung steht. Spielrelevante Physik sollte jedoch wenn möglich von der CPU berechnet werden, um den notwendigen Datentransfer zwischen CPU und GPU möglichst gering zu halten. Voraussetzung hierfür ist jedoch, dass die Fähigkeiten moderner 4-Kern-CPUs mit ihren bis zu 8 parallelen Threads auch wirklich ausgenutzt werden.
Ist man als Entwickler daran interessiert, Berechnungen zu parallelisieren und diese sowohl auf der CPU als auch auf der GPU auszuführen, dann ist der Einsatz von OpenCL zwingend erforderlich. Alternativen stehen momentan nicht zur Verfügung.