RISC-V ์•„ํ‚คํ…์ฒ˜ ๊ธฐ๋ฐ˜ ์˜คํ”ˆ์†Œ์Šค GPGPU Vortex 3.0์ด ๊ณต๊ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

RISC-V ๋ช…๋ น์–ด ์„ธํŠธ ์•„ํ‚คํ…์ฒ˜ ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ ์†Œ์Šค GPGPU์ธ Vortex 3.0 ํ”„๋กœ์ ํŠธ๊ฐ€ ๊ณต๊ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” OpenCL API์™€ SIMT(๋‹จ์ผ ๋ช…๋ น์–ด ๋‹ค์ค‘ ์Šค๋ ˆ๋“œ) ์‹คํ–‰ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ‘๋ ฌ ์ปดํ“จํŒ…์„ ์ง€์›ํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 3D ๊ทธ๋ž˜ํ”ฝ ์—ฐ๊ตฌ ๋ฐ ์ƒˆ๋กœ์šด GPU ์•„ํ‚คํ…์ฒ˜ ๊ฐœ๋ฐœ์—๋„ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํšŒ๋กœ๋„, Verilog๋กœ ์ž‘์„ฑ๋œ ํ•˜๋“œ์›จ์–ด ๋ธ”๋ก ์„ค๋ช…, ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ, ๋“œ๋ผ์ด๋ฒ„ ๋ฐ ๊ด€๋ จ ์„ค๊ณ„ ๋ฌธ์„œ๋Š” Apache 2.0 ๋ผ์ด์„ ์Šค ํ•˜์— ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

GPGPU๋Š” ํ‘œ์ค€ RISC-V ISA๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋ฉฐ, GPU ๊ธฐ๋Šฅ ๋ฐ ์Šค๋ ˆ๋“œ ๊ด€๋ฆฌ๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•œ ์ถ”๊ฐ€ ๋ช…๋ น์–ด๋กœ ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. RISC-V ๋ช…๋ น์–ด ์„ธํŠธ ์•„ํ‚คํ…์ฒ˜ ๋ณ€๊ฒฝ์€ ์ตœ์†Œํ™”๋˜์—ˆ์œผ๋ฉฐ, ๊ฐ€๋Šฅํ•œ ํ•œ ๊ธฐ์กด ๋ฒกํ„ฐ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ๋ช…๋ น์–ด์—๋Š” ํ…์Šค์ฒ˜ ์ฒ˜๋ฆฌ ๊ฐ€์†์„ ์œ„ํ•œ "tex", ๋ž˜์Šคํ„ฐํ™” ์ œ์–ด๋ฅผ ์œ„ํ•œ vx_rast, ํ”„๋ž˜๊ทธ๋จผํŠธ, ๊นŠ์ด ๋ฐ ํˆฌ๋ช…๋„ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ vx_rop, ๊ณฑ์…ˆ ๋ฐ ๋ง์…ˆ ์—ฐ์‚ฐ์„ ์œ„ํ•œ vx_imadd, ๊ทธ๋ฆฌ๊ณ  SIMD ์—”์ง„์—์„œ ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰๋˜๋Š” ์Šค๋ ˆ๋“œ ๊ทธ๋ฃน(์›จ์ด๋ธŒํ”„๋ก ํŠธ)์„ ํ™œ์„ฑํ™”ํ•˜๋Š” vx_wspawn, vx_split, vx_join, vx_tmc, vx_bar ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ ์ค‘์ธ GPGPU๋Š” 32๋น„ํŠธ ๋ฐ 64๋น„ํŠธ RISC-V RV32IMF ๋ฐ RV64IMAFD ๋ช…๋ น์–ด ์„ธํŠธ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ง€์›ํ•˜๋ฉฐ, ์„ ํƒ์ ์œผ๋กœ ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ, L1, L2, L3 ์บ์‹œ๋ฅผ ํฌํ•จํ•˜๊ณ , ์ฝ”์–ด, ์›Œํ”„, ์Šค๋ ˆ๋“œ ์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ฝ”์–ด๋Š” ๋˜ํ•œ ๊ตฌ์„ฑ ๊ฐ€๋Šฅํ•œ ์ˆ˜์˜ ALU, FPU, LSU, SFU๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœํ† ํƒ€์ดํ•‘์—๋Š” Xilinx ๋ฐ Altera FPGA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์นฉ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์—๋Š” Verilator(Verilog ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ), RTLSIM(RTL ์‹œ๋ฎฌ๋ ˆ์ด์…˜), SimX(์†Œํ”„ํŠธ์›จ์–ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜)๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด Vortex์— ์ตœ์ ํ™”๋œ PoCL(OpenCL ์ปดํŒŒ์ผ๋Ÿฌ ๋ฐ ๋Ÿฐํƒ€์ž„), LLVM/Clang, GCC, Binutils๋ฅผ ํฌํ•จํ•˜๋Š” ํˆดํ‚ท์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” OpenCL 1.2 ์‚ฌ์–‘์„ ์ง€์›ํ•˜๋ฉฐ, SPIR-V ์…ฐ์ด๋” ์ค‘๊ฐ„ ํ‘œํ˜„์„ OpenCL๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

