본문 바로가기

Coding Note

[OpenCL] AMD OpenCL configurate the interface at visual studio 2008


우선 AMD APP SDK를 다운로드 받는다. (developer.amd.com)

config::>
1. openCL파일을 cpp파일로 열기
2. Tool->Options->Text Editor->File Extecsion 에서 cl 을 Microsoft VsC++로 추가하기
(.cl파일에서 c++문법의 구문하이라이팅을 해주게된다.)

3.위치는 조금 다를 수 있지만 ~\AMD APP\samples\opencl\SyntaxHighlighting\usertype.dat 을 
~\Program Files\Microsoft Visual Studio 9.0\Common7\IDE 에 복사한다. 마찬가지로 OS에 따라 위치는 조금 다를 수 있다. 찾지못하면, 구글링해도 금방나온다.
 적용된걸 확인하려면, VS를 재실행 해줘야 한다.

IMPORTANT:: usertype.dat가 이미있다면, 그 파일을 열고 다음 라인에 붙여넣어줘야 한다.

setting::>
새 VC project(Template:empty project) 를 만들어 주고, cpp소스코드를 추가한 후, 
project->properties 에서 

1. c++->General에 Additional Include Directories에 다음경로를 추가한다.
(AMD APP SDK의 기본 설치경로이다.)
C:\Program Files\AMD APP\include
(이렇게 하면, #include<CL/cl.h> 등으로 include폴더의 CL폴더 내의 cl.h에 접근할 수 있다.
 그럼 ~\CL경로로 추가하면 되지않느냐 할 수 있겠지만, cl.h의 파일내에 모든 include경로가 이전경로를 포함한 형태이기 때문에, 이걸 전부 바꿔서라도 쓸 생각이 있는게 아니라면 그냥 ~\include까지만 추가하도록 하자.)

2. linker->General 에서 Additional Library directories에 다음 경로를 추가한다.
C:\Program Files\AMD APP\lib
C:\Program Files\AMD APP\lib\x86 (64bit 컴이면 x64)

3. linker->Input 에서 Additional Dependencies add 에 
아까 lib path의 .lib파일들을 추가해준다.
OpenCL.lib
OVDecode.lib
aticalcl.lib
aticalrt.lib

Code generation setting::>
properies->c/c++->Code Generation 의 runtime library를 multi thread debug(/Mtd)로 한다.

이걸로 세팅은 끝났다.
이걸 템플릿으로 만들어둔다면 openCL 프로그래밍을 더 편하게 할 수 있을것같다.
(cuda용 configuration 보고 amd껄로 바꿨다. cuda용 원문은 아래 링크에서.
http://opencl.codeplex.com/wikipage?title=OpenCL%20Tutorials%20-%200&referringTitle=OpenCL%20Tutorials )

더 알아보니 간단한 방법이 있었다.
툴 -> 옵션 ->프로젝트&솔루션 -> VC++ directories 에 
포함파일로 위 경로의 ~\includ  와
라이브러리 파일로 위 경로의 ~\lib  를 추가해주니 된다.(세부설정은 해줘야한다.)

이렇게 한 후
#include<CL/cl.h>
#pragma comment(lib, "OpenCL")

선언해서 사용하면 된다. 

'Coding Note' 카테고리의 다른 글

[WPF] WPF 시작하기  (1) 2012.01.16
[C++] 상속과 다형성  (0) 2011.12.20
[OpenCL] About  (0) 2011.11.22
[winAPI] API 환경변수 가져오기  (0) 2011.11.08
[Network] Delivery & Forwarding  (1) 2011.11.05