Just to add some confusion: DirectX is a weird jumble of things that does not easily map to any logical setup of things, except that it started as a system to help game developers. So sometimes it maps to OpenGL (much of the time), sometimes it mapps to OpenAL (for sound), but there are a log of things that don't map well to anything, including (I believe) a few things that map to parts of OpenCL.