33 lines
4.0 KiB
Markdown
33 lines
4.0 KiB
Markdown
---
|
|
id: [[P-Reinforce|P-Reinforce]]-AUTO-788E1E
|
|
category: Dev
|
|
confidence_score: 0.90
|
|
tags: [auto-reinforced]
|
|
last_reinforced: 2026-04-20
|
|
github_commit: "[P-Reinforce] Continuous Worker - [[Timestamp Queries|Timestamp Queries]] [[Quantization|Quantization]]"
|
|
---
|
|
|
|
# [[Timestamp Queries Quantization|Timestamp Queries Quantization]]
|
|
|
|
## 📌 한 줄 통찰 (The Karpathy Summary)
|
|
> 타임스탬프 쿼리 양자화(Timestamp Queries Quantization)는 [[WebGPU|WebGPU]] 애플리케이션에서 GPU 명령의 실행 시간을 측정할 때 그 정밀도를 의도적으로 낮추는 보안 메커니즘입니다 [1], [2], [3], [4]. 개발자는 타임스탬프 쿼리를 통해 나노초 단위의 정밀한 데이터를 얻을 수 있지만, 이는 Spectre나 Rowhammer와 같은 캐시 기반 타이밍 공격([[Timing Attack|Timing Attack]])에 악용될 수 있습니다 [5], [1], [2], [6]. 이를 방지하기 위해 브라우저 엔진은 반환되는 타이머의 해상도를 100 마이크로초(µs) 수준으로 낮추어 보안과 성능 분석의 균형을 맞춥니다 [1], [7], [3], [4].
|
|
|
|
## 📖 구조화된 지식 (Synthesized Content)
|
|
- **도입 배경 및 보안 위협:** WebGPU의 타임스탬프 쿼리는 패스(pass)의 시작과 끝 등 GPU 워크로드의 실행 시간을 나노초 단위까지 정밀하게 측정할 수 있도록 지원합니다 [2], [4]. 하지만 고정밀 타이머는 악의적인 공격자가 캐시 적중률과 물리적 메모리 구조를 파악하여 Spectre, Meltdown, Rowhammer 같은 사이드 채널 공격을 수행하거나 기기 지문을 수집(Fingerprinting)하는 데 사용될 수 있습니다 [5], [1], [8], [6]. 과거 [[WebGL|WebGL]]의 `EXT_disjoint_timer_query` 확장 역시 동일한 보안 문제로 인해 브라우저에서 비활성화되거나 제한된 바 있습니다 [5], [1], [9].
|
|
- **양자화(Quantization/Coarsening)의 동작 방식:** 타이밍 공격을 방어하기 위해 [[Chrome|Chrome]]의 Blink 및 Dawn과 같은 엔진은 타임스탬프 쿼리의 해상도를 인위적으로 낮추는 '양자화(또는 조대화, Coarsening)'를 구현했습니다 [7], [3]. 본래 격리된 컨텍스트(Isolated context)에서만 100 마이크로초 해상도를 제공하고 비격리 환경에서는 노출하지 않으려 했으나 [7], [3], 이후 브라우저 간 상호 운용성을 확보하고 High Re[[Solution|Solution]] Time 사양과 일치시키기 위해 사이트 격리 여부와 무관하게 100 마이크로초(100µs)의 해상도를 제공하는 것으로 최종 합의되었습니다 [10], [11].
|
|
- **개발자 환경에서의 우회:** 100 마이크로초 단위의 해상도는 단일 프레임 내의 정밀한 GPU 마이크로 지연 시간(Micro-latency)을 분석하기에는 지나치게 거칠 수 있습니다 [7], [12]. 따라서 정밀한 로컬 프로파일링이 필요한 개발자는 Chrome 브라우저에서 `chrome://flags/#enable-webgpu-developer-features` 플래그를 활성화하여 양자화 제한을 해제하고, 나노초 단위의 원본 타임스탬프 데이터를 획득할 수 있습니다 [7], [13], [14], [4].
|
|
|
|
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
|
|
- **과거 데이터와의 충돌:** 자동화 엔진에 의해 매핑된 지식으로, 추후 정밀 검증 필요.
|
|
- **정책 변화:** Graphics & Performance 분야의 자동 자산화 수행.
|
|
|
|
## 🔗 지식 연결 (Graph)
|
|
- **Related Topics:** [[WebGPU|WebGPU]], Timing Attack, [[Spectre|Spectre]], EXT_disjoint_timer_query
|
|
- **Projects/Contexts:** [[High Resolution Time|High Resolution Time]] Spec, [[Chrome DevTools|Chrome DevTools]]
|
|
- **Contradictions/Notes:** 초기 WebGPU 사양 제안에서는 사이트 격리(Site isolation) 여부에 따라 타임스탬프 쿼리 제공 여부를 차등 적용(비격리 시 완전히 미노출)하려 했으나 [3], 이후 표준화 논의 과정에서 상호 운용성을 위해 모든 컨텍스트에 대해 100 마이크로초의 해상도를 일괄 제공하도록 정책이 변경되었습니다 [10], [11].
|
|
|
|
---
|
|
*Last updated: 2026-04-19*
|
|
|
|
---
|