4월 27일 (토) 오후 4:42

logo

  • home
  • head
  • itnews
  • product
  • mobile
  • game
  • benchmark
  • analysis
  • blog

개봉 2024.06.05. / 장르 드람 / 국가 대한민국 감독 : 조지 밀러 출연 : 안야 테일러 조이, 크리스 헴스워스 등 ...
개봉 2024.05.22. / 장르 액션 / 국가 미국 감독 : 조지 밀러 출연 : 안야 테일러 조이, 크리스 헴스워스 등 ...
조회 수 3984

CUDA ("Compute Unified Device Architecture", 쿠다)는 그래픽 처리 장치(GPU)에서 수행하는 (병렬 처리) 알고리즘을 C 프로그래밍 언어를 비롯한 산업 표준 언어를 사용하여 작성할 수 있도록 하는 GPGPU 기술이다. CUDA는 엔비디아가 개발해오고 있으며 이 아키텍처를 사용하려면 엔비디아 GPU와 특별한 스트림 처리 드라이버가 필요하다. CUDA는 G8X GPU로 구성된 지포스 8 시리즈급 이상에서 동작한다. CUDA는 CUDA GPU 안의 명령셋과 대용량 병렬 처리 메모리를 접근할 수 있도록 해 준다.

 

개발자는 패스스케일 오픈64 C 컴파일러로 컴파일 된 '쿠다를 위한 C' (C언어를 엔비디아가 확장한 것) 를 사용하여 GPU 상에서 실행시킬 알고리듬을 작성할 수 있다. 쿠다 구조는 일련의 계산 인터페이스를 지원하며 이에는 OpenCL, DirectX Compute가 포함된다. C 언어가 아닌 다른 프로그래밍언어에서의 개발을 위한 래퍼(Wrapper)도 있는데, 현재 파이썬, 포트란, 자바와 매트랩 등을 위한 것들이 있다.

최신 드라이버는 모두 필요한 쿠다 콤포넌트를 담고 있다. 쿠다는 모든 엔비디아 GPU (G8X 시리즈 이후) 를 지원하며 이 대상에는 지포스, 쿼드로, 테슬라 제품군이 포함된다. 엔비디아는 지포스 8 시리즈를 위해 개발된 프로그램들은 수정 없이 모든 미래의 엔비디아 비디오 카드에서 실행될 것이라고 선언하였다.

 

쿠다를 통해 개발자들은 쿠다 GPU 안 병렬 계산 요소 고유의 명령어 집합과 메모리에 접근할 수 있다. 쿠다를 사용하여 최신 엔비디아 GPU를 효과적으로 개방적으로 사용할 수 있다. 그러나 CPU와는 달리 GPU는 병렬 다수 코어 구조를 가지고 있고, 각 코어는 수천 스레드를 동시에 실행시킬 수 있다. 응용 프로그램이 수행하는 작업(계산)이 이러한 병렬처리연산에 적합할 경우, GPU를 이용함으로써 커다란 성능 향상을 기대할 수 있다.

 

컴퓨터 게임 업계에서는 그래픽 랜더링에 덧붙여, 그래픽 카드를 게임 물리 계산 (파편, 연기, 불, 유체 등 물리 효과)에 사용되며, 예로는 피즈 엑스와 불렛이 있다. 쿠다는 그래픽이 아닌 응용 프로그램, 즉, 계산 생물학, 암호학, 그리고 다른 분야에서 10배 또는 그 이상의 속도 혜택을 가져왔다. 이 한 예는 BOINC 분산 계산 클라이언트 이다.

 

쿠다는 저수준 API와 고수준 API 모두를 제공한다. 최초의 CUDA SDK는 2007년 2월 15일에 공개되었으며 마이크로소프트 윈도우즈와 리눅스를 지원했다. 맥 OS X지원은 2.0 버전에 추가되었다.

 

이점


쿠다가 그래픽 API를 사용하는 전통적인 범용 GPU에 비해 가지는 몇가지 장점은 다음과 같다.

 

