[MFC] simdjson library 설치

반응형

MFC 기반 프로젝트에서 json을 파싱 하기 위해 가장 적절한 json 라이브러리를 알아보았습니다.

그 결과 simdjson이 가장 최신기술을 활용하여 개발된 것 같아서 프로젝트에 적용해 보았습니다.

참고로 32비트 프로젝트에서는 사용이 불가능합니다. 

 

1. simdjson?

SIMD 기술을 적용하여 json 파서 중 가장 빠른 파서라고 하며 관련 논문도 찾아볼 수 있습니다.

SIMD는 Single Instruction Multiple Data의 줄임말로서 병렬 컴퓨팅의 한 종류입니다. 하나의 명령어로 여러 개의 값을 동시에 계산하는 기술입니다. 하나의 명령어를 수행하는 데 걸리는 시간을 줄일 수 있기 때문에 연산이 많은 작업에서 성능을 향상할 수 있습니다. 

https://github.com/simdjson/simdjson에서  simdjson.h 파일과 simdjson.cpp 파일 단 2개만 다운로드하여

프로젝트에 포함시켜 컴파일하면 끝입니다.

역시 똑똑한 박사들이 개발한 거라 그런지 사용법도 간단하네요.

아래와 같이 프로젝트에 헤더파일과 cpp파일만 추가 후 빌드합니다.

 

단, 최신 c++17로 작성되어 있으므로 기본옵션 c++14를 c++17 이상 상위 버전으로 변경해 주어야 합니다.

 

예제 json 파일을 디스크에 저장 후 테스트코드를 넣고 실행하여 결과값 100이 나오면 제대로 설치가 된 것입니다.

 

이상으로 c++로 개발되어 c/c++ 프로젝트에 활용할 수 있는 json 라이브러리인 simdjson을 프로젝트에 적용하는 방법에 대해 알아보았습니다.

참고사이트: https://simdjson.org/

반응형

'프로그래밍 > C | C++' 카테고리의 다른 글

[MFC] C++ MiniDumpWriteDump  (0) 2022.08.12
[MFC] 로그(Log) 출력 Logger  (0) 2022.08.12
[MFC] TA-LIB 설치  (0) 2022.08.01
엑셀을 활용한 C코드 생성  (0) 2020.11.12
QEMU를 이용한 하드웨어 모델링  (0) 2020.08.15