자바스크립트 최적화
Chromium 기여자는 V8 JavaScript 엔진에서 생성된 코드에서 Blink 렌더링 엔진의 C++ 핸들러로 호출하는 오버헤드를 줄여 GPUComputePassEncoder
, GPURenderPassEncoder
, GPUCommandEncoder
메서드의 WebGPU 성능을 향상했습니다. 문제 chromium:1417558을 참고하세요.
다음 Microbenchmark는 자바스크립트 호출의 CPU 시간이 10K 그리기당 약 0.5ms에서 10K 그리기당 약 0.3ms로 감소했음을 보여줍니다. 이는 40% 개선된 수치입니다.
구성되지 않은 캔버스에서 getCurrentTexture()에서 InvalidStateError가 발생함
구성되지 않은 캔버스에서 GPUCanvasContext
getCurrentTexture()
메서드를 호출하면 이제 WebGPU 사양에 따라 OperationError
대신 InvalidStateError
이 발생합니다. 문제 chromium:1424461을 참고하세요.
const context = document.querySelector("canvas").getContext("webgpu");
context.getCurrentTexture(); // Throws InvalidStateError
WGSL 업데이트
이제 0으로 채워진 AbstractInt 벡터를 vec2()
, vec3()
, vec4()
로 작성할 수 있습니다. 문제 색조:1892를 참고하세요. 예를 들면 다음과 같습니다.
vec2()
은vec2(0,0)
입니다.vec3()
은vec3(0,0,0)
입니다.vec4()
은vec4(0,0,0,0)
입니다.
여명 업데이트
오류 메시지 개선
오류 메시지에서 라벨을 확인할 수 있도록 잘못된 객체의 설명어 라벨이 더 이상 삭제되지 않습니다. 문제 dawn:1771을 참조하세요.
누락된 Node.js용 API 추가
이제 GPUAdapter::requestAdapterInfo()
및 GPUBuffer::getMapState()
메서드가 Node.js용으로 구현되었습니다. Issue dawn:1761을 참조하세요.
WebGPU의 새로운 기능
WebGPU의 새로운 기능 시리즈에서 다룬 모든 사항의 목록
Chrome 125
Chrome 124
Chrome 123
- WGSL에서 DP4a 내장 함수 지원
- WGSL의 제한되지 않은 포인터 매개변수
- WGSL의 복합 요소 역참조를 위한 구문 슈가
- 스텐실 부분과 깊이 측면의 별도의 읽기 전용 상태
- 새벽 업데이트
Chrome 122
Chrome 121
- Android에서 WebGPU 지원
- Windows에서 셰이더 컴파일에 FXC 대신 DXC 사용
- 컴퓨팅 및 렌더 패스의 타임스탬프 쿼리
- 셰이더 모듈의 기본 진입점
- display-p3를 GPUExternalTexture 색공간으로 지원
- 메모리 힙 정보
- 새벽 업데이트
Chrome 120
Chrome 119
Chrome 118
Chrome 117
- 꼭짓점 버퍼 설정 해제
- 바인드 그룹 설정 해제
- 기기 분실 시 비동기 파이프라인 생성에서 발생하는 오류 음소거
- SPIR-V 셰이더 모듈 생성 업데이트
- 개발자 환경 개선
- 자동으로 생성된 레이아웃으로 파이프라인 캐싱
- 새벽 업데이트
Chrome 116
- WebCodecs 통합
- GPU 어댑터에서 기기를 반환함
requestDevice()
importExternalTexture()
가 호출되어도 동영상 재생을 원활하게 유지합니다.- 사양 적합성
- 개발자 환경 개선
- 새벽 업데이트