Featured image of post [Memory 04] Virtual Memory 관리 힌트

[Memory 04] Virtual Memory 관리 힌트

madvise(MADV_DONTNEED, MADV_FREE 등)와 msync로 페이지 회수·저장소 동기화 시점을 커널에 알려주는 방법, SPEC CPU 2017 기준 geomean 한 자릿수%대까지 오버헤드가 낮아져 실용화 국면에 들어선 ARM MTE의 모드별 판단 기준을 심화 난이도로 정리합니다.

Featured image of post [Memory 04] 구조체 패딩과 정렬

[Memory 04] 구조체 패딩과 정렬

구조체 멤버가 정렬 규칙 때문에 어디에 어떤 크기로 패딩이 채워지는지 필드별 오프셋 예시로 설명하고, alignas/alignof로 정렬을 직접 제어하는 방법과 필드 재배치로 구조체 크기·캐시 라인 활용도를 개선하는 기법, packed 구조체의 트레이드오프까지 다룹니다.

Featured image of post [Memory 04] 메모리 누수 탐지

[Memory 04] 메모리 누수 탐지

Valgrind Memcheck과 AddressSanitizer·LeakSanitizer가 내부적으로 어떻게 누수를 찾아내는지 설명하고, 두 도구의 탐지 범위·오버헤드·플랫폼 제약을 비교해 언제 어떤 도구를 CI·개발 루프에 배치할지 판단 기준을 정리합니다.

Featured image of post [Memory 04] 메모리 단편화 분석·대응

[Memory 04] 메모리 단편화 분석·대응

힙 할당에서 내부·외부 단편화가 각각 어떤 구조적 원인으로 생기는지 분석하고, mallinfo2·malloc_info·jemalloc 통계로 단편화 정도를 정량 측정하는 절차와, 풀·아레나·할당자 교체 중 무엇을 먼저 시도할지 판단하는 기준을 정리합니다.

Featured image of post [Memory 04] 메모리 대역폭 최적화

[Memory 04] 메모리 대역폭 최적화

메모리 대역폭이 지연시간과 구분되는 자원인 이유와 STREAM·roofline·perf 언코어 카운터로 병목을 진단하는 방법을 다룹니다. CXL 4.0 스펙(2025-11) 발표와 실제 배포 세대(CXL 2.0)의 괴리를 근거로 표준과 하드웨어 가용성을 구분하는 판단 기준을 제시합니다.

Featured image of post [Memory 04] 캐시 친화적 접근 패턴

[Memory 04] 캐시 친화적 접근 패턴

순차 접근·stride 패턴·batching 전략으로 캐시 미스를 줄이는 방법을 다룹니다. 하드웨어 프리페처가 예측에 성공하는 조건과 실패하는 경계, 루프 타일링으로 캐시 용량 한계를 넘는 데이터를 다루는 실전 기법을 정리합니다.

Featured image of post [Memory 04] 커스텀 할당자 구현 패턴

[Memory 04] 커스텀 할당자 구현 패턴

C++ Allocator 요구사항(value_type, allocate/deallocate, rebind, 동등성)을 충족하는 선형·풀·스택 할당자를 구현하고, std::vector·std::list 등 STL 컨테이너와 연동하는 방법과 equality·propagate 정책 함정을 다룹니다.

Featured image of post [Memory 04] 컨테이너 비용 모델

[Memory 04] 컨테이너 비용 모델

STL 컨테이너(vector·deque·list·map·unordered_map)가 실제로 치르는 비용을 할당 횟수·요소당 메모리 오버헤드·이동 비용 세 축으로 분해합니다. 카운팅 할당자로 직접 측정하는 방법과 이후 챕터(풀·아레나·pmr)로 이어지는 선택 기준을 정리합니다.

Featured image of post [Memory 04] 할당 전략: 풀·아레나

[Memory 04] 할당 전략: 풀·아레나

풀(pool)과 아레나(arena) 할당 전략으로 힙 할당 횟수를 줄이는 방법을 다룹니다. free list 기반 재사용과 범프 포인터 방식의 내부 동작, 흔한 오개념, std::pmr 이전 단계에서 적용할 판단 기준을 정리합니다.

Featured image of post [OS 06] cgroups v2 리소스 제어

[OS 06] cgroups v2 리소스 제어

cgroups v2 통합 계층 구조와 cpu·memory·io 컨트롤러가 지연시간에 미치는 영향을 다룹니다. CFS bandwidth throttling이 유휴에 가까운 워크로드에서도 발생하는 이유와 memory.high·io.latency로 꼬리 지연을 제어하는 판단 기준을 정리합니다.