WebGPU 与边缘运行时

共 47 题
#

1. WebGPU 的 Render Pipeline 在现代渲染管线的工程应用

A 它不需要 shader
B 它与 WebGL 的全局状态机完全一样
C 它只能做 2D 渲染
D 它把渲染状态封装为不可变对象,减少状态切换,接近现代 GPU API 提升性能 ✓ 正确答案
#

2. WebGPU 的 Command Encoder 在命令录制的工程应用

A 它只在 GPU 侧运行
B 它逐条立即提交命令
C 它无法录制计算命令
D 它在 CPU 侧录制命令后一次性提交,支持批处理与并行,减少往返开销 ✓ 正确答案
#

3. WebGPU 的 Swap Chain 在多缓冲呈现的工程价值

A 多缓冲在渲染下一帧时另一缓冲用于显示,避免撕裂并减少等待 ✓ 正确答案
B 单缓冲就能避免撕裂
C Swap Chain 与呈现无关
D 多缓冲总会增加延迟
#

4. WebGPU 的 Texture 与 Sampler 在现代 GPU 资源的应用

A Texture 与采样无关
B Sampler 存储纹理数据
C Texture 存储 GPU 数据,Sampler 定义采样与过滤方式,二者配合实现纹理采样 ✓ 正确答案
D 纹理格式不影响渲染
#

5. WebGPU 的 Shader Module 在 WGSL 编译的现代边界

A WGSL 编译必然成功
B WebGPU 只接受 SPIR-V
C Shader Module 通过 createShaderModule 编译 WGSL,可查询编译错误,也支持从 SPIR-V 转换 ✓ 正确答案
D 编译错误无法诊断
#

6. WebGPU 的 Buffer 与 Uniform 在数据上传的工程应用

A Uniform 数据无法绑定
B Buffer 只能用于顶点
C Buffer 存储 GPU 数据,Uniform 通过绑定提供常量数据,用 writeBuffer 或 map 上传 ✓ 正确答案
D 数据上传只能逐字节
#

7. WebGPU 的 Render Pass 在多通道渲染的现代价值

A Render Pass 只能用于单通道
B Render Pass 定义一次渲染的附件与加载/存储操作,多通道渲染通过多个 pass 组合实现 ✓ 正确答案
C 多通道渲染无法使用 Render Pass
D Render Pass 与附件无关
#

8. WebGPU 的 Pipeline Layout 在资源绑定的工程应用

A Pipeline Layout 与资源无关
B Pipeline Layout 声明绑定组布局,BindGroup 绑定实际资源,合理分组可减少切换提升性能 ✓ 正确答案
C 资源绑定只能用一个 BindGroup
D 绑定切换不影响性能
#

9. WebGPU 的 Error Scopes 在 GPU 错误的现代边界

A 通过 push/popErrorScope 捕获 GPU 错误,错误异步返回需在回调中处理 ✓ 正确答案
B 错误是同步抛出的
C 无法捕获 out-of-memory
D 错误无法作用域化
#

10. WebGPU 的 Adapter 在跨设备(VR)

A Adapter 代表 GPU 能力,跨设备需探测特性与限制并做能力降级 ✓ 正确答案
B 所有设备能力完全相同
C Adapter 无法枚举特性
D 跨设备无需探测能力
#

11. Web Transport 与 WebRTC DataChannel 在 P2P 音视频的工程取舍

A 两者都只能 P2P
B WebRTC 适合 P2P 实时音视频,WebTransport 基于 QUIC 适合客户端-服务器流控传输 ✓ 正确答案
C WebTransport 不支持服务器
D 两者完全等价
#

12. WebGPU 的 Timestamp 与性能查询(Performance Query)的现代价值

A 无法测量 GPU 耗时
B 通过 QuerySet 记录 GPU 时间并 resolve 读取,用于量化 GPU 性能与定位瓶颈 ✓ 正确答案
C 性能查询只用于 CPU
D 所有设备都支持 timestamp
#

