Featured image of post [Extreme 08] Hand-written 어셈블리 적용과 위험 관리

[Extreme 08] Hand-written 어셈블리 적용과 위험 관리

인라인·독립 어셈블리를 직접 작성해야 하는 드문 상황을 정리하고, GNU 확장 asm의 clobber·ABI 규약을 어겼을 때 컴파일러가 코드를 오인하는 메커니즘을 RDTSC 재배치 사례로 재현하며, 유지보수·이식성 비용을 판단 기준으로 다룹니다.

Featured image of post [Extreme 08] Lookup Table 최적화

[Extreme 08] Lookup Table 최적화

룩업 테이블(Lookup Table)로 반복 연산을 메모리 접근으로 치환하는 기법을 다룹니다. 테이블 크기와 캐시 적중률의 트레이드오프, 분기 대체 판단 기준, 그리고 비밀 의존 인덱스가 낳는 캐시 타이밍 부채널 위험까지 정리합니다.

Featured image of post [Extreme 08] Prefetch 전략과 적용 판단

[Extreme 08] Prefetch 전략과 적용 판단

_mm_prefetch·__builtin_prefetch의 동작 원리와 하드웨어 프리페처와의 상호작용을 다루고, 포인터 체이싱 사례로 프리페치 거리 계산과 캐시 오염 위험을 근거로 언제 적용하고 언제 피할지 판단하는 기준을 정리합니다.

Featured image of post [Extreme 08] SIMD Intrinsics 실전 활용

[Extreme 08] SIMD Intrinsics 실전 활용

SIMD intrinsics(_mm256 계열)의 네이밍 규칙, 정렬 로드/스토어, 셔플·퍼뮤트·마스크 연산 패턴을 컴파일 가능한 코드와 스칼라 참조 구현 비교로 검증하며, 벤치마크 스켈레톤과 언제 직접 intrinsics를 써야 하는지 판단 기준까지 정리합니다.

Featured image of post [Extreme 08] SIMD 기초: SSE·AVX

[Extreme 08] SIMD 기초: SSE·AVX

SIMD가 여러 데이터를 한 명령으로 처리하는 원리와 SSE에서 AVX·AVX2까지 레지스터 폭이 넓어진 역사적 과정을 정리하고, 스칼라 대비 실제 이득이 나는 조건과 흔한 오해를 판단 기준·intrinsics 검증 예제와 함께 설명합니다.

Featured image of post [Extreme 08] SIMD 문자열·JSON 처리

[Extreme 08] SIMD 문자열·JSON 처리

simdjson의 구조 인덱싱(structural indexing)과 On-Demand API를 중심으로 SIMD 기반 JSON 파싱의 2단계 파이프라인을 다루고, 이스케이프·UTF-8 검증의 함정과 도입이 유효한 워크로드 판단 기준을 정리합니다.

Featured image of post [Extreme 08] 극한 최적화와 유지보수성 균형

[Extreme 08] 극한 최적화와 유지보수성 균형

SIMD·수기 어셈블리 같은 극한 최적화 기법을 도입할 때 성능 이득과 유지보수성·가독성·팀 역량을 저울질하는 판단 프레임워크를 다룹니다. 격리 전략과 ADR 문서화 패턴, bus factor와 되돌리기 비용을 코드 리뷰 관점에서 정리합니다.

Featured image of post [Extreme 08] 비트 조작 최적화 기법

[Extreme 08] 비트 조작 최적화 기법

POPCNT·TZCNT/LZCNT·PDEP/PEXT 같은 BMI/BMI2 명령어가 비트 카운팅·스캔·재배치를 하드웨어 수준에서 처리하는 원리와, std::popcount·컴파일러 내장 함수로 이식성 있게 접근하는 판단 기준을 다룹니다.

Featured image of post [Extreme 08] 자동 벡터화 유도와 검증

[Extreme 08] 자동 벡터화 유도와 검증

컴파일러가 스스로 루프를 SIMD로 바꾸도록 코드를 정렬하는 패턴과, 벡터화 리포트로 실패 원인을 읽어 되돌려 고치는 절차를 다룹니다. 수기 intrinsics 이전 단계로서의 자동 벡터화 적용 판단 기준을 정리합니다.

Featured image of post [Extreme 08] 포터블 SIMD 라이브러리

[Extreme 08] 포터블 SIMD 라이브러리

Google Highway 1.4.0과 xsimd 14.2.0, Eigen의 설계 철학과 런타임 디스패치 구조를 비교하고, 수동 intrinsics 대비 이식성·성능 트레이드오프와 라이브러리 선택 기준을 정리합니다.