반응형

전체 글 118

[CUDA] 수식어

[CUDA] 수식어수식어의 종류는 함수의 수식어, 변수의 수식어로 크게 2가지로 나뉜다. 함수의 수식어는 함수 type 정의 앞에 붙는다. ※함수의 수식어 종류__global__ device(그래픽카드)에서 실행되며, host(CPU)에서 call 할 수는 있어도 device에서 call 할 수는 없다. device로 실행하는 kernel function 지정에 사용할 수 있다. * 문법 주의사항 __global__ void function>( int a, int b, int c) { } - Function의 Return type은 무조건 void type 이다. - 을 이용하여 실행 시 block과 thread를 지정할 수 있다. - 재귀호출 하여 사용하면 절대 안된다. - Function 내 stat..

Windows/CUDA 2018.05.23

[CUDA] 프로젝트 작성 및 기본 구조

[CUDA] 프로젝트 작성 및 기본 구조* 개발 환경 - IDE : Visual Studio 2013 - CUDA : v9.1 - OS Type : 64 bit 1. 기본적으로 C 프로젝트에는 소스 파일(*.c)과 헤더 파일(*.h)이 존재한다면 CUDA도 동일하게 소스파일(*.cu)과 헤더 파일(*.cuh)이 존재한다. 2. 기본적인 Sample Test를 위해 하기와 같이 빈 프로젝트를 생성한다. 3. 프로젝트 빌드 종속성의 사용자 지정 빌드 옵션에서 사용하는 CUDA 버전을 선택한다. - 이 작업을 하면 프로젝트의 추가 종속성(lib) 및 추가 포함 디렉터리(include) 등 환경 설정들이 추가 반영 된다. 5. 프로젝트 속성에 링커의 lib 추가종속성을 추가해준다. 6. 프로젝트가 생성 되면 M..

Windows/CUDA 2018.05.21

[CUDA] Visual Studio 2010 / Visual Studio 2013 기반 OpenCV + CUDA Build

[CUDA] Visual Studio 2010 / Visual Studio 2013 기반 OpenCV + CUDA Build1. Visual Studio 를 먼저 설치해야 한다. (주의 필요) - Visual Studio 버전을 확인하고 컴파일러에 따라 필요 패키지가 설치되므로 Cuda 설치 전 Visual Studio 가 먼저 설치되어야 한다. - 만약 Visual Studio를 Cuda 설치 이후 추가적으로 다른버전을 더 설치하여 개발한다면 Cuda를 다시 한번 설치해 줘야 한다. 2. Visual Studio 설치, CUDA 설치, OpenCV 설치, CMake 설치 이후 CMake 를 실행하여 OpenCV 소스 경로와 CMake 설정이 반영된 프로젝트 생성 경로를 셋팅해준다. 3. Configur..

Windows/CUDA 2018.05.21

Visual Studio 2015 설치 에러 (Update for Microsoft Windows (KB2999226))

MS Visual studio 2015를 설치 하는데 아래와 같은 Error가 발생해서 제대로 설치가 안되었다. Update for Microsoft Windows (KB2999226) : 설치를 하는 동안 오류가 발생했습니다. 무슨 Update 3 내용 뭐시기 였는데 Error Code는 KB2999226 였다. 구글링을 해보니 뭔지는 잘 모르겠지만 Windows에서 범용 C 런타임에 대한 업데이트 관련 내용인듯 하다. 하기 링크의 하단에 Visual studio 2015 +를 눌러서 해당 설치 버전의 설치 파일로 다운받아 설치하면 된다. https://www.visualstudio.com/downloads/설치 과정에서 Update 3 관련된 내용을 못받아와서 설치가 실패 되는것 같다. 나는 Visu..

Windows 2016.12.21

[Queue] Linked List 방식 환형 큐(환형 링크드 리스트)

앞서 설명한 Node 개념으로 Linked List 방식을 사용하여 간단한 환형 큐를 작성해 보았다. 개념적 이해를 돕고 보기 쉽게 아주 간단히 작성하기 위해 노드 중간 삽입 중간 삭제 등... 은 작성하지 않았다. 이정도 이해하고 구현할 수 있으면 충분히 응용해서 구현 가능 할 것이라 생각 된다. #include #include #define QUEUE_TEST1 typedef struct CircularQueueNode { int data; struct CircularQueueNode* Next; struct CircularQueueNode* Pre; }CQNode; #if QUEUE_TEST CQNode* CreateNode(int i) #else CQNode* CreateNode() #endif ..

Algorithms 2016.08.17

08. OpenGL Programming - 명령어