13. WebGPU 的 Push Constants 在高频更新的工程应用

A 它只能传大数据
B 它比 uniform buffer 更新更慢
C 它允许在 draw 时直接传入少量常量,适合高频小数据更新,减少 buffer 绑定开销 ✓ 正确答案
D 它无法在 draw 时更新
#

14. WebGPU 的 Mesh Shader(实验性)在现代几何处理的工程价值

A 它与传统 vertex shader 完全相同
B 它允许自定义几何生成与并行处理,替代传统固定流程,适合大规模几何,但尚属实验性 ✓ 正确答案
C 它无法处理几何
D 它已完全成熟
#

15. WebGPU 的 Tensor Types(实验性)在 ML 推理的现代应用

A 它完全成熟无需探测
B 它无法用于 ML
C 它为 GPU 张量运算提供原生支持,可加速 ML 推理,但尚属实验性需探测 ✓ 正确答案
D 它只能加速 CPU
#

16. Cloudflare Workers + Durable Objects + R2 在边缘后端一体架构的工程价值

A Workers 只能运行在中心机房
B Durable Objects 是无状态的
C R2 不支持对象存储
D Workers 边缘执行、Durable Objects 管理状态、R2 存储,构成低延迟边缘后端一体架构 ✓ 正确答案
#

17. Deno Deploy/Fastly Compute 在边缘 SSR 的工程价值

A 边缘 SSR 无法与前端框架集成
B 边缘 SSR 会增加延迟
C 边缘运行时没有任何限制
D 它们在边缘就近渲染,降低延迟与 TTFB,但需注意边缘运行时限制与冷启动 ✓ 正确答案
#

18. 边缘冷启动(V8 Isolate vs Node)性能与部署工程的取舍

A V8 Isolate 冷启动更快但运行时受限,Node 功能完整但启动较重,需权衡 ✓ 正确答案
B Node 冷启动总是更快
C V8 Isolate 功能完整
D 两者冷启动完全相同
#

19. Fresh 2 的 Islands 架构与 Preact 协同

A Fresh 默认加载全部 JS
B Fresh 默认零 JS,交互岛屿用轻量 Preact 按需加载,性能优异但依赖 Deno 生态 ✓ 正确答案
C Fresh 使用 React 而非 Preact
D Islands 无法按需加载
#

20. 边缘渲染(Edge SSR)的优势与限制

A 它总是比 Node 慢
B 边缘渲染无任何限制
C 它就近渲染降低延迟并利于边缘缓存,但运行时受限、有冷启动与资源限制 ✓ 正确答案
D 它无法利用缓存
#

21. Biome 2.x(Rust 实现)+ Oxc + SWC/Vite 8 现代 Lint+Format+Transformer 工具链工程取舍

A 它们都是 JS 实现的慢工具
B Biome 用 Rust 做 lint/format,Oxc 做解析,SWC 做转译,共同提升构建与 CI 速度 ✓ 正确答案
C 它们无法互相替代任何工具
D 它们与构建速度无关
#

22. WebGPU 与 WebGL 在浏览器 2D/3D 渲染的工程取舍与现代限制

A WebGPU 性能更高但生态仍成熟中,WebGL 兼容广但 API 较旧,常按 WebGPU 优先 + WebGL 降级 ✓ 正确答案
B WebGPU 兼容性比 WebGL 更广
C WebGL 性能远超 WebGPU
D 两者 API 完全相同
#

23. Rolldown(Rust 实现的 Rollup 替代)在大型项目构建性能与生态的工程价值

A 它只用于 CSS
B 它比 Rollup 更慢
C 它不兼容任何插件
D 它是 Rust 实现的 Rollup 替代,兼容插件生态并大幅提升大型项目构建性能 ✓ 正确答案
#

24. VoidZero 战略与 Rust 工具链生态(Oxc、Rolldown、Biome、oxlint、Tailwind Oxide、NAPI-RS)