Vortex 3.0์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํ•˜๋“œ์›จ์–ด ๊ทธ๋ž˜ํ”ฝ ์Šคํƒ์ด ์ถ”๊ฐ€๋˜์—ˆ์œผ๋ฉฐ, ์—ฌ๊ธฐ์—๋Š” ๋ž˜์Šคํ„ฐํ™”, ํ…์Šค์ฒ˜ ๋งคํ•‘ ๋ฐ ์ถœ๋ ฅ ๋ณ‘ํ•ฉ(OM) ๋ธ”๋ก์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ตฌํ˜„๋œ ๊ทธ๋ž˜ํ”ฝ ์Šคํƒ๊ณผ lavapipe ์†Œํ”„ํŠธ์›จ์–ด ๋ž˜์Šคํ„ฐ๋ผ์ด์ €๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ Mesa์šฉ Vulkan ๋“œ๋ผ์ด๋ฒ„์ธ vortexpipe๊ฐ€ ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ ์‹คํ–‰ ์†๋„๋ฅผ ๋†’์ด๋„๋ก ์„ค๊ณ„๋œ ํ…์„œ ์ฝ”์–ด์˜ ๊ธฐ๋Šฅ์ด ํ™•์žฅ๋˜์–ด ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ ์••์ถ•์„ ์œ„ํ•œ ๊ตฌ์กฐ์  ํฌ์†Œ์„ฑ ์ง€์›์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • WGMMA(์›Œํ”„๊ทธ๋ฃน ์ˆ˜์ค€ ํ–‰๋ ฌ ๊ณฑ์…ˆ) ์—ฐ์‚ฐ์€ ๋น„๋™๊ธฐ ๋ชจ๋“œ์—์„œ ํ–‰๋ ฌ ๊ณฑ์…ˆ์„ ์œ„ํ•ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ธ€๋กœ๋ฒŒ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋กœ์ปฌ ๋ฉ”๋ชจ๋ฆฌ๋กœ์˜ ๋ฐ์ดํ„ฐ ์ „์†ก ์†๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด DXA(๋ฐ์ดํ„ฐ ์ „์†ก ๊ฐ€์†) ์—”์ง„์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ช…๋ น ์ฒ˜๋ฆฌ๊ธฐ(CP)์™€ ํ•˜๋“œ์›จ์–ด ์ปดํ“จํŒ… ์ฝ”์–ด ์Šค์ผ€์ค„๋Ÿฌ(KMU - ์ปค๋„ ๊ด€๋ฆฌ ์žฅ์น˜)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์ƒˆ๋กœ์šด ์•„ํ‚คํ…์ฒ˜๊ฐ€ ๊ตฌํ˜„๋˜์—ˆ์œผ๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ์ปดํ“จํŒ… ์Šค๋ ˆ๋“œ๋ฅผ ์นฉ ์ธก์œผ๋กœ ๋ถ„๋ฐฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ๋น„์ฐจ๋‹จ ๋ชจ๋“œ๋กœ ๋™์ž‘ํ•˜๋ฉฐ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ํ•˜๋“œ์›จ์–ด ๋ช…๋ น์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ถ”์ƒํ™” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ์ƒˆ๋กœ์šด ๋Ÿฐํƒ€์ž„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋„์ฐฉ/๋Œ€๊ธฐ/์ด๋ฒคํŠธ ์˜๋ฏธ ์ฒด๊ณ„๋ฅผ ๊ฐ–๋Š” ๋น„๋™๊ธฐ ์žฅ๋ฒฝ ๊ธฐ๋ฐ˜์˜ ํ, ์ด๋ฒคํŠธ, ๋ชจ๋“ˆ ๋ฐ ๋™๊ธฐํ™”๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • RISC-V ๋‹จ์ถ• ๋ช…๋ น์–ด(RVC) ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์›์ž ์—ฐ์‚ฐ์— ๋Œ€ํ•œ ํ•˜๋“œ์›จ์–ด ์ง€์›(ํ•˜๋“œ์›จ์–ด ์•„ํ† ๋ฏน์Šค)์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • FPU๋Š” ์™„์ „ํžˆ ์žฌ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ ์ƒˆ๋กœ์šด ๊ณฑ์…ˆ๊ธฐ(์›”๋ฆฌ์Šค ํŠธ๋ฆฌ, ํด๋””๋“œ ๋ผ๋”•์Šค) ๋ฐ ๋ง์…ˆ๊ธฐ(์ฝ”๊ฒŒ-์Šคํ†ค) ๋ธ”๋ก์ด ๋„์ž…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • 32๋น„ํŠธ SV32 ๊ฐ€์ƒ ์ฃผ์†Œ ์ง€์ • ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ง€์›ํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์žฅ์น˜(MMU) ๊ธฐ๋ฐ˜์˜ ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์Šคํƒ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์กฐ๊ฑด๋ถ€ ์—ฐ์‚ฐ ๊ตฌํ˜„์„ ํฌํ•จํ•œ RISC-V Zicond ํ™•์žฅ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ง€์›.
  • ํ†ตํ•ฉ ํด๋ก ๊ฒŒ์ดํŒ….
  • HIP(Heterogeneous Interface for Portability) ์–ธ์–ด์— ๋Œ€ํ•œ ์ง€์›์€ HIP๋ฅผ SPIR-V๋กœ ๋ณ€ํ™˜ํ•˜๋Š” chipStar ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํ†ตํ•ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • GEM5 ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ์™€์˜ ์™„๋ฒฝํ•œ ํ†ตํ•ฉ์ด ์ œ๊ณต๋˜์—ˆ์œผ๋ฉฐ, TLM(Transaction-Level Modeling) ์•„ํ‚คํ…์ฒ˜์˜ SimX ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์นฉ ์ œ์กฐ์šฉ ๋กœ์ง ํ•ฉ์„ฑ์„ ์œ„ํ•œ Synopsys ๋ฐ Yosys ํˆดํ‚ท ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์œผ๋ฉฐ, ASAP7(7nm), SAED14(14nm) ๋ฐ NanGate(15nm) ํ‘œ์ค€ ์†Œ์ž ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ๋„ ์ง€์›๋ฉ๋‹ˆ๋‹ค.
  • ์ฐธ์กฐ ํˆด์ฒด์ธ์ด LLVM 20 ๋ฐ POCL 7.0์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

DDoS ๋ณดํ˜ธ, VPS VDS ์„œ๋ฒ„๊ฐ€ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•œ ์•ˆ์ •์ ์ธ ํ˜ธ์ŠคํŒ… ๊ตฌ์ž… ๐Ÿ”ฅ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋œ ์•ˆ์ •์ ์ธ ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…, VPS ๋ฐ VDS ์„œ๋ฒ„๋ฅผ ๊ตฌ๋งคํ•˜์„ธ์š” | ProHoster