*입력 모드 - 메져 : 입력장치가 응용프로그램에 넘겨주는 입력 값 - 트리거 : 메져를 전달하라는 신호 - 이벤트 : 입력장치가 트리거 되는 순간 하나의 이벤트가 발생한 것으로 본다. (어떤 행위를 유발하는 것) ex) 마우스를 어떤 위치에 갖다 놓고 클릭, 그 위치의 좌표(x, y) 값 이벤트 트리거 메져 이벤트 : 마우스를 어떤 위치에 갖다 놓고 클릭 트리거 : 클릭 메져 : 그 위치의 좌표(x, y) 값 *이벤트 타입별 콜백 함수 기능 콜백 함수 등록 명령 (예) 콜백 함수 프로토 타입 화면 콜백 지정 명령 glutDisplayFunc(MyDisplay) void MyDisplay(); 마우스 콜백 지정 명령 glutMouseFunc(MyMouse) void MyMouse(int button, i..

Windows/OpenGL 2016.03.14

const *(포인터) 사용법

간단하게 예문으로 설명하도록 하겠다. int a = 12345; int* const val1 = &a; // 포인터를 상수화. a값 변경 O , 주소 변경 X const int* val2 = &a; // 값을 상수화. a값 변경 X, 주소 변경 O int const* val3 = &a; // 값을 상수화. a값 변경 X, 주소 변경 O const int* const val4 = &a; // 전부 상수화. int const* const val5 = &a; // 전부 상수화. /*결론 * 포인터 (*)를 기준으로 const가 * 포인터 (*) 왼쪽에 붙으면 가리키는 포인터의 값 변경이 불가능 하지만 가리키는 포인터 주소는 변경 가능. * 포인터 (*) 오른쪽에 붙으면 가리키는 포인터의 값 변경이 가능하지만 ..

Computer Language/C 2015.05.08

[Multi Input]하나의 마우스 키보드로 여러대의 컴퓨터 입력

Multi InPut 요즘 컴퓨터를 사용하지 않는 사람이 연세가 많으신 어르신분들 외엔 극 소수로 없을 것이다. 또한 한사람이 보유하고 동시 사용하는 컴퓨터의 수도 만만치 않게 많을 것이다. 이러한 현상으로 여러대의 컴퓨터를 여러대의 키보드 마우스로 입력을 하고 사용하다보면 컴퓨터 앞은 온통 여러개의 마우스와 큼직큼직한 키보드로 가득차 공간도 부족하고, 나중에 마우스가 어느 컴퓨터를 제어하는 것이더라? 하는 착각을 할 수도 있다. 이를 해결하기 위해 다수의 컴퓨터를 하나의 키보드와 마우스로 제어가 가능하도록 해주는 하드웨어가 있다. 하지만 이것 또한 제한적인 요소가 있기 때문에 소프트웨어로 만들어 이용할수 있도록 제공하는게 있다. 첫번째 소프트웨어는 Microsoft 에서 제공하는 "Microsoft G..

The others 2015.01.25

이클립스 설치와 사용 방법

이클립스(Eclipse) 가장 대표적인 자바의 개발도구이며, 통상 IDE라고 불리는 소프트웨어로 분류된다. IDE는 통합 개발 환경(Integrated Development Environment) 의 약자로, 개발에 필요한 다양한 도구들이 결합되어 있는 거대 소프트웨어를 포괄적으로 의미한다. 이클립스는 무료 오픈소스이고, 모든 운영체제를 지원한다. 그리고 Java 뿐만 아니라 다양한 언어를 지원하는 에디터가 존재 한다. 이클립스 설치 이클립스는 아래 사이트에서 각자의 운영체제에 맞는 버전을 다운로드 받으면 된다. http://www.eclipse.org/downloads/ 윈도우의 경우엔 별도의 설치 과정은 없고 압축파일을 풀고 실행파일을 실행하면 된다. 필자의 경우는 다운로드 받은 이클립스 파일을 자바..

Java 설치 및 실행

1. Java 설치 Java는 Oracle 홈페이지에서 다운로드 받을 수 있고, 각자 사용하는 OS에 맞는 버전을 다운로드 받아 설치하면 된다. http://www.oracle.com/technetwork/java/javase/downloads/index.html "실행" 에서 cmd 창을 열고 "Java"를 쳐보면 아래와 같이 나온다. 그리고 "javac"를 입력하면 다음과 같이 나오게 되는데, 이것은 java를 설치는 되었지만, 환경변수(Path) 설정까지는 해주지 못한 것이다. 일반적으로 명령어 "java"는 자바 프로그램을 실행 시킬 때 사용하는 명령어이고, "javac"는 사용자가 만든 java 프로그램 소스를 컴파일 할 때 사용하는 명령어다. 여기서 결론은 일반적으로 java 설치는 단순히 설..

반응형