OpenCL for programming shared memory multicore CPUs
OpenCL: A Parallel Programming Standard for Heterogeneous Computing Systems