Czy różnice między tymi dwoma interfejsami API są drobnymi szczegółami dotyczącymi implementacji, co oznacza, że gdy się tego nauczę, będę mógł używać go do wszystkiego? A może istnieją powody, aby uczyć się jednego, a nie drugiego, jeśli chcę mieć możliwość korzystania z niego bez konieczności ponownego uczenia się innego interfejsu API w przyszłości? Czy taki czy inny jest bardziej ogólny?
W szczególności chciałbym móc pisać dla dowolnej karty graficznej, więc kod nie ogranicza się tylko do uruchamiania na kartach konkretnego producenta lub konkretnego modelu. Chciałbym również móc pisać kod, który nadal działa przy braku karty graficznej (choć wolniej).
Czy istnieje różnica w tym, jak przenośny kod będzie działał na różnych platformach (systemach operacyjnych / architekturach)? Interesuje mnie dostępność innych bibliotek, które z nimi współpracują oraz to, czy jedna z nich prowadzi do ograniczenia ograniczeń licencyjnych w szerszym środowisku. Wszystko, co da się zmierzyć, miałoby wpływ na to, czy jeden z nich może być jedynym, którego się uczę bez ograniczania mnie.