fbpx

CUDA архитектур гэж юу вэ ?

CUDA гэдэг нь Compute Unified Device Architecture гэсэн үгний точлол юм.

CUDA нь 2006 онд анх NVIDIA – аас GeForce 8 цувралын GPU тай хамт танилуулагдсан технологи.

CUDA - ийн онцлог юу вэ ?

CUDA нь программлчалын платформ бөгөөд график процессорын (GPU) өндөр чадлыг ерөнхий зориулалттай тооцоололд ашиглах боломжийг олгодог. Өөрөөр хэлбэл, GPU – г зөвхөн график дүрслэлд ашиглахаас гадна шинжлэх ухааны тооцоолол, хиймэл оюун ухаан, машин сургалт, гүн сургалт гэх мэь өндөр хүчин чадал шаардсан тооцоололд ашиглах боломжтой юм.

CUDA - ийн үндсэн архитектур

  1. Streaming multiprocessors (SMs)

    NVIDIA GPU нь олон Streaming Multiprocessor (SM) нэгжээс бүрддэг бөгөөд тус бүр нь олон жижиг тооцооллын цөмүүдийг (cores) агуулдаг.

    • CUDA Cores (Тооны цөмүүд): Эдгээр нь үндсэн арифметик, логик болон хөвөгч таслалтай тооцооллыг гүйцэтгэнэ.
    • Warp Scheduler (Утас зохицуулагч): Нэг SM-д олон утас (thread) зэрэг ажиллах бөгөөд тэдгээрийг зохицуулах үүрэгтэй.
  2. Санах ойн бүтэц

    CUDA-д хэд хэдэн төрлийн санах ой байдаг бөгөөд тэдгээрийг уян хатан ашиглах нь өндөр гүйцэтгэл гаргах гол хүчин зүйл болдог.

    • Регистерүүд (Registers): Хамгийн хурдан, зөвхөн нэг нэгж утсанд хандах боломжтой санах ой.
    • Хамтарсан санах ой (Shared Memory): Нэг SM-ийн бүх утас (thread)-ууд хуваалцан ашиглах боломжтой хурдан санах ой.
    • Глобаль санах ой (Global Memory): GPU-ийн бүх утас хандах боломжтой боловч удаан санах ой.
    • Констант санах ой (Constant Memory): Програмын туршид тогтмол хэвээр байх өгөгдлийг хадгалдаг.
    • Текстур болон гадаргуугийн санах ой (Texture & Surface Memory): Дүрслэлийн өгөгдлийг оновчтой хадгалах зориулалттай.
  3. CUDA – ийн гүйцэтгэлийн загвар

    CUDA-ийн гол онцлог нь ажлуудыг олон жижиг процесс болгон хувааж, GPU-ийн олон тооны тооцооллын нэгжүүдэд зэрэг гүйцэтгэхэд оршдог.

    • Grid: Нэгэн зэрэг олон thread block агуулдаг.
    • Thread Block: Ганц SM дээр ажиллах хэд хэдэн утсаас бүрдэнэ.
    • Threads: Нэгэн зэрэг ажиллагаа явуулах үндсэн тооцооллын нэгж.

CUDA - ийн ашиглагдах чиглэлүүд

CUDA нь дараах салбаруудад өргөн ашиглагддаг: 

  • Хиймэл оюун ухаан (AI) & машин сургалт (ML) CUDA нь TensorFlow, PyTorch зэрэг фреймворкууд CUDA – тай нягт уялддаг 
  • Компьвтерийн дүрлэл (Computer Vision) том хэмжээний дүрс боловсруулах, зураг таних
  • Шинжлэх ухааны тооцоолол (Scientific computing) физик, хими, биологийн симуляци
  • Өндөр хүчин чадалтай тооцоолол (HPC) уур амьсгалын загварчлал, сансрын судалгаа

Дүгнэлт

CUDA нь параллель тооцооллыг хэрэгжүүлэхэд хүчирхэг архитектур бөгөөд NVIDIA GPU-ийн хүчийг ашиглан өндөр гүйцэтгэлтэй тооцоолол хийх боломжийг олгодог. Өнөө үед хиймэл оюун ухаан, шинжлэх ухааны судалгаа, график дүрслэлийн салбаруудад өргөн ашиглагдаж байна.

NVIDIA - ийн сүүлд гарсан GPU - ний CUDA үзүүлэлтээс дурьдвал

NVIDIA CUDA cores: 21760

Shader cores: Blackwell

Standard memory config: 32gb gddr7

memory interface width: 512-bit 

Leave a Reply