- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个小型或中等规模的 F# 项目,15 个 *.fs 文件,大约 2000 行代码。编译突然有点慢,大约5秒。我想找出导致编译速度变慢的原因,但找不到像“详细”这样的 fsc 开关,导致它显示进度信息。
有人知道如何跟踪 F# 编译器 fsc 以了解在哪里调整编译吗?
最佳答案
--times
开关“显示编译的时间信息”。它显示了非常详细的信息,应该可以帮助您弄清楚是什么导致了这么长时间
编译以下程序
open System
[<EntryPoint>]
let main argv =
printfn "Hello World"
Console.ReadLine() |> ignore
0
产生这个输出
Microsoft (R) F# Compiler version 12.0.30110.0
Copyright (c) Microsoft Corporation. All Rights Reserved.
TIME: 0.1 Delta: 0.0 Mem: 34 G0: 0 G1: 0 G2: 0 [Import mscorlib]
TIME: 0.1 Delta: 0.0 Mem: 35 G0: 0 G1: 0 G2: 0 [Import mscorlib and FSharp.Core.dll]
TIME: 0.4 Delta: 0.3 Mem: 60 G0: 5 G1: 3 G2: 1 [Import system references]
TIME: 0.4 Delta: 0.0 Mem: 64 G0: 1 G1: 1 G2: 0 [Parse inputs]
TIME: 0.4 Delta: 0.0 Mem: 64 G0: 0 G1: 0 G2: 0 [Import non-system references]
TIME: 0.5 Delta: 0.1 Mem: 68 G0: 1 G1: 1 G2: 0 [Typecheck]
TIME: 0.5 Delta: 0.0 Mem: 68 G0: 0 G1: 0 G2: 0 [Typechecked]
TIME: 0.5 Delta: 0.0 Mem: 69 G0: 0 G1: 0 G2: 0 [Write Interface File]
TIME: 0.5 Delta: 0.0 Mem: 69 G0: 0 G1: 0 G2: 0 [Write XML document signatures]
TIME: 0.5 Delta: 0.0 Mem: 69 G0: 0 G1: 0 G2: 0 [Write XML docs]
TIME: 0.5 Delta: 0.0 Mem: 69 G0: 0 G1: 0 G2: 0 [Write HTML docs]
TIME: 0.6 Delta: 0.1 Mem: 73 G0: 2 G1: 1 G2: 1 [Encode Interface Data]
TIME: 0.7 Delta: 0.1 Mem: 76 G0: 1 G1: 1 G2: 0 [Optimizations]
TIME: 0.7 Delta: 0.0 Mem: 77 G0: 0 G1: 0 G2: 0 [Ending Optimizations]
TIME: 0.7 Delta: 0.0 Mem: 77 G0: 0 G1: 0 G2: 0 [Encoding OptData]
TIME: 0.7 Delta: 0.0 Mem: 77 G0: 0 G1: 0 G2: 0 [TAST -> ILX]
TIME: 0.7 Delta: 0.0 Mem: 77 G0: 0 G1: 0 G2: 0 [ILX -> IL (Unions)]
TIME: 0.7 Delta: 0.0 Mem: 77 G0: 0 G1: 0 G2: 0 [ILX -> IL (Funcs)]
ilwrite: TIME 0.000 (total) 0.686 (delta) - Write Started
ilwrite: TIME 0.000 (total) 0.000 (delta) - Module Generation Preparation
ilwrite: TIME 0.000 (total) 0.000 (delta) - Module Generation Pass 1
ilwrite: TIME 0.000 (total) 0.000 (delta) - Module Generation Pass 2
ilwrite: TIME 0.016 (total) 0.016 (delta) - Module Generation Pass 3
ilwrite: TIME 0.016 (total) 0.000 (delta) - Module Generation Pass 4
ilwrite: TIME 0.016 (total) 0.000 (delta) - Finalize Module Generation Results
ilwrite: TIME 0.016 (total) 0.000 (delta) - Generated Tables and Code
ilwrite: TIME 0.016 (total) 0.000 (delta) - Layout Header of Tables
ilwrite: TIME 0.016 (total) 0.000 (delta) - Build String/Blob Address Tables
ilwrite: TIME 0.016 (total) 0.000 (delta) - Sort Tables
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Header of tablebuf
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Tables to tablebuf
ilwrite: TIME 0.016 (total) 0.000 (delta) - Layout Metadata
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Metadata Header
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Metadata Tables
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Metadata Strings
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Metadata User Strings
ilwrite: TIME 0.016 (total) 0.000 (delta) - Write Blob Stream
ilwrite: TIME 0.016 (total) 0.000 (delta) - Fixup Metadata
ilwrite: TIME 0.016 (total) 0.000 (delta) - Generated IL and metadata
ilwrite: TIME 0.016 (total) 0.000 (delta) - Layout image
ilwrite: TIME 0.016 (total) 0.000 (delta) - Writing Image
ilwrite: TIME 0.016 (total) 0.000 (delta) - Finalize PDB
ilwrite: TIME 0.016 (total) 0.000 (delta) - Signing Image
TIME: 0.7 Delta: 0.0 Mem: 78 G0: 0 G1: 0 G2: 0 [Write .NET Binary]
TIME: 0.7 Delta: 0.0 Mem: 78 G0: 0 G1: 0 G2: 0 [Write Stats File]
关于f# - 如何使 f# 编译器 (fsc) 冗长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25453894/
FSC 每次都重新编译我的 .scala 文件,即使不需要 - 我可以编译两次,而无需在尝试之间编辑任何内容,然后重新编译它们!例如,我有 2 个文件 Hello.scala class Hello{
我正在尝试在我的 Maven 项目中使用 fsc(快速 scala 编译器)。我的 pom.xml已: ... cc cc compile
相关问题:Does SBT use the Fast Scala Compiler (fsc)? fsc可以和sbt一起使用吗;实用吗?如果可以,如何将 fsc 集成到 sbt 中? 最佳答案 fsc
我有一个小型或中等规模的 F# 项目,15 个 *.fs 文件,大约 2000 行代码。编译突然有点慢,大约5秒。我想找出导致编译速度变慢的原因,但找不到像“详细”这样的 fsc 开关,导致它显示进度
当我在构建服务器上运行F#编译器-fsc.exe时,即使没有输入文件,它也要花费一定的时间(约20秒)才能运行。经过一番调查,我发现这是因为该应用程序尝试访问crl.microsoft.com(可能是
我正在使用 Scala 编译服务器。这可能与我的 IDE IntelliJ IDEA 无关,但我会告诉您,我通过该 IDE 中的特殊运行配置启动了 Scala 编译服务器。 一段时间后没有编译任何东西
我目前正在使用 IDEA 的构建机制和 fsc 来使用 Scala 进行开发。它仍然有点慢,并且必须(重新)启动编译服务器很痛苦。这里很多人建议将 SBT 与 IDEA 一起作为构建工具。 您认为每种
SBT 使用 fsc 吗? 出于测试目的,我在一台相当慢的 Ubuntu 机器 (Atom N270) 上编译了一个 500 行的程序。连续三个编译时间分别为 77s、66s、66s。 然后我从命令行
我们有一个 F# 项目无法在 teamctiy 上构建,也无法找出解决方案。似乎在通过 teamcity 构建时,fsc 的参数对我们来说是不正确的。如果我在同一源上手动运行 msbuild/t:Re
如果我从 XML 反序列化,我会收到以下错误:对象或值的初始化导致对象或值在完全初始化之前被递归访问。 我的 F# 代码如下所示: [] [] [] type DerivedClass() as X
我有一个愚蠢的问题要问。我刚开始学习 F#,正在尝试编译一些基础示例(例如 HelloWorld.fs)。 我创建了一个简单的 F# 文件,其路径为:C:\FSharp\HelloWorld.fs。
我如何告诉 FAKE 编译 .fs文件使用 fsc ? 解释如何传递参数的奖励积分,如 -a和 -target:dll . 编辑:我应该澄清一下,我正在尝试在没有 MSBuild/xbuild/.sl
Scala 2.9.1随附的fsc Ant任务有错误(发出SI-5174和SI-5196):如果编译失败,则一切正常进行。另一方面,如果编译成功,则将报告内部编译错误-即使直接编译了所有内容。当然,可
fsc(快速 scala 编译器)比 scalac 快。但是在 TDD 周期中,我花了 3 秒来编译源代码,运行测试的时间不到 1 秒。建议将编译时间减少到接近 0? 显然,买一台更快的电脑不是答案:
目前,我正在为F#上大学类(class)。我对F#交互式控制台和F#编译器有疑问。 F#编译器在编译F#源代码时会生成Microsoft中间语言(MSIL)代码。然后,在执行编写的程序时,JIT编译器
我是一名优秀的程序员,十分优秀!