A 它们都是 JS 工具
B VoidZero 用 Oxc、Rolldown、Biome 等 Rust 工具统一前端构建、转译与检查,提升性能 ✓ 正确答案
C 它们互不兼容
D 它们与性能无关
#

25. Oxc Linter/Transformer/Resolver 在大型仓库的工程取舍

A Oxc 比现有工具更慢
B Oxc 用 Rust 加速解析、lint、转译与解析器,提升性能,但需注意插件生态兼容 ✓ 正确答案
C Oxc 完全兼容所有 ESLint 插件
D Oxc 无法解析 TS
#

26. Rust 工具链(SWC、Oxc、Biome 2、Rspack、Turbopack)

A 它们只用于后端
B 它们都是解释型慢工具
C 它们无法互相配合
D 它们用 Rust 加速转译、打包、lint 与格式化,大幅提升构建与 CI 速度 ✓ 正确答案
#

27. SWC(Rust 实现的 Babel)在转译速度的工程应用

A SWC 比 Babel 更慢
B SWC 用 Rust 转译,速度比 Babel 快一个数量级,可集成到 Vite/Rspack 等 ✓ 正确答案
C SWC 无法处理 TS
D SWC 只能用于测试
#

28. Rspack(Rust 实现的 Webpack 兼容)在大型项目的现代价值

A 它是 Rust 实现的 Webpack 兼容打包器,在大型项目提供大幅更快构建并保留配置习惯 ✓ 正确答案
B 它比 Webpack 更慢
C 它不兼容 Webpack 配置
D 它只适合小项目
#

29. Rolldown(Rust 实现的 Rollup)在 Vite 7+ 的现代应用

A Rolldown 只用于 CSS
B Rolldown 使 Vite 变慢
C Rolldown 不兼容任何插件
D Rolldown 作为 Rust 底层提升 Vite 构建与预打包速度,并兼容 Rollup 插件生态 ✓ 正确答案
#

30. WebGPU 与 WebGL 的差异,Compute Shader 在前端计算的典型应用?

A WebGL 也支持 Compute Shader
B WebGPU 支持 Compute Shader 做通用 GPU 并行计算(模拟、图像、ML),WebGL 不支持 ✓ 正确答案
C Compute Shader 只能做渲染
D 两者 API 完全相同
#

31. WebGPU 与 WGSL 的现代 GPU 访问

A WGSL 是 JavaScript 语言
B WebGPU 提供现代 GPU API 抽象,WGSL 是配套着色语言,二者结合实现低层高性能 GPU 访问 ✓ 正确答案
C WebGPU 无法访问 compute 能力
D 二者只能做 2D 渲染
#

32. Compression Streams 与 zstd/WASM 在前端大型数据传输的工程价值

A 压缩无法提升加载速度
B 它们只能增加传输体积
C 它们可在客户端压缩/解压大型数据,减少传输体积,zstd 压缩率更高但需加载 WASM ✓ 正确答案
D 浏览器不支持任何压缩
#

33. View Transitions(同文档与跨文档)的现代应用

A 它支持同文档与跨文档过渡,可在路由/状态切换时创建平滑动画,并需尊重减少动效偏好 ✓ 正确答案
B 它只能做同文档过渡
C 它无法用于路由切换
D 它与动画无关
#

34. WebCodecs 的浏览器侧音视频编解码

A 它只能做播放
B 它提供原生 VideoEncoder/AudioDecoder 等,支持低延迟可控的帧级音视频处理与转码 ✓ 正确答案
C 它比 MediaRecorder 功能更少
D 它无法处理视频
#

35. 边缘 AI 推理(@cloudflare/workers-ai/@vercel/ai-sdk)

A 它们无法调用 AI 模型
B 它们只能在中心机房推理
C 它们在边缘执行 AI 推理,前端可直接调用模型并流式输出,低延迟且简化部署 ✓ 正确答案
D 它们与前端无关
#

