如何 0 成本启动全员 AI 技能提升?戳> 了解详情
写点什么

Mono 2.2 有了新的线性代码生成引擎

  • 2009-01-27
  • 本文字数:484 字

    阅读完需:约 2 分钟

直到现在 Mono 的代码生成引擎都是基于树状的代码中间表现形式(Intermediate Representation,IR)。Mono 2.2 版有了一个基于线性IR 的新引擎,大大改善了速度和代码大小。

Miguel de Icaza 说,原先树状的 IR 导致“很难有效改进代码生成及扩展 JIT 引擎”。新的线性 IR 有助于“寄存器分配程序更好地了解寄存器的使用状况,从而在生成代码的时候更好地决策”。

线性 IR 的开发工作始于2005 年末。工作一直在进展,但Mono 团队不想把新引擎放进Mono 2.0 版,因为牵涉到的工作实在是太多了。现在随着 2.2 版发布,Mono 终于用上了新引擎。

新引擎的巨大成效从基准测试结果可见一斑:

速度:计算密集的代码会从新引擎得益较多,一般有 10% 到 30% 的性能提升,某些情况下最高可提速 50%。

代码大小:新引擎产生的代码更紧凑,一般可缩小 12% 到 20%。

想了解新引擎技术细节的读者请参阅Mono 的网站。 2.2 版发布说明上提到以下主要改进:性能提升、支持完全的提前编译、支持通过PerformanceCounters 监控、支持运行时动态挂载代码(attaching code live)、支持SIMD ,不一而足。

查看英文原文: Mono 2.2 Has a Linear Code Generation Engine

2009-01-27 07:141789
用户头像

发布了 225 篇内容, 共 73.3 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

模块二作业

Diana S

#架构实战营

前端JS规范

默默的成长

Vue 前端 10月月更

Vue 2x 中使用 render 和 jsx 的最佳实践 (2)

默默的成长

Vue 前端 10月月更

cstdio的源码学习分析10-格式化输入输出函数fprintf---宏定义/辅助函数分析04

桑榆

源码刨析 10月月更 C++

SpringBoot的实体类中常用的注解

Java学术趴

10月月更

架构--作业2

李某人

架构实战营

kubernetes

急需上岸的小谢

10月月更

SpringBoot实体类常用注解(二)

Java学术趴

10月月更

八大排序(下)

lovevivi

c 数据结构 10月月更

微信朋友圈的高性能复杂度分析

小虎

架构训练营

低代码探索:freemarker的模板和表达式

程序员架构进阶

低代码平台 模板引擎 10月月更 freemarker

Java多线程 线程池Executor框架

Yeats_Liao

后端 Java core 10月月更

面试突击90:过滤器和拦截器有什么区别?

王磊

架构实战营模块2-微信朋友圈高性能架构

冷夫冲

架构 架构训练营 架构实战营

MAC地址与IP地址

急需上岸的小谢

10月月更

TCP 复位攻击原理和实战复现

急需上岸的小谢

10月月更

02微信高能性复杂度分析

神奇的叶叔叔

Web3.0杂谈-#006(53/100)

hackstoic

DAO Web3.0

【算法】剑指offer-调整数组顺序&&数组出现超过一半的数字

芒果酱

c++ 算法 10月月更

CorelDRAW 2019,软件应用项目(二)

张立梵

设计师 CorelDRAW 2022 10月月更

极客时间—架构实战营—第九期—模块二作业

阿梁

企业级大数据技术框架

穿过生命散发芬芳

大数据技术 10月月更

分支规范和git提交规范

默默的成长

git 前端 10月月更

Java多线程 Callable和Future

Yeats_Liao

后端 Java core 10月月更

2022-10-16:以下go语言代码输出什么?A:timed out;B:panic;C:没有任何输出。 package main import ( “context“ “fmt“

福大大架构师每日一题

golang 福大大 选择题

八大排序 (上)

lovevivi

c 数据结构 10月月更

Smart Finance:熊市下,GameFi P2E热潮仍能得到延续

鳄鱼视界

当前Serverless的六大局限性

阿泽🧸

Serverless 10月月更

Java多线程 Future和FutureTask的区别

Yeats_Liao

后端 Java core 10月月更

Mono 2.2有了新的线性代码生成引擎_.NET_Abel Avram_InfoQ精选文章