2024/12 2

Jetson에서 onnxruntime 사용 시 pthread_setaffinity_np failed 에러 해결하기

Nvidia 젯슨 플랫폼은 엔비디아에서 만든 엣지 디바이스 플랫폼으로 GPU를 엣지 디바이스에서도 사용하기 위한 프로젝트들을 위한 고성능 엣지 디바이스 플랫폼이다. 최근 Jetson 기기에서 onnxruntime을 사용해서 모델을 포팅하려던 중 다음과 같은 에러를 마주하게 되었다:2024-12-17 08:24:58.694297027 [E:onnxruntime:Default, env.cc:251 ThreadMain] pthread_setaffinity_np failed for thread: 531, index: 6, mask: {7, 39, }, error code: 22 error msg: Invalid argument. Specify the number of threads explicitly so th..

AI/Nvidia Jetson 2024.12.18

엔터프라이즈 아키텍처는 냉소적이어야 한다.

회사에 입사를 하고 많은 프로젝트들을 거치며 꾸준히 느끼는 바가 있는데, 기본적으로 엔터프라이즈 아키텍처는 냉소적이어야 한다는 것이다. 실제 세상에서 다양한 물리적 혹은 논리적인 이유로 시스템들은 에러를 마주하게 된다. 그 어떤 큰 기업에서 운영하는 시스템도 에러로부터 자유로울 수는 없다는 것은 확실하다. 엔터프라이즈 아키텍처는 이러한 현실에 냉소적일 수 있는 아키텍처여야만 한다. 다른 API나 모듈 또는 컴포넌트가 언제든 에러를 낼 수 있다고 의심하고, 그들이 주기적으로 에러를 낼 것이라는 가정 하에 스스로를 지킬 수 있는 방벽을 덕지덕지 세워 놓아야만 한다. 서킷브레이커 도입을 통해 장애 전파를 막고, try-catch 등을 통해 적절한 레이어에서 적절하게 에러 처리를 할 수 있도록 코드를 짜야 한다..