Tag Archives: glibc

리눅스 / 맥오에스에서 CPU 갯수 얻기

Linux / MacOS X 플랫폼에서 CPU 갯수를 얻어오는 함수입니다. 잊어버릴까봐 기록해 둡니다. #include <stdio.h> #ifdef __linux__ #include <sys/sysinfo.h> #else #ifdef __APPLE__ #include <sys/param.h> #include <sys/sysctl.h> #else #error "Only Linux or OSX is supported!" #endif /* __APPLE__ */ #endif /* __linux__ … Continue reading

Posted in 카스탈리엔 | Tagged , , | Leave a comment

TCMalloc 구글 성능 도구를 이용한 메모리 누수 디버깅

리눅스에서 메모리 침범이나 메모리 누수, 혹은 복잡한 메모리 접근 관련 오류를 디버깅할때는 대부분 Valgrind 도구를 이용합니다. 하지만 Valgrind는 많은 메모리를 사용하고 실행 속도가 현저하게 느려지기 때문에, 별도의 타겟 장비에서 제한된 조건으로 동작하는 어플리케이션에는 조금 무리가 있습니다. 게다가 Valgrind의 메모리 검사 도구는 프로그램이 … Continue reading

Posted in 카스탈리엔 | Tagged , | Leave a comment

TCMalloc, 구글 성능 도구

장기간 실행되면서 빈번하게 메모리를 할당 / 해제하는 것은 물론 수십 개의 쓰레드가 동작하는 프로그램에서는 어쩔 수 없이 메모리 단편화(Memory Fragmentation)가 발생합니다. 메모리 단편화가 많을 경우 어플리케이션 로직에 메모리 누수(memork leak)가 없어도 C 라이브러리 메모리 관리자가 메모리를 커널에 반환하지 않기 때문에 … Continue reading

Posted in 카스탈리엔 | Tagged , , | Leave a comment