Le differenze tra queste due API sono dettagli di implementazione minori che significano che una volta che ne ho appreso uno posso usarlo per tutto? Oppure ci sono ragioni per imparare l'uno piuttosto che l'altro se voglio essere in grado di usarlo in generale senza dover riapprendere un'altra API in futuro? Uno o l'altro è più generale?
In particolare, vorrei poter scrivere per qualsiasi scheda grafica, quindi il codice non è limitato alla sola esecuzione su schede di un determinato produttore o su un modello specifico. Mi piacerebbe anche essere in grado di scrivere codice che funziona ancora in assenza di una scheda grafica (anche se più lenta).
C'è una differenza nel modo in cui il codice portatile sarà su piattaforme diverse (sistemi operativi / architetture)? Sono interessato alla disponibilità di altre librerie che funzionano con queste e se l'una o l'altra porta a meno restrizioni di licenza nel suo ambiente più ampio. Qualunque cosa misurabile che farebbe la differenza se uno di questi potrebbe essere l'unico che imparo senza limitarmi.