36. WebGPU 的 Adapter 与 Device 在多 GPU 环境的工程应用

A 无法创建多个 Device
B 所有 GPU 能力完全相同
C Adapter 代表物理 GPU,Device 是逻辑设备,多 GPU 时需探测能力并选择合适设备 ✓ 正确答案
D Device 不代表逻辑设备
#

37. WebGPU 的 Compute Shader 在并行计算(ML、物理)

A 它只能做串行计算
B 它可在 GPU 并行执行 ML 张量运算与物理模拟等计算密集任务,大幅提速 ✓ 正确答案
C 它无法用于 ML
D 它只能在 CPU 运行
#

38. Lightning CSS(Rust 实现的 CSS 工具)

A 它无法处理压缩
B 它比 PostCSS 慢
C 它是 Rust 实现的 CSS 工具,可快速压缩转译现代 CSS,并集成到 Vite/Rspack 提速 ✓ 正确答案
D 它只能用于 JS
#

39. esbuild(Go 实现)的依赖预打包在 Vite 的现代边界

A esbuild 预打包无任何局限
B Vite 用 esbuild 预打包依赖提升启动速度,但 CJS 转换与缓存失效有局限,未来可转 Rolldown ✓ 正确答案
C 预打包不会提升启动速度
D 依赖缓存无需失效
#

40. Parcel 2 在 Rust + SWC 的工程价值

A 它内核是 JS 实现
B 它需要大量配置
C 它零配置、内核用 Rust+SWC,构建快且自动处理资源,适合快速项目 ✓ 正确答案
D 它构建很慢
#

41. Rust 工具链在 CI 的构建速度(Vite、Next.js)

A 只有 JS 工具能用于 CI
B Rust 工具链会拖慢 CI
C 它们与构建速度无关
D Rust 工具链显著缩短 Vite/Next.js 的构建时间,加快 CI 反馈与部署 ✓ 正确答案
#

42. Rust 工具链的 npm 包发布(@swc/core、@biomejs/biome)的现代实践

A 它们只发布纯 JS 代码
B 它们通过 NAPI-RS 生成平台二进制,用 optionalDependencies 按平台安装,需覆盖各平台 ✓ 正确答案
C 无需区分平台
D 二进制无法通过 npm 分发
#

43. Rust 工具链稳定性与生产可用的工程取舍与边界

A 它们都不兼容现有配置
B 所有 Rust 工具都已完全稳定
C 无需评估即可生产使用
D 不同工具成熟度不一,需评估生态兼容、边界特性与维护稳定性后再生产使用 ✓ 正确答案
#

44. Rust 工具链的 Source Map 支持的现代工程应用

A Source Map 与调试无关
B 它们生成 Source Map 支持调试与错误定位,生产环境常上传到监控服务而非暴露给用户 ✓ 正确答案
C 生产环境应暴露完整 sourcemap
D Rust 工具无法生成 sourcemap
#

45. Rust 工具链的 Tree Shaking 与 Dead Code Elimination 的工程价值

A 它们移除未使用模块与死代码,减小 bundle 体积,Rust 实现保证构建高效 ✓ 正确答案
B 它们会增加 bundle 体积
C 摇树与构建速度无关
D 无需配置 sideEffects
#

46. Rust 工具链在 TypeScript 转译的现代工程应用

A 它们也做完整类型检查
B 它们用 Rust 快速转译 TS,但类型检查需另用 tsc,工程上分工使用兼顾速度与类型安全 ✓ 正确答案
C 它们比 tsc 转译更慢
D 它们无法处理 TS
#

47. 边缘函数(Edge Functions)与 SSR 的职责边界,冷启动如何优化?

A 边缘函数应承担全部渲染
B Edge Functions 做轻量快路径,SSR 做重渲染,冷启动靠精简依赖与延迟初始化优化 ✓ 正确答案
C 冷启动无法优化
D 两者职责完全相同