흩뿌린 읽기 - 코드가 메모리의 임의 위치에서 데이터를 읽을 수 있다.
공유 메모리 - 쿠다는 고속 공유 메모리 지역 (16KB 크기) 을 드러내어 스레드 간에 나눌 수 있게 해 준다. 이는 사용자 관리 캐시로 사용될 수 있는데, 텍스처 룩업을 이용하는 경우 보다 더 빠른 대역폭이 가능해진다.
GPU와의 읽기, 쓰기가 더 빠르다.
정수와 비트 단위 연산을 충분히 지원한다. 정수 텍스처 룩업이 포함된다.

 

 

제한 

 

재귀호출, 함수 포인터가 없는 C 언어의 하부 집합을 확장하여 사용한다. 그러나 한개의 처리 장치가 여러개의 쪼개진 메모리 공간에 대하여 작업하여야 하는 점이 다른 C 언어 실행 환경과 다른 점이다.


텍스처 랜더링은 지원 되지 않는다.


배정도에 관해서는 IEEE 754 표준과 다르지 않다. 단정도에서는 비정상값과 신호 NaN이 지원되지 않고, IEEE 반올림 모드 가운데서는 두가지만 지원하며, 이도 명령어에 따라서 지원되는 것으로 제어 단어(Control word)에서 지원 되는 것은 아니다.(이것이 제한점인지는 논란의 대상이 될 수 있다) 그리고 나눗셈과 제곱근의 정밀도가 단정도에 비해 조금 낮다.


CPU와 GPU 사이의 버스 대역폭과 시간 지연에서 병목이 발생할 수 있다.


스레드가 최소한 32개씩 모여서 실행되어야 최선의 성능 향상을 얻을 수 있으며, 스레드 수의 합이 수천개가 되어야 한다. 프로그램 코드에서의 분기는, 각각의 32 스레드가 같은 실행 경로를 따른다면, 성능에 큰 지장을 주지 않는다. SIMD 실행 모델은 어떠한 내재적으로 분기하는 임무에게는 심각한 제한이 된다. (예를 들어, 광선 추적 가속 자료 구조)


쿠다 기반 GPU는 엔비디아에서만 나온다.

 


예제----------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

import pycuda.driver as drv
import numpy
import pycuda.autoinit

mod = drv.SourceModule(
"""
__global__ void multiply_them(float *dest, float *a, float *b)
{
  const int i = threadIdx.x;
  dest[i] = a[i] * b[i];
}
"""
)

multiply_them = mod.get_function("multiply_them")

a = numpy.random.randn(400).astype(numpy.float32)
b = numpy.random.randn(400).astype(numpy.float32)

dest = numpy.zeros_like(a)
multiply_them(
        drv.Out(dest), drv.In(a), drv.In(b),
        block=(400,1,1))

print dest-a*b
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

지원하는 GPU


아래의 표에는 공식적으로 CUDA를 지원하는 장치를 나열한 것이며 수많은 응용 프로그램들은 적어도 256 MB의 비디오 램을 요구한다.: CUDA를 사용할 수 있는 GPU 제품.

 

엔비디아 지포스

지포스 4시리즈

지포스 GTX 295

