๋ถ๋ฅ:์ํํธ์จ์ด
์ด ๋ฌธ์์ ์๋ณธ์ ์ธ๋ถ ์ํค์์ ๊ฐ์ ธ์์ต๋๋ค.
1. ๊ฐ์[ํธ์ง]
2009๋
8์์ ๋ฐํ๋ ์๋น๋์์ CUDA ํ๋ก๊ทธ๋๋ฐ, MS์ DirectCompute์ ๋์๋๋ GPGPU ํ๋ก๊ทธ๋๋ฐ์ฉ API. ํ๊ตญ์ด๋ก๋ ๊ฐ๋ฐฉํ ๋ฒ์ฉ ๋ณ๋ ฌ ์ปดํจํ
ํ๋ ์์ํฌ๋ผ๊ณ ๋ ๋ถ๋ฅธ๋ค.
2. ๋ฐฐ๊ฒฝ[ํธ์ง]
๊ฐ๋ฐ์๋ Apple Inc. ๊ฐ๋ฐ์๋ผ ๋ฉ๋ฌ์ ์ด ์ด๋ฆ์ ์ํ๊ถ๋ ๊ฐ์ง๊ณ ์๋ค. ์ ํ์ 2008๋
12์ 8์ผ์ ์ด๋ ์ ๋ ํ์ ์ก์๋๊ณ NVIDIA, AMD, ์ธํ
๋ฑ๊ณผ ๊ฐ์ด ๋ค๋ฌ์ด์ OpenGL ๋ฑ์ ๊ฐ๋ฐํ๋ ํฌ๋ก๋
ธ์ค ๊ทธ๋ฃน์ ๋งก๊ธด๋ค. ๊ทธ ํ ํฌ๋ก๋
ธ์ค ๊ทธ๋ฃน์ ์ด์ฌํ ๋
ธ๋ ฅํด์ 2009๋
8์ 28์ผ์ 1.0์ ๊ฐ๋ฐํ์๊ณ , 1.0์...
๋น์ฐํ๊ฒ๋ OS X ์ค๋ ธ์ฐ ๋ ์คํ๋์ ๊ฐ์ด ๊ณต๊ฐ๋์๋ค.
์ ํ์ OpenCL 1.0์ ์ ์ ๊ณต๊ฐํ๋ฉด์ ์ด๋ ๊ฒ ๋งํ๋ค.
๋น์ฐํ๊ฒ๋ OS X ์ค๋ ธ์ฐ ๋ ์คํ๋์ ๊ฐ์ด ๊ณต๊ฐ๋์๋ค.
์ ํ์ OpenCL 1.0์ ์ ์ ๊ณต๊ฐํ๋ฉด์ ์ด๋ ๊ฒ ๋งํ๋ค.
Snow Leopard further extends support for modern hardware with Open Computing Language (OpenCL), which lets any application tap into the vast gigaflops of GPU computing power previously available only to graphics applications. OpenCL is based on the C programming language and has been proposed as an open standard.์ค๋ ธ์ฐ ๋ ์คํ๋๋ OpenCL๋ก ํ๋ ํ๋์จ์ด์ ๋ํ ์ง์์ ํ์ฅํ์์ต๋๋ค. ์ด์ ์๋ GPU์ ๋ฐฉ๋ํ ๊ธฐ๊ฐํ๋กญ์ค ๊ณ์ฐ ๋ฅ๋ ฅ์ ๊ทธ๋ํฝ ์ ํ๋ฆฌ์ผ์ด์ ์๋ง ์ฌ์ฉํด ์์ง๋ง, OpenCL์ ํตํ์ฌ ์ด์ ์ด๋ ํ ์์ฉ ํ๋ก๊ทธ๋จ์์๋ ๋์ด์ ์ธ ์ ์์ต๋๋ค. OpenCL์ C ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๊ธฐ๋ฐํ๊ณ ์์ผ๋ฉฐ, ๊ฐ๋ฐฉํ ํ์ค์ผ๋ก ์ ์๋์์ต๋๋ค.
๊ทธ๋ฌ๋, 2018๋ ์ ์ถ์๋ macOS 10.14 Mojave/iOS 12๋ถํฐ ์ ํ์ OpenGL๊ณผ OpenCL์ ์ง์์ ์ค๋จํ์๋ค. 2014๋ ์ ๋ฐํ๋ ์์ฒด ๊ทธ๋ํฝ API์ธ Metal์ ๋ฐ์ด์ฃผ๊ธฐ ์ํจ์ผ๋ก ๋ณด์ธ๋ค.
๋ง์ดํฌ๋ก์ํํธ์ windows 10 20h2๋ฒ์ ๋ถํฐ๋ ๊ณต์์ ์ผ๋ก WSL2๋ฅผ ์ง์ํ๋๋ฐ, ์ด WSL2 ์ง์๊ณผ ํจ๊ป directX12์ ์ ๋ฒ์ ๋ฐํ, ๊ทธ๋ฆฌ๊ณ ์๋ก์ด ML์ฉ ํด์ด ๊ณต๊ฐ ๋์๋ค. directML์ด๋ ํด๋ก์จ, ๋ฌด๋ ค AMD,Intel,NVIDIA 3ํ์ฌ์ ๊ทธ๋ํฝ์นด๋๋ฅผ ๋ชจ๋ ์ง์ํ๋ ML ํด์ด๋ค. tensorflow 1.15 ๋ฒ์ ํธํ์ด ๊ฐ๋ฅํ ๋ฐ๋ชจ ๋ฒ์ ์ผ๋ก์จ, ์๋์ฐ์ WSL2 ์์ชฝ ๋ชจ๋ ์ฌ์ฉ ๊ฐ๋ฅํ ํด์ด๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ์๋์ฐ์์์๋ AMD์ Intel์ GPU๋ ML์ ์ฌ์ฉํ ์ ์๋ํฐ๋ผ ํด๋น GPU๋ฅผ ์ฌ์ฉํ๋ ์์ ์๋ค์๊ฒ๋ ํฌ์์.[1] ๋ํ DirectML ์์ฒด๋ 2019๋ ๋ฐํ์ธ๋ฐ, ์ด๋ฅผ ์ด์ฉํด AMD ์ง์์์๋ DLSS์ ๋์ํ๋ ํด์ ๊ฐ๋ฐํ๋จ ์์์ด ์๋ค.
3. ํน์ง[ํธ์ง]
OpenCL์ ์ง์ํ๋ ์ฅ๋น๋ CPU๋ GPU๋ ํน์ ๊ทธ ์ด์ธ์ ์ฐ์ฐ ์ฅ๋น๋ ๋ชจ๋ ๊ฐ์ ธ๋ค ๋์์ ์ธ ์ ์๋ค. ๋ค๋ง ํ๋ฐ์ฃผ์๋ผ์ ๊ทธ๋ฐ์ง ๋ง์ด ์๋ ค์ ธ ์์ง ์๋ค. OpenCL์ ๊ณต๊ฐ ๊ท๊ฒฉ(API)์ผ ๋ฟ์ด์ง ์์ค๊ฐ ๊ณต๊ฐ๋ ๊ฒ ์๋๋ฉฐ, ๊ตฌํ์ ์ ์ ์ผ๋ก ๊ฐ๋ฐ์ฌ์ ๋ฌ๋ ค ์๋ค. CUDA๋ NVIDIA ํ๋์จ์ด์์๋ง ๋์ํ๋ค๋ ๋จ์ ์ ๊ฐ์ง๊ณ ์์ด ์ฅ๋๊ฐ ๊ธฐ๋๋๋ค๊ณ ๋ณด๋ ์ฌ๋๋ ์๊ณ , AMD ์ธก๊ณผ ์ธํ
์ธก์์ OpenCL์ ๋ฐ๊ณ ์๋ค. ํ์ฌ ํด๋ก์ฆ๋ ์์ค ๋๋ผ์ด๋ฒ ์ค์์๋ AMD APP SDK 3.0์ด OpenCL 2.0์ ์ง์ํ๋ค. NVIDIA๋ ์์ฌ์์ ๋จผ์ ๊ฐ๋ฐ๋ CUDA๋ฅผ ๋ฐ๊ณ ์๊ธฐ ๋๋ฌธ์ ์์ง OpenCL 1.2๊น์ง๋ง ์ง์ํ๋ค. 2.0๋ 2016๋
์ดํ ๋ถ์์ ํ๊ฒ๋๋ง ์ง์ํ๊ธฐ๋ ํ๋ค. ๊ทธ์ ๋นํ๋ฉด ์คํ์์ค ์ง์์ mesa๋ OpenCL 2.0์ ์ง์ํ๋ค.
OS X์ ๊ฒฝ์ฐ, 10.6 Snow Leopard๋ถํฐ ๊ธฐ๋ณธ์ ์ผ๋ก OpenCL์ ์ง์ํ๊ณ ์์ผ๋ฉฐ, ๋ฐ๋ผ์ ๋ณ๋์ SDK/๋๋ผ์ด๋ฒ ์ค์น ๋ฑ์ด ํ์ํ์ง ์๋ค. ๋ค๋ง 1.1์ด ๋์์์๋ ๋ถ๊ตฌํ๊ณ ๋ฒ์ ์ด ๊ณ์ 1.0์ ๋จธ๋ฌผ๋ฌ ์์ผ๋ฏ๋ก ๊ตณ์ด 1.1์ ์ฌ์ฉํ๊ณ ์ถ๋ค๋ฉด ๋ณ๋๋ก ๋๋ผ์ด๋ฒ ๋ฐ SDK๋ฅผ ์ค์นํด์ผ ํ๋ค. ๋ํ ์ผ๋ถ ํค๋ ํ์ผ์ includeํ ๋ ๋ค์ ์ฐจ์ด๊ฐ ์๋ค.๋ง๋ค์ด ๋๊ณ ๋ ๊ณต๊ฐ๋ฅผ ์ ํ๋ ๊ฒ์ ๋ณด๋ฉด ์ ํ์ ์ธค๋ฐ๋ ์ธ๊ฐ๋ณด๋ค.
GPU๋ง ์ ์ดํ๋ CUDA์ ๋นํด ์ฌ๋ฌ ๊ฐ์ง ์ฅ๋น๋ฅผ ๋์์ ๊ด๋ฆฌํด์ผ ํ๋ฏ๋ก, ์๋ฌด๋๋ ํจ์ ํธ์ถ์ด ๋ง์ด ๊ธธ์ด์ง๊ณ ์ด๊ธฐํ ๊ณผ์ ๋ ํ๋ํ๋ ๋ค ํด ์ค์ผ ํ๋ ๊ฒฐ์ ์ด ์๋ค. ์ฝ๋ ๊ธธ์ด๊ฐ CUDA ์ฝ๋์ ๋นํด ์๋์ ์ผ๋ก ๊ธธ๊ณ , ๋ช ๋ น์ด๊ฐ ๋ง์์ ์๋ฌด๋๋ ์ฒ์ ๋ฐฐ์ฐ๋ ์ฌ๋๋ค์๊ฒ๋ ๋ฌธํฑ์ด ๋๋ค. ๋์ ์ฌ๋ฌ ์ฅ๋น๋ฅผ ๋์์ ํต์ ํ ์ ์๊ณ , ๊ทธ ๋ฐฉ๋ฒ ๋ํ CUDA๋ณด๋ค ์ธ๋ จ๋ ๋ฉด์ด ์๋ค. ๊ทธ๋ฆฌ๊ณ CUDA์ ๋นํด OpenGL๊ณผ ๊ฒฐํฉ์ํค๊ธฐ ์ข๋ค. ๋ค๋ง, ๊ฒ์์ฒ๋ผ OpenGL์ ์ ๊ทน ํ์ฉํ๋ ํ๊ฒฝ์์๋ ์ฅ์น์ ์ด๊ธฐํ ๋ฌธ์ ๋ก ๋๋ถ๋ถ์ ๋๋ผ์ด๋ฒ์์ ๋๋ ์ด๊ฐ ์๊ธฐ๋ฏ๋ก, ๊ฐ๋จํ ํ๋ ฌ ์ฐ์ฐ์ CPU์ SSE๋ neon์ ์ด์ฉํ๊ณ , ๊ฝค๋ ๋ฌด๊ฑฐ์ด ๊ณ์ฐ์ด๋ผ๋ฉด GLSL Compute Shader๋ฅผ ์ด์ฉํ๋ ๊ฒ์ด ๋ซ๋ค.
PyOpenCL์ด๋ผ๋ ํ์ด์ฌ wrapper๋ฅผ ์ฌ์ฉํ์ฌ ํธ๋ฆฌํ๊ณ ๊ฐ๊ฒฐํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. ๊ด์ฌ์ด ์๋ค๋ฉด ์ฐพ์์ ๋ฐฐ์ ๋ณด์.
Java ๋ํ OpenCL์ ์ฌ์ฉํ ์ ์๋๋ก wrapper๊ฐ ์กด์ฌํ๋ค. ๊ด์ฌ์๋ ์ฌ๋์ jocl ๊ณต์ ํํ์ด์ง์์ ๊ฐ๋จํ๋ฉด์ ์ข์ ์ํ๋ค์ ๋ณผ ์ ์๋ค. (๋น์ฐํ ๋ฉ์ด๋ธ์ผ๋ก ๊ฐ๋จํ๊ฒ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ๊ฐ ๋๋ค)
ํ์ฌ๋ ์ค๋งํธํฐ์์๋ OpenCL์ ์ง์ํ๊ณ ์๊ธด ํ๋ค. ๋ค๋ง OpenGL๊ณผ์ OpenGL ES์ ๊ด๊ณ์ฒ๋ผ ํ ๋ฐ์คํฌํฑ OpenCL์ ์๋๊ณ , OpenCL ES๋ฅผ ์ง์ํ๋ค. ์๋๋ก์ด๋์ ๊ฒฝ์ฐ์๋ SDK๋ฅผ ์ง์ํ๋ฉฐ, ์ต๊ทผ ์๋๋ก์ด๋ ์ค๋งํธํฐ์ ๊ฒฝ์ฐ๋ ๋๋ถ๋ถ Open CL 2.0 Full profile์ ์ง์ํ๋ค. iOS์ ๊ฒฝ์ฐ 4.3 ๋ฒ์ ์ ํํธ๋ฅผ ๋ฃ์ด ๋จ์ผ๋ฉฐ, 5.0 ๋ฒ์ ๋ถํฐ๋ ํ๋ผ์ด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ ๋ฐ์๋ฃ๊ณ ์์๋ค๊ฐ iOS 12๋ถํฐ ์ง์์ ์ค๋จํ๋ค.
OS X์ ๊ฒฝ์ฐ, 10.6 Snow Leopard๋ถํฐ ๊ธฐ๋ณธ์ ์ผ๋ก OpenCL์ ์ง์ํ๊ณ ์์ผ๋ฉฐ, ๋ฐ๋ผ์ ๋ณ๋์ SDK/๋๋ผ์ด๋ฒ ์ค์น ๋ฑ์ด ํ์ํ์ง ์๋ค. ๋ค๋ง 1.1์ด ๋์์์๋ ๋ถ๊ตฌํ๊ณ ๋ฒ์ ์ด ๊ณ์ 1.0์ ๋จธ๋ฌผ๋ฌ ์์ผ๋ฏ๋ก ๊ตณ์ด 1.1์ ์ฌ์ฉํ๊ณ ์ถ๋ค๋ฉด ๋ณ๋๋ก ๋๋ผ์ด๋ฒ ๋ฐ SDK๋ฅผ ์ค์นํด์ผ ํ๋ค. ๋ํ ์ผ๋ถ ํค๋ ํ์ผ์ includeํ ๋ ๋ค์ ์ฐจ์ด๊ฐ ์๋ค.
GPU๋ง ์ ์ดํ๋ CUDA์ ๋นํด ์ฌ๋ฌ ๊ฐ์ง ์ฅ๋น๋ฅผ ๋์์ ๊ด๋ฆฌํด์ผ ํ๋ฏ๋ก, ์๋ฌด๋๋ ํจ์ ํธ์ถ์ด ๋ง์ด ๊ธธ์ด์ง๊ณ ์ด๊ธฐํ ๊ณผ์ ๋ ํ๋ํ๋ ๋ค ํด ์ค์ผ ํ๋ ๊ฒฐ์ ์ด ์๋ค. ์ฝ๋ ๊ธธ์ด๊ฐ CUDA ์ฝ๋์ ๋นํด ์๋์ ์ผ๋ก ๊ธธ๊ณ , ๋ช ๋ น์ด๊ฐ ๋ง์์ ์๋ฌด๋๋ ์ฒ์ ๋ฐฐ์ฐ๋ ์ฌ๋๋ค์๊ฒ๋ ๋ฌธํฑ์ด ๋๋ค. ๋์ ์ฌ๋ฌ ์ฅ๋น๋ฅผ ๋์์ ํต์ ํ ์ ์๊ณ , ๊ทธ ๋ฐฉ๋ฒ ๋ํ CUDA๋ณด๋ค ์ธ๋ จ๋ ๋ฉด์ด ์๋ค. ๊ทธ๋ฆฌ๊ณ CUDA์ ๋นํด OpenGL๊ณผ ๊ฒฐํฉ์ํค๊ธฐ ์ข๋ค. ๋ค๋ง, ๊ฒ์์ฒ๋ผ OpenGL์ ์ ๊ทน ํ์ฉํ๋ ํ๊ฒฝ์์๋ ์ฅ์น์ ์ด๊ธฐํ ๋ฌธ์ ๋ก ๋๋ถ๋ถ์ ๋๋ผ์ด๋ฒ์์ ๋๋ ์ด๊ฐ ์๊ธฐ๋ฏ๋ก, ๊ฐ๋จํ ํ๋ ฌ ์ฐ์ฐ์ CPU์ SSE๋ neon์ ์ด์ฉํ๊ณ , ๊ฝค๋ ๋ฌด๊ฑฐ์ด ๊ณ์ฐ์ด๋ผ๋ฉด GLSL Compute Shader๋ฅผ ์ด์ฉํ๋ ๊ฒ์ด ๋ซ๋ค.
PyOpenCL์ด๋ผ๋ ํ์ด์ฌ wrapper๋ฅผ ์ฌ์ฉํ์ฌ ํธ๋ฆฌํ๊ณ ๊ฐ๊ฒฐํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. ๊ด์ฌ์ด ์๋ค๋ฉด ์ฐพ์์ ๋ฐฐ์ ๋ณด์.
Java ๋ํ OpenCL์ ์ฌ์ฉํ ์ ์๋๋ก wrapper๊ฐ ์กด์ฌํ๋ค. ๊ด์ฌ์๋ ์ฌ๋์ jocl ๊ณต์ ํํ์ด์ง์์ ๊ฐ๋จํ๋ฉด์ ์ข์ ์ํ๋ค์ ๋ณผ ์ ์๋ค. (๋น์ฐํ ๋ฉ์ด๋ธ์ผ๋ก ๊ฐ๋จํ๊ฒ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ๊ฐ ๋๋ค)
ํ์ฌ๋ ์ค๋งํธํฐ์์๋ OpenCL์ ์ง์ํ๊ณ ์๊ธด ํ๋ค. ๋ค๋ง OpenGL๊ณผ์ OpenGL ES์ ๊ด๊ณ์ฒ๋ผ ํ ๋ฐ์คํฌํฑ OpenCL์ ์๋๊ณ , OpenCL ES๋ฅผ ์ง์ํ๋ค. ์๋๋ก์ด๋์ ๊ฒฝ์ฐ์๋ SDK๋ฅผ ์ง์ํ๋ฉฐ, ์ต๊ทผ ์๋๋ก์ด๋ ์ค๋งํธํฐ์ ๊ฒฝ์ฐ๋ ๋๋ถ๋ถ Open CL 2.0 Full profile์ ์ง์ํ๋ค. iOS์ ๊ฒฝ์ฐ 4.3 ๋ฒ์ ์ ํํธ๋ฅผ ๋ฃ์ด ๋จ์ผ๋ฉฐ, 5.0 ๋ฒ์ ๋ถํฐ๋ ํ๋ผ์ด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ ๋ฐ์๋ฃ๊ณ ์์๋ค๊ฐ iOS 12๋ถํฐ ์ง์์ ์ค๋จํ๋ค.
4. ์ญ์ฌ[ํธ์ง]
2010๋
6์ 14์ผ OpenCL 1.1 ๋ฒ์ ์ด ๋ฐํ๋์ด OpenGL๊ณผ์ ์ํธ ์ด์ฉ์ฑ์ด ๊ฐ์ ๋์๋ค.
2011๋ 11์ 15์ผ OpenCL 1.2 ๋ฒ์ ์ด ๋ฐํ๋์๋ค. OpenGL๋ฟ๋ง ์๋๋ผ DirectX์ ์ผ๋ถ ๊ธฐ๋ฅ๊ณผ ๊ณต์ ๊ฐ ๊ฐ๋ฅํด์ก๋ค.
2013๋ 11์ 18์ผ OpenCL 2.0 ์ต์ข ์คํ์ ๋ฐํํ๋ค. ๊ทธ๋ฆฌ๊ณ NVIDIA, AMD ๊ฐ๊ฐ SDK๋ฅผ ์ ๊ณตํ๋ค. (NVIDIA ๋ CUDA ํดํท์ ํฌํจํ์ฌ ์ ๊ณต, AMD ๋ ์์ฒด IDE๋ฅผ ์ ์ํจ) 2.0์ ์ ๊ธฐ์ ์ธ HSA๊ฐ ์ถ๊ฐ๋์ผ๋ฉฐ, AMD APU ์นฉ์ ์ 2014๋ ์ด์ ์ถ์ํ ์นด๋ฒ ๋ฆฌ๋ถํฐ, ์ธํ ์ ๋ธ๋ก๋์ฐ๋ถํฐ ์ง์๋๋ค.
2015๋ 3์ GDC์์ Vulkan API์ ํจ๊ป OpenCL 2.1์ ๋ฐํํ์ฌ SPIR-V์์ ์ฐ๋์ ์๊ฐํ๋๋ฐ ์ดํ์ ์ถ์๋ ์ธํ ์ค์นด์ด๋ ์ดํฌ, ์นด๋น๋ ์ดํฌ๊ฐ ํ์ฌ OpenCL 2.1์ด ์๋ 2.0 ๋ฒ์ ์ ๋จธ๋ฌผ๊ณ ์๋ค. ๊ทธ๋ฆฌ๊ณ 11์ 18์ผ์ OpenCL 2.1์ ์ต์ข ์คํ์ด ๋ฐํ๋์๋ค.
2017๋ 5์ 16์ผ SPIR-V 1.1๊ณผ ์ฐ๋ ๊ฐ๋ฅํ OpenCL 2.2๊ฐ ์ต์ข ๋ฐํ๋์๋ค.
2020๋ 4์ 27์ผ OpenCL 3.0 ํ์ค์ด ๋ฐํ๋์๋ค. OpenCL 2.x ์์ ์ถ๊ฐ๋ ๋ชจ๋ ๊ธฐ๋ฅ๋ค์ด Optional ๋ก ๋ณ๊ฒฝ๋๊ณ ์ฌ์ค์ ๋ค์ OpenCL 1.2 ๋ก ๋์์๋๋ฐ ๊ฐ๋ฉ์ด๋ ๋น์ฝํ ํ๊ฒฝ์์ ํ๋ซํผ์ ํํธํ๋ง ์ ๋ฐํ๋ค๊ณ ๋นํํ๋ ๋ชฉ์๋ฆฌ๊ฐ ๋๋ค.
2011๋ 11์ 15์ผ OpenCL 1.2 ๋ฒ์ ์ด ๋ฐํ๋์๋ค. OpenGL๋ฟ๋ง ์๋๋ผ DirectX์ ์ผ๋ถ ๊ธฐ๋ฅ๊ณผ ๊ณต์ ๊ฐ ๊ฐ๋ฅํด์ก๋ค.
2013๋ 11์ 18์ผ OpenCL 2.0 ์ต์ข ์คํ์ ๋ฐํํ๋ค. ๊ทธ๋ฆฌ๊ณ NVIDIA, AMD ๊ฐ๊ฐ SDK๋ฅผ ์ ๊ณตํ๋ค. (NVIDIA ๋ CUDA ํดํท์ ํฌํจํ์ฌ ์ ๊ณต, AMD ๋ ์์ฒด IDE๋ฅผ ์ ์ํจ) 2.0์ ์ ๊ธฐ์ ์ธ HSA๊ฐ ์ถ๊ฐ๋์ผ๋ฉฐ, AMD APU ์นฉ์ ์ 2014๋ ์ด์ ์ถ์ํ ์นด๋ฒ ๋ฆฌ๋ถํฐ, ์ธํ ์ ๋ธ๋ก๋์ฐ๋ถํฐ ์ง์๋๋ค.
2015๋ 3์ GDC์์ Vulkan API์ ํจ๊ป OpenCL 2.1์ ๋ฐํํ์ฌ SPIR-V์์ ์ฐ๋์ ์๊ฐํ๋๋ฐ ์ดํ์ ์ถ์๋ ์ธํ ์ค์นด์ด๋ ์ดํฌ, ์นด๋น๋ ์ดํฌ๊ฐ ํ์ฌ OpenCL 2.1์ด ์๋ 2.0 ๋ฒ์ ์ ๋จธ๋ฌผ๊ณ ์๋ค. ๊ทธ๋ฆฌ๊ณ 11์ 18์ผ์ OpenCL 2.1์ ์ต์ข ์คํ์ด ๋ฐํ๋์๋ค.
2017๋ 5์ 16์ผ SPIR-V 1.1๊ณผ ์ฐ๋ ๊ฐ๋ฅํ OpenCL 2.2๊ฐ ์ต์ข ๋ฐํ๋์๋ค.
2020๋ 4์ 27์ผ OpenCL 3.0 ํ์ค์ด ๋ฐํ๋์๋ค. OpenCL 2.x ์์ ์ถ๊ฐ๋ ๋ชจ๋ ๊ธฐ๋ฅ๋ค์ด Optional ๋ก ๋ณ๊ฒฝ๋๊ณ ์ฌ์ค์ ๋ค์ OpenCL 1.2 ๋ก ๋์์๋๋ฐ ๊ฐ๋ฉ์ด๋ ๋น์ฝํ ํ๊ฒฝ์์ ํ๋ซํผ์ ํํธํ๋ง ์ ๋ฐํ๋ค๊ณ ๋นํํ๋ ๋ชฉ์๋ฆฌ๊ฐ ๋๋ค.