Skip to content

Commit

Permalink
更新文档
Browse files Browse the repository at this point in the history
  • Loading branch information
pirunxi committed Nov 27, 2023
1 parent 7a3d58d commit a6339b6
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 3 deletions.
2 changes: 1 addition & 1 deletion docs/basic/memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ HybridCLR运行时消耗内存主要分为几部分:

### 补充元数据内存

我们测试了对常见的aot程序集补充元数据后消耗的内存。社区版本消耗的内存大约为dll大小的4倍,商业化版本未开启补充元数据时约为1.3倍
我们测试了对常见的aot程序集补充元数据后消耗的内存。社区版本消耗的内存大约为dll大小的4倍;商业化版本未开启完全泛型共享时约为1.3倍
商业化版本开启完全泛型共享后由于不需要补充元数据,此项为0。商业化版本相比社区降低了**67%**(开启完全泛型共享时为100%)的内存。

**详细数据**
Expand Down
6 changes: 4 additions & 2 deletions docs/business/metadataoptimization.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,18 @@ HybridCLR执行代码过程中并不会额外多占用内存,但加载assembly
- **TODO** 提供基于原始IL指令的解释器


**根据目前的测试结果,在64位平台,商业化版本相比社区版本大约节省了 `{补充元数据总大小} * 5.4 + {热更新程序集总大小} * 1.8` 内存。**
**根据目前的测试结果,在64位平台,商业化版本相比社区版本大约节省了 `{补充元数据总大小} * 4 + {热更新程序集总大小} * 1.8` 内存。**

对于WebGL平台(包括微信小游戏之类),由于可以开启faster(smaller) build选项,将进一步减少包体(约为所有aot dll大小的1-2倍),导致内存占用显著减少。
对于大多数项目来说,商业化版本最终可以减少WebGL平台近50-100M甚至更多多内存。

## 完全泛型共享

完全省去补充元数据内存,大约为dll大小的4倍。缺点是只有2021起才支持完全泛型共享。开启完全泛型共享后,能显著减少包体(减少约30-40%托管代码编译后大小)。

## 优化补充元数据内存

我们测试了对常见的aot程序集补充元数据后消耗的内存。社区版本消耗的内存大约为dll大小的4倍,商业化版本未开启补充元数据时约为1.3倍
我们测试了对常见的aot程序集补充元数据后消耗的内存。社区版本消耗的内存大约为dll大小的4倍;商业化版本未开启完全泛型共享时约为1.3倍
商业化版本开启完全泛型共享后由于不需要补充元数据,此项为0。商业化版本相比社区降低了**67%**(开启完全泛型共享时为100%)的内存。

**详细数据**
Expand Down

0 comments on commit a6339b6

Please sign in to comment.