question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Consider adding mibc/profile for R2R FSC/FSI for faster startup

See original GitHub issue

We should consider adding both managed and native mibc/profiles for fsc and fsi:

  • Come up with both FSC and FSI scenarios for profile generation, add them to dotnet-optimization (@EgorBo can assist with that):
    • Scenarios for collecting the profiling data (F# console, or web app, for example) which will be used to produce profiles.
    • Profiles then will be packaged and published as a NuGet package.
  • When we building the compiler, download the NuGet package with profiles, and use them when building R2R compiler.

@EgorBo Have I missed anything?

Issue Analytics

  • State:open
  • Created a year ago
  • Reactions:1
  • Comments:5 (5 by maintainers)

github_iconTop GitHub Comments

2reactions
EgorBocommented, Sep 8, 2022

PR: https://dev.azure.com/dnceng/internal/_git/dotnet-optimization/pullrequest/25175

I played with the resulting MIBC locally - it doesn’t give much, but it works good with R2RComposite, e.g. I was measuring how long it takes to build https://github.com/giraffe-fsharp/Giraffe

for(;;) { Measure-Command { C:\prj\fsharp\artifacts\bin\fsc\Release\net7.0\win-x64\publish\fsc.exe "@girafe.rsp" }}

best results:

Default: 5350ms
PublishReadyToRun for fsc: 4184ms
PublishReadyToRun + Composite: 3589ms

Around 30% improvement! 🙂

also, hit a runtime issue while I was collecting MIBC: https://github.com/dotnet/runtime/issues/74295

1reaction
EgorBocommented, Jun 20, 2022

We will also need to understand how does it affect, .tail calls, for example, since F# emits a bunch of them.

We used to avoid instrumenting methods with explicit tails calls but then decided to allow it - https://github.com/dotnet/runtime/pull/58632 so should be fine

Read more comments on GitHub >

github_iconTop Results From Across the Web

Filter brewing for the Soekris R2R
My intention is to put together a collection of basic filters starting with: Linear-phase anti-aliasing; Minimum-phase anti-aliasing; Linear- ...
Read more >
HiBy RS6 - Reviews | Headphone Reviews and Discussion
Pros: World's first fully discrete NOS R2R DAP with open Android Warm, full, lush 'analogue' sound with excellent technical ability. Fast ...
Read more >
Nebula must have - Page 157
question about an older nebula program: Using R2R for a studer a800 program. Should Tapeboost nebula instance go before or after the R2R...
Read more >
Musician Audio DRACO R-2R Ladder DAC Review
If you're looking for a DAC that would sweeten things up and add more soul into your setup, there's nothing better than a...
Read more >
Dags Hofrats' Post
This documentary serves as both a factual account and a social critique, shedding light on systemic and structural flaws. It presents a variety...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found