태그: #performance
GPU·LLM·MLOps·쿠버네티스, 그리고 마음가짐에 관한 글 · 93 편
React Compiler가 Rust로 포팅됐다 — 머지된 것, 아직 아닌 것, 그리고 그 "10배"라는 숫자
2026년 6월 9일, React Compiler를 Rust로 포팅한 PR 36173이 facebook/react main에 머지됐습니다. 461개 파일에 12만 줄이 넘는 코드가 들어왔고, "Babel 플러그인으로 3배, 변환 로직 자체는 약 10배 빠르다"는 숫자가 곧바로 생태계를 돌기 시작했습니다. 그런데 정작 PR 본문에서 저자 Joseph Savona 본인은 그 숫자에 대해 "성능
2026-07-16 · 31 분 읽기 #react#rust#compiler#performance#frontendQUIC은 왜 빠른 인터넷에서 느려지는가 — 수신 측 CPU와 아직 오지 않은 커널 QUIC
QUIC은 핸드셰이크 지연과 손실 복구에서 분명히 이겼습니다. 구글이 인터넷 규모로 측정한 검색 지연 8.0%(데스크톱) 감소, 영상 리버퍼율 18.0% 감소가 그 증거입니다. 그런데 링크가 빨라지면 이야기가 뒤집힙니다 — WWW 2024의 측정 연구는 대역폭이 1 Gbps에 이르면 Chrome에서 QUIC이 HTTP/2보다 45.2% 느려진다고 보고했고, 범인은 흔히 지목되는 암호화도 서버
2026-07-16 · 35 분 읽기 #network#protocol#performance#linux-kernelCXL 메모리 티어링, 커널은 어디까지 왔나 — DAMON이 머지한 것과 숫자가 재지 않은 것
CXL 하드웨어가 서버에 꽂혀 있어도 뜨거운 페이지와 식은 페이지를 실제로 옮기는 건 커널입니다. 2026년 7월 현재 리눅스 mainline에는 DAMON/DAMOS 기반 티어링 부품이 6.11부터 7.2-rc1까지 나눠 들어와 있지만, 정작 "그냥 켜면 되는" 티어링 커널 모듈은 없고 CONFIGDAMON은 Linus가 기본값 활성화를 되돌린 뒤로 여전히 꺼져 있습니다. 이 글은 어떤 코
2026-07-16 · 34 분 읽기 #hardware#cxl#memory#linux-kernel#performance.NET 11 runtime-async — async 상태 머신을 컴파일러에서 런타임으로 옮기는 중간 보고
C의 async/await는 2012년부터 줄곧 컴파일러 기능이었습니다. Roslyn이 메서드 본문을 상태 머신 클래스로 재작성하고, 런타임은 그게 async인지도 모른 채 실행했죠. .NET 11의 runtime-async는 그 재작성을 런타임 안으로 옮깁니다 — 메서드에 MethodImplOptions.Async 플래그가 붙고, 중단과 재개는 JIT과 VM이 직접 처리합니다. 눈에 보이는
2026-07-16 · 33 분 읽기 #dotnet#csharp#async#jit#performanceRedis 8.8의 Array 타입 — 스트림 이후 처음 늘어난 코어 자료구조, 그리고 Valkey에는 없는 것
2026년 5월, Redis 8.8과 Valkey 9.1이 엿새 간격으로 나왔습니다. Redis 8.8에는 antirez가 직접 만든 새 코어 자료구조 Array가 들어갔습니다 — 인덱스 자체가 의미를 갖는 데이터(센서의 분 단위 슬롯, 예약 시스템의 칸 번호, 파일의 줄 번호)를 위한 희소 인덱스 컨테이너로, 명령어 18개와 슬라이스 기반 희소 인코딩, 서버 사이드 집계와 정규식 grep까
2026-07-16 · 27 분 읽기 #redis#valkey#data-structures#performance#open-sourcePostgres 19의 pg_plan_advice — 힌트를 거절해 온 프로젝트가 내놓은 타협안
PostgreSQL 프로젝트는 오랫동안 옵티마이저 힌트를 거절해 왔습니다. 그런데 2026년 6월 4일 나온 PostgreSQL 19 Beta 1에 Robert Haas가 만든 pgplanadvice와 pgstashadvice가 contrib 모듈로 들어갔습니다. 이건 오라클식 힌트가 아닙니다 — 조언은 SQL 밖에 살고, 플래너를 대체하는 게 아니라 탐색 공간을 좁히기만 하며, 문서의 표현
2026-07-16 · 26 분 읽기 #postgresql#query-planner#query-optimization#database#performance엘리트 선수의 멘탈, 포스터를 걷어내고 — 마인드셋·의도된 연습·압박의 실제 근거
'엘리트 선수의 멘탈'은 동기부여 포스터의 단골 소재지만, 실제 스포츠 심리학은 그보다 훨씬 조심스럽고 그래서 더 흥미롭습니다. 이 글은 캐럴 드웩의 성장 마인드셋(그리고 그가 직접 경고한 '가짜 성장 마인드셋'), 안데르스 에릭손의 의도된 연습과 '1만 시간의 법칙'이 어떻게 오해되었는지, 압박·집중·자기대화·마음챙김에 관한 연구를 정리합니다. 무엇이 근거가 있고 무엇이 표어에 불과한지 솔
2026-07-11 · 11 분 읽기 #mindset#psychology#performance#sports#deliberate-practiceLLM 캐싱의 원리 — 프롬프트 캐싱과 Prefix Cache는 왜 돈을 아껴주는가
프롬프트 앞부분이 같으면 왜 비용이 10분의 1이 될까요? 답은 트랜스포머 내부의 KV 캐시에 있습니다. 어텐션이 인과적(causal)이라 앞쪽 토큰들의 Key/Value 벡터는 뒤에 무엇이 오든 변하지 않고, 그래서 저장해 뒀다가 재사용할 수 있습니다. prefill과 decode의 구분, KV 캐시의 메모리 수치, vLLM·SGLang의 prefix cache 구현, 그리고 Anthrop
2026-07-08 · 14 분 읽기 #ai#llm#caching#inference#performancehtop와 top 완벽 해부 — 모든 숫자를 읽는 법
리눅스에서 htop과 top을 열면 수많은 숫자가 쏟아집니다. VIRT와 RES와 SHR의 차이, 프로세스 상태 문자, 로드 애버리지가 왜 CPU 사용률과 다른지, 미터 색깔의 의미, 좀비 프로세스까지 — 최근 해커뉴스에서 다시 화제가 된 명문 해설을 바탕으로 필드 하나하나를 읽는 법을 정리합니다.
2026-07-05 · 14 분 읽기 #linux#performance#htop#sysadmin실전 Big-O: 수학 불안 없는 복잡도
Big-O 표기가 실제로 무엇을 뜻하는지, 자주 나오는 복잡도 클래스를 현실 예제와 함께, 작은 n이나 캐시 때문에 상수가 이기는 경우, 중첩 루프나 N+1 쿼리에 숨어드는 O(n²), 공간 복잡도, 동적 배열의 분할 상환, 그리고 언제 최적화를 멈춰야 하는지까지. 수학적 엄밀함이 아니라 엔지니어의 직관으로 복잡도를 다룹니다.
2026-06-22 · 19 분 읽기 #algorithms#performance#fundamentals캐시 무효화 완전정복
"컴퓨터 과학에서 어려운 두 가지: 캐시 무효화와 이름 짓기." 캐시가 왜 그렇게 어려운지, TTL·write-through·write-behind·cache-aside 같은 전략, 캐시 스탬피드(도그파일)와 그 완화(잠금·지터·stale-while-revalidate), 이벤트 기반과 버전 키를 이용한 무효화, 그리고 CPU에서 브라우저까지 이어지는 캐시 계층을 정리합니다.
2026-06-19 · 29 분 읽기 #performance#caching#systems메커니컬 심퍼시: 하드웨어를 이해하는 코드
같은 시간 복잡도의 코드가 실제로는 수십 배 차이 나는 이유는 하드웨어에 있습니다. CPU 캐시(L1/L2/L3)와 캐시 라인, 배열과 링크드 리스트의 데이터 지역성, 분기 예측, 거짓 공유, 메모리 계층의 지연 시간, 그리고 왜 배열의 구조(SoA)가 중요한지까지. 하드웨어에 우호적인 코드를 쓰는 메커니컬 심퍼시의 세계로 들어갑니다.
2026-06-18 · 31 분 읽기 #performance#systems#cpuripgrep은 왜 그렇게 빠른가
ripgrep이 grep보다 빠른 이유는 마법이 아니라 여러 결정의 누적입니다. Rust의 regex 크레이트가 쓰는 유한 오토마타(백트래킹 없음), SIMD로 가속한 memchr, 병렬 디렉터리 순회, .gitignore 존중, 스마트 케이스, 바이너리 건너뛰기, mmap까지. 빠른 도구를 만드는 원리를 하나씩 뜯어봅니다.
2026-06-17 · 24 분 읽기 #rust#performance#tools#cliReconcile 루프 심화 — 멱등성, 에러 처리, 큐, 그리고 성능
reconcile 요청 흐름(informer→workqueue→reconcile), Result와 requeue, 멱등 구현 패턴, status와 conditions, predicate 이벤트 필터, rate limiting과 동시성, 캐시와 클라이언트, 관측, 흔한 버그, 성능 튜닝까지 reconcile 루프를 깊이 있게 해부합니다.
2026-06-15 · 33 분 읽기 #kubernetes#operator#reconcile#controller-runtime#performanceingress-nginx 프로덕션 튜닝 — 성능, 타임아웃, 커넥션, keepalive
ingress-nginx를 프로덕션에서 안정적으로 운영하기 위한 튜닝 가이드입니다. worker와 커넥션, upstream keepalive, 타임아웃 3종, 버퍼링, 압축, rate limiting, HPA 스케일, graceful reload, 그리고 502/504 디버깅 플로우까지 실무 중심으로 다룹니다.
2026-06-14 · 26 분 읽기 #ingress#kubernetes#nginx#performance#devops저지연 트레이딩 시스템을 위한 커널 튜닝 — 마이크로초와의 전쟁
HFT와 마켓메이킹처럼 마이크로초가 손익을 가르는 도메인에서 리눅스 커널을 어떻게 튜닝하는지 정리합니다. CPU 격리, NUMA 정렬, 커널 바이패스 스펙트럼, C-state 고정, PTP 시간 동기화, 그리고 꼬리지연 측정 방법론까지 실전 레시피 중심으로 다룹니다.
2026-06-13 · 31 분 읽기 #linux#kernel#low-latency#trading#performance패킷의 여정 — 리눅스 커널 네트워킹 스택 따라가기
NIC에 도착한 패킷이 DMA, 링버퍼, NAPI, IP/TCP 계층을 거쳐 애플리케이션 소켓까지 도달하는 전체 경로를 해부합니다. RSS/RPS/RFS 멀티코어 분산, GRO/GSO/TSO 오프로드, XDP, 소켓 버퍼 튜닝과 실전 성능 진단 시나리오까지 다룹니다.
2026-06-13 · 33 분 읽기 #linux#kernel#networking#tcp#xdp리눅스 CPU 스케줄러의 진화 — CFS에서 EEVDF까지
vruntime과 레드블랙 트리로 공정성을 구현한 CFS의 원리부터, 지연 민감 워크로드의 한계를 해결하기 위해 커널 6.6에서 기본이 된 EEVDF까지 스케줄러의 진화를 따라갑니다. cgroup CPU 제어와 쿠버네티스 스로틀링 진단, 저지연 워크로드 격리 레시피, 테일 레이턴시 튜닝 시나리오를 다룹니다.
2026-06-13 · 30 분 읽기 #linux#kernel#scheduler#cfs#eevdf리눅스 메모리 계층 해킹 — swap, zram, 그리고 VRAM을 스왑으로 쓰는 역발상
GPU의 VRAM을 NBD 블록 디바이스로 노출해 스왑으로 쓰는 nbd-vram 프로젝트가 Hacker News에서 화제가 됐습니다. 이를 출발점으로 리눅스 메모리 관리의 기초, swappiness와 zram/zswap 튜닝, OOM 대응, cgroup v2 메모리 제어, 컨테이너 환경의 함정까지 실전 중심으로 정리합니다.
2026-06-12 · 28 분 읽기 #linux#memory#swap#zram#kernel브라우저에서 진짜 GPU 컴퓨트 — WebGPU 컴퓨트 셰이더와 WGSL 실전 가이드 2026
WebGPU의 진짜 매력은 3D가 아니라 컴퓨트다. 브라우저에서 행렬 곱, ML 추론, 이미지 필터, 병렬 리덕션을 — CUDA도 wasm도 아닌 — WGSL로 굴린다. 워크그룹·디스패치·바인드 그룹·스토리지 버퍼를 처음부터, '내 첫 병렬 합' 튜토리얼까지, WebGPU 컴퓨트의 모델과 한계와 실전 패턴을 한 호흡으로 정리한다.
2026-05-14 · 27 분 읽기 #webgpu#compute-shader#wgsl#gpu-computing#browser