FLImaging 6.5.8.1
ProcessingUnitCuda.h
1#pragma once
2
11#include "ProcessingUnitBase.h"
12#include "FLArray.h"
13
15namespace FLImaging
16{
18 namespace Base
19 {
28 {
29 SupportToDuplicateObject(CProcessingUnitCuda, *this);
30
31 public:
40
51
62
71
85 virtual const CResult Assign(const CProcessingUnitCuda& pu);
86
100 virtual const CResult Assign(const CProcessingUnitCuda* pPu);
101
102 virtual const CProcessingUnitBase& operator=(const CProcessingUnitBase& pu) override;
103
104 virtual const type_info& GetTypeInfo() const override;
105
106 virtual bool IsEqual(const CProcessingUnitBase& pu) const override;
107 virtual bool IsEqual(const CProcessingUnitBase* pPu) const override;
108
120 static const CResult IsCudaAvailable();
121
135 static const CResult IsCudaImageProcessingAvailable(int32_t i32DeviceIndex);
136
150 static const CResult IsCudaDeepLearningAvailable(int32_t i32DeviceIndex);
151
162
174 static const CResult GetDeviceIndex(int32_t& i32DeviceIndex);
175
187 static const CResult SetDeviceIndex(int32_t i32DeviceIndex);
188
200 static const CResult WarmUp();
201
202
203
218
234 static const CResult SetInvolvedCudaDeviceIndices(const CFLArray<uint32_t>& flaInvolvedCudaDeviceList);
235
248
261
274
275
286
301
315 static const CResult GetAvailableCudaMemory(size_t& stAvailableCudaMemory);
316
330 static const CResult GetBusID(int32_t& i32BusID);
331
349 static const CResult GetCudaComputeCapability(int32_t i32DeviceIndex, int32_t& i32Major, int32_t& i32Minor);
350
351 /*
352 * \~English
353 * \brief Retrieves the CUDA driver version.
354 * @param[out] i32Version The value of the driver version.
355 * @retval const FLImaging::CResult Information about the result of the execution.
356 * @see FLImaging::CResult
357 *
358 * \~Korean
359 * \brief 쿠다 드라이버 버전을 얻어옵니다.
360 * @param[out] i32Version 드라이버 버전 값
361 * @retval const FLImaging::CResult 실행 결과에 대한 정보
362 * @see FLImaging::CResult
363 */
364 static const CResult GetCudaDriverVersion(int32_t& i32Version);
365
366 DeclareGetClassType();
367 };
368 }
369}
Template type 의 배열 클래스.
Definition RangeTree.h:19
프로세싱 유닛 기초 클래스
Definition ProcessingUnitBase.h:27
Cuda 프로세싱 유닛 클래스
Definition ProcessingUnitCuda.h:28
virtual const CResult Assign(const CProcessingUnitCuda *pPu)
대입
static CFLArray< uint32_t > GetInvolvedCudaDeviceIndices()
연산에 참여할 쿠다 장치 인덱스 반환
static const CResult ClearInvolvedCudaDeviceIndices()
연산에 참여할 쿠다 장치 인덱스 초기화
CProcessingUnitCuda(const CProcessingUnitCuda *pPu)
복사 생성자 (포인터)
static const CResult SetDeviceIndex(int32_t i32DeviceIndex)
사용할 쿠다 장치 인덱스 설정
static const CResult GetCudaComputeCapability(int32_t i32DeviceIndex, int32_t &i32Major, int32_t &i32Minor)
쿠다의 Compute Capability 값을 얻어옵니다.
static const CResult UnlockToModifyInvolvedCudaDeviceIndices()
LockToModifyInvolvedCudaDeviceIndices 함수에 의해 잠긴 상태를 해제 합니다.
static const CResult IsCudaDeepLearningAvailable(int32_t i32DeviceIndex)
쿠다 딥 러닝 실 사용 가능 여부를 반환
static CFLArray< uint32_t > GetPermittedCudaDeviceIndices()
허가된 쿠다 장치 인덱스 반환
static const CResult IsCudaImageProcessingAvailable(int32_t i32DeviceIndex)
쿠다 이미지 프로세싱 실 사용 가능 여부를 반환
virtual ~CProcessingUnitCuda()
소멸자
CProcessingUnitCuda(const CProcessingUnitCuda &pu)
복사 생성자 (참조)
static const CResult LockToModifyInvolvedCudaDeviceIndices()
연산에 참여할 쿠다 장치 인덱스 설정 변경을 막습니다. 즉 해당 함수 호출 후 SetInvolvedCudaDeviceIndices 함수가 동작하지 않습니다.
static const CResult GetAvailableCudaMemory(size_t &stAvailableCudaMemory)
현재 선택된 장치의 사용가능한 쿠다 메모리 반환
virtual const CProcessingUnitBase & operator=(const CProcessingUnitBase &pu) override
대입 연산자
static const CResult GetDeviceIndex(int32_t &i32DeviceIndex)
설정된 쿠다 장치 인덱스 반환
virtual const CResult Assign(const CProcessingUnitCuda &pu)
대입
static const CResult IsCudaAvailable()
쿠다 실 사용 가능 여부를 반환
static const CResult WarmUp()
초기 로딩 중에 Cuda 모듈이 소요되는 시간을 미리 처리하는 데 도움을 주는 함수
static int32_t GetAvailableCudaDeviceCount()
사용 가능한 쿠다 장치의 수를 반환
static const CResult GetBusID(int32_t &i32BusID)
현재 선택된 장치의 버스 ID를 얻어옵니다.
static int32_t GetPermittedCudaDeviceCount()
사용 허가된 쿠다 장치의 수
static const CResult SetInvolvedCudaDeviceIndices(const CFLArray< uint32_t > &flaInvolvedCudaDeviceList)
연산에 참여할 쿠다 장치 인덱스 설정
virtual const type_info & GetTypeInfo() const override
타입 정보를 얻음
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1514