Vi introducerar SparkCL, ett gemensamt programmeringsramverk med öppen källkod baserat på Java, OpenCL och Apache Spark-ramverket. Motiveringen bakom detta arbete är att ta med okonventionella beräkningskärnor som FPGA/GPU/APU/DSP och framtida kärntyper i den allmänna programanvändningen. Ramverket möjliggör lika behandling av olika datorenheter inom ramen för Gnista och introducerar förmågan att avlasta beräkningar till accelerationsenheter. Det nya ramverket är sömlöst integrerat i standard Gnista-ramverket via ett programmeringslager för Java-OpenCL-enheter som baseras på Aparapi och ett programmeringslager för Gnista som innehåller nya funktionstyper i kärnan och modifierade Gnista-transformationer och åtgärder. Ramverket gör det möjligt för en enda kodbas att rikta alla typer av beräkningskärna som stöder OpenCL och enkel integrering av nya kärntyper i ett Spark-kluster.
SparkCL är ett försök att få in allt fler olika arkitekturer, inklusive FPGA, i det välkända Apache Spark-ramverket REF.
SparkCL: A Unified Programming Framework for Accelerators on Heterogeneous Clusters
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}