Oförmågan att förutsäga varaktiga språk och arkitekturer fick oss att utveckla Occa, ett C++-bibliotek med fokus på interaktion mellan värdenheter. Med hjälp av run-time sammanställning och makro expansioner, resultatet är ett nytt enda kärnspråk som expanderar till flera trådspråk. För närvarande stöder Occa enhetskärnans expansioner för OpenMP-, OpenCL- och CUDA-plattformarna. Beräkningsresultat med ändlig skillnad, spektralelement och icke-kontinuerliga Galerkin-metoder visar att Occa levererar bärbar hög prestanda i olika arkitekturer och plattformar.
OCCA REF ) är ett annat bibliotek som extraherar kärnor till flera trådspråk (OpenMP, OpenCL och CUDA).
OCCA: A unified approach to multi-threading languages
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}