Files
broswer-automation/packages/wasm-simd/BUILD.md
nasir@endelospay.com d97cad1736 first commit
2025-08-12 02:54:17 +05:00

1.5 KiB
Raw Blame History

WASM SIMD 构建指南

🚀 快速构建

前置要求

# 安装 Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# 安装 wasm-pack
curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

构建选项

  1. 从项目根目录构建(推荐):

    # 构建 WASM 并自动复制到 Chrome 扩展
    npm run build:wasm
    
  2. 只构建 WASM 包

    # 从 packages/wasm-simd 目录
    npm run build
    
    # 或者从任何地方使用 pnpm filter
    pnpm --filter @chrome-mcp/wasm-simd build
    
  3. 开发模式构建

    npm run build:dev  # 未优化版本,构建更快
    

构建产物

构建完成后,在 pkg/ 目录下会生成:

  • simd_math.js - JavaScript 绑定
  • simd_math_bg.wasm - WebAssembly 二进制文件
  • simd_math.d.ts - TypeScript 类型定义
  • package.json - NPM 包信息

集成到 Chrome 扩展

WASM 文件会自动复制到 app/chrome-extension/workers/ 目录Chrome 扩展可以直接使用:

// 在 Chrome 扩展中使用
const wasmUrl = chrome.runtime.getURL('workers/simd_math.js');
const wasmModule = await import(wasmUrl);

🔧 开发工作流

  1. 修改 src/lib.rs 中的 Rust 代码
  2. 运行 npm run build 重新构建
  3. Chrome 扩展会自动使用新的 WASM 文件

📊 性能测试

# 在 Chrome 扩展中运行基准测试
import { runSIMDBenchmark } from './utils/simd-benchmark';
await runSIMDBenchmark();