지포스 GTX 285
지포스 GTX 280
지포스 GTX 260
지포스 GTS 250
지포스 9800 GX2
지포스 9800 GTX+
지포스 9800 GTX
지포스 9800 GT
지포스 9600 GSO
지포스 9600 GT
지포스 9500 GT
지포스 9400 GT
지포스 8800 울트라
지포스 8800 GTX
지포스 8800 GTS
지포스 8600 GTS
지포스 8800 GT
지포스 8800 GS
지포스 8600 GTS
지포스 8600 GT
지포스 8500 GT
지포스 8400 GS
지포스 8300 mGPU
지포스 8200 mGPU
지포스 8100 mGPU
엔비디아 지포스 모바일
지포스 9800M GTX
지포스 9800M GTS
지포스 9800M GT
지포스 9700M GTS
지포스 9700M GT
지포스 9650M GS
지포스 9600M GS
지포스 9500M GS
지포스 9500M G
지포스 9300M GS
지포스 9300M G
지포스 9200M GS
지포스 9100M G
지포스 8800M GTS
지포스 8700M GT
지포스 8600M GT
지포스 8600M GS
지포스 8400M GT
지포스 8400M GS
지포스 8400M G
지포스 8200M G
엔비디아 테슬라
테슬라 S1070
테슬라 C1060
테슬라 C870
테슬라 D870
테슬라 S870
엔비디아 쿼드로
쿼드로 FX 5600
쿼드로 FX 4700 X2
쿼드로 FX 4600
쿼드로 FX 3700
쿼드로 FX 1700
쿼드로 FX 570
쿼드로 FX 370
쿼드로 NVS 290
쿼드로 FX 3600M
쿼드로 FX 1600M
쿼드로 FX 570M
쿼드로 FX 370M
쿼드로 플렉스 1000 모델 IV
쿼드로 플렉스 1000 모델 S4
엔비디아 쿼드로 모바일
쿼드로 NVS 360M
쿼드로 NVS 140M
쿼드로 NVS 135M
쿼드로 NVS 130M

 






  1. 마이핀(My-PIN)이란? 발급 방법

    마이핀(My-PIN)은 인터넷이 아닌 일상생활에서 사용할 수 있는 본인확인 수단으로서 개인식별정보가 전혀 포함되지 않은 13자리의 무작위 번호이며, 그동안 온라인상에서 사용해왔던 아이핀(I-PI...
    Date2015.04.09 CategoryIT KNOWLEDGE
    Read More
  2. UTP 케이블, 카테고리1/2/3/4/5/6 종류와 특징

    UTP는 Unshield Twisted Pair의 약자로서 트위스트 페어는 두가닥의 선을 꼬아서 하나의 페어로 만들어서 생긴 이름입니다. 이렇게 (+)신호와 (-)신호를 꼬아서 보내게 되면 산섭 신호를 상당량 방지할 수 ...
    Date2015.04.09
    Read More
  3. 인텔 펜티엄 20년 역사, P6 펜티엄2 ~ 펜티엄3

    2014년 7월에 펜티엄의 20주년 기념 모델로 Pentium G3258이 발매됐다. 그래서 이번 기회에 Pentium 20년의 역사를 되돌아보며 지난번 P5 세대를 해설했기에 P6 세대를 해설한다. P5와...
    Date2014.07.28 CategoryIT KNOWLEDGE
    Read More
  4. 와이기그(WiGig, Wireless Gigabit Alliance)

    와이기그(WiGig, Wireless Gigabit Alliance)는 비허가된 60 GHz 이상의 주파수 대역으로 동작하는 멀티 기가비트 속도의 무선 통신 기술의 채택을 제고하는 단체이자 802.11ad를 대표하는 이름이다. ...
    Date2014.06.09
    Read More
  5. 오픈SSL (OPEN SSL)

    OpenSSL은 네트워크를 통한 데이터 통신에 쓰이는 프로토콜인 TLS와 SSL의 오픈 소스 구현판이다. C 언어로 작성되어 있는 중심 라이브러리 안에는, 기본적인 암호화 기능 및 여러 유틸리티 함수들...
    Date2014.06.09 CategoryIT KNOWLEDGE
    Read More
  6. 반도체 프로세스 바로 알기, 3D 트라이게이트 핀펫(FinFET)의 탄생

    트랜지스터의 구조 면적은 게이트장에 비례하는 것으로 게이트를 짧게 하면 콘덴서의 용량이 줄어들고 결과적으로 구동 전류가 줄어드는 현상이 생긴다. 더 높은 K(비유 전율)을 가진 Hig...
    Date2014.04.14 CategoryIT KNOWLEDGE
    Read More
  7. 유용한 SSH 명령어 모음

    >> cd 디렉토리를 변경할 때 사용. 예 : [test@host2]$ cd 이동할 디렉토리 명. >> ls 디렉토리의 화일들을 보여줌. 예 : [test@host2]$ ls <옵션> <옵션> -al : Hidden속성의 파일 표시(a...
    Date2013.05.23 CategoryIT KNOWLEDGE
    Read More
  8. 유용한 윈도우 CMD 명령어 활용

    calc : 계산기 charmap : 문자표 cleanmgr : 디스크정리 clipbrd : 클립보드에 복사된 내용표시 cmd : 도스명령프롬프트 실행 control : 제어판 dxdiag : 다이렉트X 진단도구 및 그래픽과 사운드의 ...
    Date2013.05.23 CategoryIT KNOWLEDGE
    Read More
  9. 엔비디아가 설명한 안티 앨리어싱의 정의 (SSAA,MSAA,FXAA,TXAA)

    앨리어싱(aliasing)란 사선이나 곡선을 그리면 발생하는 톱니모양. 이것을 보정하는 기술이 안티 앨리어싱 계단 현상 계단 현상태에서 움직이면 물결이 치는 것처럼 보인...
    Date2012.11.27 CategoryIT KNOWLEDGE
    Read More
  10. 음향에서 사용되는 밸런스케이블과 언밸런스케이블

    음향에서 사용되는 밸런스케이블과 언밸런스케이블이란 => 지난호에 살펴보았던 동축케이블을 잠깐 보도록 하자. 동축케이블은 1개의 신호선과 1개의 접지선으로 구성되어 있다. 이때 신호선을 통해서는 본...
    Date2012.10.09 CategoryIT KNOWLEDGE
    Read More
  11. 썬더볼트 규격에 대하여 (Thunder bolt interface)

    최 신 맥북 프로 모델에는 썬더볼트라 불리는 새로운 커넥션 기술이 들어 있다. 그런데 목요일 아침에 발표된 이 새로운 기술은 여러 가지 의문을 불러일으킨다. 썬더볼트는 정확히 무엇이며, 애플이 어째...
    Date2012.10.09 CategoryIT KNOWLEDGE
    Read More
  12. OLED 조명을 이해하기 위한 주요 용어 ($/klm, $/㎡, lm/W)

    OLED와 LED는 차세대 디스플레이뿐만 아니라 차세대 조명 기술로도 각광받고 있다. 이 기술들은 백열등이나 형광등과 같은 기존 조명 제품보다 다양한 색상을 표현할 수 있으며, 효율이 높고 친환...
    Date2012.02.20 CategoryIT KNOWLEDGE
    Read More
  13. 빅 데이터의 정의 (big data)

    1. Big Data의 개념 및 분류 (1) Big Data의 개념 - 기존 데이터베이스 관리도구의 데이터 수집, 저장, 관리, 분석의 역량을 넘어서는 대량의 데이터 셋(set) - 스마트 단말 및 소셜미디어 등의...
    Date2012.02.18
    Read More
  14. ARM(Advanced RISC Machine)

    ARM(Advanced RISC Machine) 아키텍처는 임베디드 기기에 많이 사용되는 32-bit RISC 프로세서이다. 저전력을 사용하도록 설계하여 ARM CPU는 모바일 시장에서 뚜렷한 강세를 보인다. 1985년 4월 26일...
    Date2012.02.12
    Read More
  15. Amazon.com (아마존닷컴)

    아마존닷컴(Amazon.com, Inc., 나스닥: AMZN)은 워싱턴 시애틀에 있는 미국 전자 상업 회사이다. 인터넷을 통해 물건을 파는 최초의 주요 회사들 가운데 하나였으며 1990년대 말 닷컴 버블 시기에 떠오...
    Date2012.02.12
    Read More
  16. No Image

    광케이블의 종류 [Optical Fiber]

    1. 광케이블의 종류 광전송방식에 따라 크게 2가지로 구분된다 - MMF : 멀티모드(Multimode) - SMF : 싱글모드(Singlemode) 광전송방식의 차이로 구분되며 각 방식마다 전송되는 거리가 다릅니다. 멀티모드...
    Date2011.12.26
    Read More
  17. QR 코드 [Quick Response Code]

    길거리의 광고판을 들여다보면 어느새부턴가 정사각형 모양의 불규칙한 마크가 하나 들어 있음을 알 수 있다. 특수기호나 상형문자 같기도 한 이 마크를 ‘QR코드’라 한다. QR은 ‘Quick Response’의 약...
    Date2011.08.04
    Read More
  18. 삼성그룹에 대해

    삼성그룹(三星 - , Samsung Group)은 이병철이 창립하여 삼성전자, 삼성생명 등 여러 회사들이 계열되어 있는 대한민국의 대표 재벌그룹이다. 1938년에 대구에서 "삼성상회"라는 이름으로 시작하여 1960년...
    Date2011.07.31
    Read More
  19. 마크 주커버그

    거의 모든 IT의 역사, 오늘의 주인공은 오늘날 구글을 위협하는 가장 무서운 상대로 성장한 페이스북과 페이스북을 창업한 마크 주커버그(Mark Zuckerberg) 입니다. 2004년 여러가지 일이 많았지만, 페이스...
    Date2011.05.13
    Read More
  20. EFI 확장 펌웨어 인터페이스 (최신 마더보드 바이오스)

    확장 펌웨어 인터페이스(EFI)는 운영 체제와 플랫폼 펌웨어 사이의 소프트웨어 인터페이스를 정의하는 규격이다. EFI는 모든 IBM PC 호환 컴퓨터에 채용된 역사적으로 오래된 바이오스 인터페이스를 ...
    Date2011.05.13
    Read More
  21. PC 접속 인터페이스들에 대해서 알아보자 (PS/2,USB등)

    1990년대 이전 까지만 하더라도 컴퓨터와 주변기기를 연결할 때 사용하는 인터페이스(포트나 케이블)의 종류가 매우 다양했고 연결해서 사용하는 방법도 각각이었다. 때문에 컴퓨터에 대한 전문 지...
    Date2011.04.12
    Read More
  22. No Image

    DVI 케이블의 종류

    DVI케이블의 종류 DVI 싱글케이블 : 1920 * 1080 이하 해상도 지원 DVI 듀얼케이블 : 1920 * 1080 이상 해상도 지원
    Date2011.04.11
    Read More
  23. GPU 컴퓨팅이란 무엇인가,

    GPU 컴퓨팅 또는 GPGPU는 과학 및 엔지니어링 컴퓨팅의 일반적인 목적에 그래픽 처리 장치(GPU)를 사용하는 것을 말합니다. GPU 컴퓨팅 모델은 이질적인 공동 프로세싱 컴퓨팅 모델에 CPU와 GPU를 함께 사...
    Date2010.11.14
    Read More
  24. No Image

    엔비디아의 CUDA 테크놀로지

    CUDA ("Compute Unified Device Architecture", 쿠다)는 그래픽 처리 장치(GPU)에서 수행하는 (병렬 처리) 알고리즘을 C 프로그래밍 언어를 비롯한 산업 표준 언어를 사용하여 작성할 수 있도록 하는 GPGPU...
    Date2010.11.01
    Read More
  25. No Image

    CPU 아키텍쳐 - x86 체계

    x86 또는 80x86은 인텔이 개발한 마이크로프로세서 계열을 부르는 말이자, 이들과 호환되는 프로세서들에서 사용한 명령 집합 아키텍처들을 통칭하는 말이다. x86 아키텍처는 데스크톱 컴퓨터 시장에서 매...
    Date2010.11.01
    Read More
  26. RSS란 무엇인가

    1. RSS란 무엇인가? RSS는 Really Simple Syndication 의 약자로 직역하자면 '매우 간단한 배급(?)' 정도로 해석할 수 있을 것이다. 말 그대로 매우 간단하게 배급하고 읽는 사람 역시 매우 간단하게 구독...
    Date2010.10.28
    Read More
  27. No Image

    애플(Apple)에 대하여

    유명한 애플 로고는 로브 자노프(Rob Janoff)가 1976년에 디자인하였고, 다중 색상의 무지개빛 사과와 '한 입 베어먹은' 모양의 형태를 취하였다. 이 로고는 여러가지 형태의 색상 변화가 있긴 했지만 계속...
    Date2010.10.12
    Read More
  28. No Image

    파이어폭스의 미래는 어둡다

    모질라의 파이어폭스가 몰락하고 있다. 마이크로소프트 인터넷 익스플로러라는 부동의 1위와 구글 크롬이라는 강력한 추격자 사이에 갇혀 버린 이 오픈소스 커뮤니티의 촉망받는 유망주는 조만간 역사의 무...
    Date2010.09.28
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7