본문 바로가기

TensorRT TensorRT는 학습된 Deep Learning 모델을 최적화하여 NVIDIA GPU상에서 Inference 속도를 향상시켜 Deep Learning 서비스를 개선하는데 도움을 줄 수 있는 모델 최적화 엔진이다. 다양한 Deep Learning Framework를 통해 작성된 Model을 TensorRT를 이용하여 최적화하여 NVIDIA Gpu 환경에 적용가능하도록 할 수 있다. TensorRT를 통해 얻을 수 있는 당연히 Inference 가속을 통한 속도 향상이다. ResNet50을 기준으로 할 때 동일한 Gpu에서 TensorRT를 사용하는 것만으로도 8배 이상의 성능 효과가 있는 것을 알 수 있습니다. OS에 따라 성능차이는 있을 수 있다. 또한 Linux에서는 C++ 및 Python Api를 ..
Log[2] - Macro Log를 기록할 때 유용하게 사용할 수 있는 Macro를 소개하고자 한다. 아래 macro들은 assert.h에 정의 되어 있다. 1. __func__ : 해당 메크로가 선언된 위치의 함수명을 가져온다. const char * 형 변수 임에 주의하기 바란다. 2. __FILE__ : 해당 메크로가 선언된 위치의 파일의 경로를 가져온다. 3. __LINE__ : 해당 메크로가 선언된 위치의 라인수를 가져온다. 4. __DATE__ : 해당 메크로가 선언된 파일의 컴파일 된 날짜를 가져온다. 5. __TIME__ : 해당 메크로가 선언된 파일의 컴파일 된 시간을 가져온다. 6. __FUNCTION__ : __func__ 와 동일한 기능을 제공한다.
C2440 C2440을 검색하면 관련 검색어에서 볼 수 있듯이 대표적으로 아래와 같은 상황에서 볼 수 있습니다. const char * 형식의 값을 사용하여 char * 형식의 엔터티를 초기화할 수 없습니다. Microsoft Docs에서 C2440는 아래와 같이 정의합니다. type1 에서 type2 (으)로 변환할 수 없습니다. 저의 경우 Class 생성자 초기화 단계에서 매크로를 통해 char * 값을 가져왔을 때 아래의 결과로 보았습니다. 알고보니 매크로를 통해 가져온 값이 const char * 값이였습니다. 혹시 C2440 Message를 보게 될 경우 사용중인 변수의 type을 확인 하기 바랍니다.
Log[1] - assert() Log관련하여 관심이 있어 조금씩 정리해보려고 한다. assert 매크로는 assert.h 파일에 정의되어 있으며 조건 만족 유무에 따라 프로그램 중지 및 실행을 제공한다. Debug 모드에서만 동작되므로 필히 assert안에서 프로그램의 상태를 변화시키면 안된다. 사용 방법은 간단하다. 결과를 보면 문제가 발생한 조건, 컴파일된 파일명, 해당 파일의 라인 수까지 확인할 수 있다.
C4430 C4430 : 형식 지정자가 없습니다. int로 가정합니다. 참고 : C++ 에서는 기본 int를 지원하지 않습니다. 해당 Error 내용은 선언 위치에 관한 것이다. 위 예시를 보면 알 수 있듯이 선언 위치에 문제가 있다. 선언 위치를 변경한다면 해결 가능하다. C4430은 Class간 교차 참조시에 자주 발생하므로 주의 바란다.
Browse State-of-the-Art (SOTA) 최근 다양한 분야에서 Machine Learning(ML)이 사용되고 있다. 대표적으로 Computer Vision, Natural Language Processing, Medical, Robots 등등 총 16개 분야에서 Data set 별로 가장 성능이 좋은 방법을 정리해놓은 것을 찾아 정리하게되었다. TREND, DATASET, BEST METHOD, PAPER TITLE, PAPER Link, Code Link(Github), COMPARE 순으로 정리가 되어있다. Papers with Code라는 트윗터로부터 update가 진행되며 Url은 아래와 같다. https://paperswithcode.com/sota
파일명 다루기[2] - PowerShell 다량의 파일명을 수정할 일이 있어 정리하게 되었다. 몇가지 기능을 처리하는 방법에 대해 소개하겠다. 1. 단일 파일 변경 rename-item "SrcFilePath" "DstFilePath" 2. 다중 파일 변경 dir | rename-item -newname {$_.name -replace "SrcPartOfFileName","DstPartOfFileName"} 주의 사항 : 해당 경로에 다른 디렉토리가 존재할 시 파일명은 변환이 되더라도 Error Message가 나올 수 있다. 이를 활용하면 모든 파일 이름에 포함된 공백을 제거하는것도 가능하다. 3. 확장자 변경 dir | rename-item -newname {[io.path]::changeExtension($_.name, "TargetExte..
파일명 다루기[1] - 명령 프롬프트(cmd) 다량의 파일명을 변경할 일이 있어 정리하게 되었다. 2가지 명령어에 대하여 소개하겠다. 1. ren 명령어 사용 방법 ren [Src File Path] [Dst File Path] 예시 단일 파일 변경 다중 파일 변경 2. move 명령어 사용 방법 move [Src File Path] [Dst File Path] 예시