Linux

    File System Profiling

    free(1) $free -th total used free shared buff/cache available Mem: 31G 1.5G 28G 79M 1.1G 29G Swap: 2.0G 0B 2.0G Total: 33G 1.5G 30G top(1) ... KiB Mem : 32832784 total, 30064040 free, 1579628 used, 1189116 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 30760488 avail Mem ... 1189116 buff/cache vmstat buff and cache column -> buffer cache vmstat -w 1 procs -----------------------memory..

    CPU Profiling

    CPU Analysis 현재 CPU 정보 확인하기 CPU core 별 clock 확인하기 cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_max_freq uptime 시스템 부하 평균을 표시한다. load average의 값은 앞에서부터 1분, 5분, 15분 동안의 평균 부하이다. uptime 08:41:55 up 1 day, 17:41, 4 users, load average: 0.28, 0.24, 0.27 부하평균은 CPU 자원에 대한 요구사항으로써, ** 실행 중인 스레드 개수 + 대기열의 스레드 개수 **이다. 만약 부하 평균이 호스트 머신의 CPU 개수보다 크면 스레드를 처리하기에 CPU가 부족한 상황이며, 대기열에 여러 스레드가 CPU를 할당받기 위해 대..

    ftrace

    name information note current_tracer 현재 설정된 tracer 값 available_tracers tracer 가능한 정보들, 커널 컴파일 시 설정될 수 있다. 활성화 위해선 current_tracer에 이벤트를 작성한다. tracing_on ftrace ring buffer을 활성화할지 여부를 결정한다. 트레이서를 비활성화하려면 이 파일에 0을, 활성화하려면 1을 각각 설정하십시오. 참고, 이는 링 버퍼에 대한 쓰기를 비활성화할 뿐이며, 추적 오버헤드는 여전히 발생할 수 있다. trace 사람 친화적인, 즉 텍스트 형태로 트레이스 결과가 출력된다. 다만 이 파일을 읽는 동안은 트레이스가 일시적으로 중단된다. trace_pipe trace와는 달리 실시간 트레이싱 정보를 파일..

    [objdump] symbol table column 의미

    COLUMN ONE: the symbol's value COLUMN TWO: a set of characters and spaces indicating the flag bits that are set on the symbol. There are seven groupings which are listed below: group one: (l,g,,!) local, global, neither, both. group two: (w,) weak or strong symbol. group three: (C,) symbol denotes a constructor or an ordinary symbol. group four: (W,) symbol is warning or normal symbol. group fiv..

    shell script에서 Makefile로 변수 전달하기.

    shell script에서 Makefile로 변수 전달하기. 환경변수를 이용하여 전달할 수 있다. export test_path=/home/test/path 환경변수 전달이 싫다면, make 수행 시 전달도 가능하다. make TestPath="${test_path}" ... Makefile에서는 아래와 같이 간단하게 참조할 수 있다. TestPath=${test_path}

    [cgroup] memory

    Cgroup (Control Group) Subsystem - memory memory 서브시스템은 cgroup에서 사용하는 메모리 자원에 대해 프로세스가 사용하는 메모리 양과 사용 가능한 메모리 자원을 컨트롤 할 수 있습니다. 또한 사용되는 메모리 자원에 대한 레포트도 자동으로 생성해주는 서브시스템입니다. memory 서브시스템은 시스템으로부터 태스크의 그룹의 메모리 접근등의 동작을 격리화시킵니다. 이 서브시스템이 사용되는 경우는 다음과 같습니다. 메모리 소모가 많은 어플리케이션을 격리하고 더 작은 어플리케이션으로 제한할 수 있습니다. mem=XXXX 설정을 통해 부팅하는 경우의 좋은 대안이 될 수 있습니다. 가상화 솔루션에서 원하는 메모리 양을 제어할 수 있습니다. 위 내용 외에도 여러 요소가 있을 ..