问题标签 [jit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1832 浏览

c# - 动态加载页面类/程序集:在全局命名空间中找不到类型或名称

我正在尝试创建一个 ASP.Net Web 应用程序,它将其“内容”(ASPX/ASCX 和程序集)存储在文件系统以外的某个地方(例如,在服务内部),并根据需要动态加载它们。

我已经成功创建了一个 VirtualPathProvider,它负责从备用位置读取 ASPX/Master/ASCX 文件,但是当这些 ASPX 页面继承一个类时我遇到了问题 - 即:当它们有代码时。

感谢另一个问题的答案,我现在能够在运行时成功地将程序集加载到应用程序中。但是当我的运行时尝试编译我的页面时,我收到以下错误:

“编译器错误消息:CS0400:在全局命名空间中找不到类型或命名空间名称‘Web’(您是否缺少程序集引用?)”

[System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()] 公共类 default_aspx : global::Web.Code.CodeBehind, System.Web.SessionState.IRequiresSessionState, System.Web.IHttpHandler

我已将我的代码归结为一个简单的错误示例,以便您轻松查看。您可以在此处下载此代码

程序集在运行时使用 AppDomain.AssemblyResolve 事件动态加载。这是在 global.asax 中,看起来像这样:

有任何想法吗?

编辑 如果出于任何原因您需要更新 Web.Code 程序集 - 您需要将其复制到 Web 项目的“ReferencedAssemblies”文件夹中以使这些更改生效。

0 投票
4 回答
11027 浏览

.net - .NET CLR JIT 是否每次都编译每个方法?

我知道如果 Java 的HotSpot JIT 期望编译的开销低于在解释模式下运行方法的开销,它有时会跳过 JIT 编译方法。.NET CLR是否基于类似的启发式工作?

0 投票
4 回答
334 浏览

.net - 芯片供应商是否提供任何 .Net JIT 支持?

我知道 ARM 实际上显然对 Java 和 SUN 有一些支持,但我还没有真正参考过任何支持 .Net JIT 编译器的芯片供应商。我知道 IBM 和 Intel 都支持 C 编译器,以及 TI 和许多嵌入式芯片供应商。当您想到它时,所有 JIT 编译器都是编译和优化的最后阶段,您会认为这与芯片供应商的专业知识非常匹配。也许为 VM 建立一个标准化的 Plug In 编译引擎是有意义的。

微软也将 .Net 定位到嵌入式 Windows 平台,因此它们是公平的游戏。

皮特

0 投票
2 回答
709 浏览

c# - 嵌入 Mono - 本机的开销 -> 托管上下文切换

有人知道 Mono 中原生 -> 托管上下文切换的开销吗?即使用 C API 调用 .NET 方法/创建 .NET 对象引起的开销。

0 投票
2 回答
2718 浏览

javascript - 在没有 JIT 的情况下构建 v8

我想在有和没有 JIT 的情况下在 v8 上运行一些测试来比较性能。我知道 JIT 会提高我的平均速度性能,但如果我想在移动平台上工作,我会得到一些更详细的实际测试结果。

我还没有找到如何像 Squirrelfish 上那样启用或禁用 JIT(参见 JavaScriptCore/wtf/Platform.h 中的 ENABLE_JIT)。

有人知道如何用 v8 做到这一点吗?

谢谢。

亚历山大

0 投票
1 回答
170 浏览

.net - 如何从 .NETCF JIT 编译器中查看本机代码字节

任何人都可以提出一种方法(支持或不支持)来查看由 NETCF JIT 编译器编译的本机代码字节。我碰巧在ARM平台上的WinCE6.0上。

我猜这可以用本机调试器完成,但我试图(基本上)弄清楚我如何让我的方位知道我在看什么。或许可以在 P/Invoke 调用中设置断点,然后返回到 JITted 托管代码 - 诀窍是知道何时返回到您感兴趣的特定例程。

我的目的是确定为什么(在我的情况下)JITted 数学代码的性能明显低于等效的 C++(本机)代码。是的,我知道 .NETCF 没有本机浮点支持。

0 投票
1 回答
1958 浏览

c# - 如果启用优化,JIT 是否总是内联此方法?

我不期待一个明确的是或否。您可能拥有的任何知识我都会考虑作为答案。

0 投票
4 回答
8186 浏览

java - 我们可以在硬件中实现一个本地执行 Java 字节码的 Java 解释器吗?

如果我们在硬件中实现 java 解释器,那么我们如何实现 java 字节码的体系结构中立性...... java 是否使用 JIT(即时解释器)?以及这一切与操作系统的虚拟机概念和java虚拟机(JVM)有何关系

0 投票
2 回答
853 浏览

jit - 将代码直接编译成 MSIL

有没有办法将代码直接编译为 Native Code 而不是 MSIL,这样我们就可以在机器上执行代码时绕过 JIT。如果它是可能的。也请让我知道这项技术。

谢谢

0 投票
1 回答
933 浏览

.net - .NET 程序集缓存/ngen/jit 图像预热和冷却行为

我有一个通过 C++/CLI 使用 C#.NET 2.0 DLL 构建的输入法 (IME) 程序。由于 IME 总是附加到另一个应用程序,因此 C#.NET DLL 似乎无法避免图像地址变基。

尽管我已应用 ngen 创建该 C#.NET 2.0 DLL 的本机映像并将其安装到全局程序集缓存中,但它并没有太大改善,大约 12 秒。低至 9 秒。在缓慢的 PIII 级 PC 上。

因此,我使用了一个小型应用程序,它在启动时加载 C#.NET DLL 引用的所有组件,以“预热”该 DLL 的本机映像。它可以将加载时间加快到 0.5 秒。

然而,它只工作了一段时间。约30分钟。后来,它似乎又“降温”了。

有什么方法可以控制 GAC 或本机图像的行为始终“热”?这完全是图像地址变基问题吗?