# 아마존 프라임 비디오, WebAssembly 사용하여 8000개의 디바이스 타입 지원

> Clean Markdown view of GeekNews topic #5858. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=5858](https://news.hada.io/topic?id=5858)
- GeekNews Markdown: [https://news.hada.io/topic/5858.md](https://news.hada.io/topic/5858.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2022-01-31T10:27:07+09:00
- Updated: 2022-01-31T10:27:07+09:00
- Original source: [amazon.science](https://www.amazon.science/blog/how-prime-video-updates-its-app-for-more-than-8-000-device-types)
- Points: 12
- Comments: 0

## Topic Body

- 게임콘솔,TV,셋탑박스,스트리밍 스틱 등 8000개의 디바이스를 지원 중

- 업데이트 할때마다 각각의 네이티브 릴리즈를 해야함

ㅤ→ 이를 위해 JavaScript 대신 WASM을 이용함으로써 안정성을 높이고 속도를 개선

- 기존에는 C++로 작성된 JavaScript VM 과 JavaScript로 된 앱을 이용

ㅤ→ 현재는 JavaScript VM 과 WebAssembly VM 을 동시에 구동(아직 WASM이 지원안되는 구형 기기에서는 Javascript만 사용)

ㅤ→ 로우레벨 시스템을 JavaScript 에서 WASM으로 이관하고 WASM 바이너리도 업데이트

ㅤ→ Rust로 작성된 코드를 WASM으로 컴파일하여 구동 (JavaScript 보다 10~25배 빠름)

- 60FPS 달성 및 입력 레이턴시 개선을 위해 더 많은 시스템을 WASM으로 이관할 예정

- WASM VM은 자체 모듈과 인스턴스 전체가 7.5MB 정도여서 JavaScript Heap 메모리 30MB를 절약

ㅤ→ 배포하는 많은 디바이스 들의 메모리는 아주 작기 때문에 메모리 사용량은 중요한 요소임

- WASM 모듈은 압축시 150kb 정도로 작아서 스타트업 시간도 아주 작음

- Rust를 이용하는 장점 중 하나는 고품질의 라이브러리를 이용 가능 하다는 것 (egui 같은)

- Rust 와 WebAssembly에 투자한게 결실을 맺음

ㅤ→ 약 1년의 기간동안 37000라인의 Rust 코드로 성능,안정성,CPU 소비량을 개선했고, 메모리 사용률이 감소되었음

## Comments



_No public comments on this page._
