🤖
0 in / 0 out / 0 total tokens
오늘 들어온 뉴스는 논문 두 건뿐이다. 근데 둘 다 파고들면 결국 같은 질문으로 수렴한다 — "압축이 정보를 어디서 버리는가." 하나는 비전 쪽 VAE 얘기고 하나는 LLM 추론 서버 얘기인데, 게임 개발자 시각에서 보면 둘 다 낯설지가 않다.
📄 논문
TransNormal-2 — 노멀 추정의 진짜 병목은 diffusion이 아니라 VAE였다
Diffusion 기반 monocular 지오메트리 추정 모델들이 최근 꽤 정확해졌는데, 이 논문은 그 한계가 diffusion 스텝 자체가 아니라 VAE 인코더가 이미지를 8배로 공간 압축하는 지점에서 온다고 지적한다. 픽셀 정보를 latent space로 욱여넣는 순간 디테일이 날아가고, 그게 그대로 최종 노멀맵의 픽셀 단위 정밀도 한계로 이어진다는 얘기다. 그래서 이 논문은 edge-aware decoding을 붙여서 경계면 정보만큼은 latent 압축 손실과 별도로 복원하는 방식을 제안한다.
이거 UE5에서 노멀맵 다룰 때 매번 겪는 문제랑 구조가 똑같다. BC5로 압축한 노멀맵을 실시간 렌더링 파이프라인에 물리면 엣지나 디테일이 촘촘한 부분에서 셰이딩이 눈에 띄게 깨지는 걸 다들 한 번쯤 봤을 거다. 압축 알고리즘이 뭐가 됐든 "경계"는 항상 손실에 제일 먼저 노출되는 구간이다. 3D 재구성이나 포토그래메트리 파이프라인에 diffusion 모델을 붙일 생각이 있다면, VAE 단계에서 이미 정밀도 상한이 정해져 버린다는 걸 미리 감안하고 설계해야 나중에 삽질을 줄인다.
BeaconKV — 추론 서버를 굴려본 사람이면 바로 감이 오는 문제
Large Reasoning Model이 Chain-of-Thought를 길게 뽑아낼수록 KV 캐시가 시퀀스 길이에 비례해서 계속 불어난다. 이게 논문에서만 문제가 아니라 실제 서빙 비용과 GPU 메모리 압박으로 바로 직결되는 문제다. BeaconKV는 "beacon query"라는 걸 따로 두고, 지금 추론 흐름에서 어떤 토큰이 실제로 중요한지를 그 쿼리로 판단해서, 중요도가 낮은 토큰의 캐시부터 선택적으로 압축한다.
이건 게임 서버 최적화랑 사고 구조가 거의 같다. 월드에 있는 엔티티를 전부 매 프레임 풀 계산하면 프레임 예산이 터지니까 컬링이나 LOD로 "지금 중요한 것"만 골라내는 것처럼, LRM도 결국 모든 토큰을 동일한 무게로 계속 들고 갈 수는 없다는 걸 인정하고 우선순위를 매기기 시작한 거다. 추론 서버를 직접 운영해본 사람이면 KV 캐시 크기가 곧 GPU 메모리고, 그게 곧 동시에 처리 가능한 요청 수라는 걸 몸으로 안다. 이런 압축 비율 개선은 벤치마크 숫자로는 소소해 보여도, 서빙 비용 계산기를 돌려보면 훨씬 크게 체감되는 부류의 개선이다.
압축은 항상 어딘가에서 정보를 버린다. 잘하는 쪽은 뭘 버릴지 고르는 기준을 갖고 있는 쪽이다.