similar to: Minimal PGO for ORC JIT

Displaying 20 results from an estimated 7000 matches similar to: "Minimal PGO for ORC JIT"

2019 Mar 30
2
Minimal PGO for ORC JIT
Hi David, Thanks for your reply. I find that I need to add some new types of profile data that are specific to JIT environment like Function Ordering. Function Ordering is similar to dynamic call graph which records the execution of functions at runtime along with the order in which they are called. Eg: Suppose they are 5 functions (F1..F5). F1 calls other functions in the order described
2019 Mar 28
2
Higher level program analysis
Hi, David: Good point, it will be interesting to see speculative compilation in this context applying on devirtualization, with high level (type) information if applicable. > On Mar 28, 2019, at 2:35 PM, preejackie <praveenvelliengiri at gmail.com> wrote: > > Hi David & Bekket, > > Thanks your replies :) > > David, Indent here is: ORC v2 JIT APIs has
2019 Mar 24
2
GSoC- Speculative compilation support in ORC v2 , looking for mentors!
Hi Bekket, Sorry for the delayed reply. By appropriate, I mean performance of compiled native code. I was referring other JIT implementations like LuaJIT & webkit FTL JIT to see how they implement their JIT. I have gone through the design of Spider Monkey & Android runtime (ART) JIT. As, you said both region based and method based compilation unit have their own advantage &
2019 Mar 29
2
Higher level program analysis
preejackie via llvm-dev <llvm-dev at lists.llvm.org> writes: > Are you suggesting that static analysis is much inferior than > profiling in finding "next executing function" ? I'm stuck at > deciding which one to prefer & implement during this summer project, > Could you please help me? I suspect this is highly code-dependent. For example, it's probably
2019 Mar 25
3
GSoC- Speculative compilation support in ORC v2 , looking for mentors!
Hi Bekket, Thank you for your reply. Earlier I came across a paper called "Dynamic Look Ahead Compilation: Hide JIT compilation latencies", it devised some methods for JIT compilation of functions before the actual call takes place by using call graph analysis, branch probabilities to generate a list of functions with high likelihood of execution in near future. In my opinion it
2019 Mar 28
2
Higher level program analysis
Devirtualization is an example of predicting calls and is much more easily done on a higher-level representation. It is simply easier to reason about certain things given information that is lost during translation to LLVM IR. The MLIR project makes similar arguments. It would be helpful to know what's being attempted here. I'm not sure what the (hardware?) branch predictor has to do
2019 Mar 23
2
GSoC- Speculative compilation support in ORC v2 , looking for mentors!
Hi all, I would like to propose "Speculative compilation support in ORC v2 JIT API" for this year GSoC summer project. Project Description: Speculative compilation support. One of the selling points of the concurrent ORC APIs is that you can start compiling a function before you need it, in the hope that by the time that you do need it it is already compiled. However, if we just
2019 Mar 28
2
Higher level program analysis
Hi all, I'm looking for some program analysis techniques which help me to find potential functions to execute next, from the current executing function. I want to decision based on compile time information. I consider LLVM IR is too low-level to make such analysis. So, I using call graph representation of module. I figured out the probability of function which execute next based on the
2020 Jan 17
6
ORC JIT Weekly #1
Hi All, In the interests of improving visibility into ORC JIT development I'm going to try writing weekly status updates for the community. I hope they will provide insight into the design and state of development of LLVM's JIT APIs, as well as serving as a convenient space for discussions among LLVM's large and growing community of JIT API users. The length and detail will vary
2019 May 08
2
Reuse llvm::ExecutionEngine
Heyho, I can only provide you with a screenshot for the first problem I noticed: [https://media.discordapp.net/attachments/534012750045642783/575369402195640321/unknown.png] This code will crash when calling "eeBuilder.create". But I also looked at what happens if I do reuse the llvm::ExecutionEngine. After the call to "finalizeObject" I use "removeModule" for the
2019 Mar 03
2
Unknown Target Node
I'm still relatively new to llvm, good to know these errors are from CodeGen. On 03/03/19 10:49 AM, Tim Northover wrote: > On Sat, 2 Mar 2019 at 21:00, preejackie via llvm-dev > <llvm-dev at lists.llvm.org> wrote: >> Could you please explain how you are using this? like commands >> >> When I run this IR in opt, it doesn't throw any errors. > The error
2019 Jan 24
2
LLVM Kaleidoscope : Compiling to Object Code - Segmentation Fault
Hi David! Thanks for reaching out, the codegen part of the tutorial is fine, but when I try to generate the object code file, it throws segfault. Also please note that I'm using release build of llvm, actually I don't know whether that is the root cause or not. I also run through valgrind, it seems like a invalid read from stack. |||Error Summary: | |1 errors in context 1 of 1:
2020 Feb 24
4
ORC JIT Weekly #6 -- General initializer support and JITLink optimizations
Hi All, The general initializer support patch has landed (see 85fb997659b plus follow up fixes). Some quick background: Until now ORC, like MCJIT, has handled static initializer discovery by searching for llvm.global_ctors and llvm.global_dtors arrays in the IR added to the JIT. This approach suffers from several drawbacks: 1) It provides no built-in support for other program representations:
2019 Apr 16
2
Google Season of Docs
Hi all, Google Season of Docs is a program to improve the documentation of Open Source Organizations, You can find more details here : Season of Docs. <https://developers.google.com/season-of-docs/> I'm sharing because i think that LLVM Community may be interested and get benefit from it. Thank you! -- Have a great day! PreeJackie -------------- next part -------------- An HTML
2018 Jan 19
0
PGO in jit
Hi, Is it possible to use PGO in orc jit? I want to compile some module with instrumentation, collect statistics and then compile this module again without instrumentation using collected data, within same process. What is the proper way to do it? Thanks, Ivan -------------- next part -------------- An HTML attachment was scrubbed... URL:
2019 Mar 03
2
Unknown Target Node
Hi, Could you please explain how you are using this? like commands When I run this IR in opt, it doesn't throw any errors. On 03/03/19 1:30 AM, via llvm-dev wrote: > Hi, > > I'm having an error I've never seen before > > LLVM ERROR: Cannot select: t20: ch,glue = <<Unknown Target Node #284>> t11, TargetGlobalAddress:i32<i32 (i32, i32)* @add2> 0,
2019 Mar 23
2
Stability of ORC JIT api with v8
Hi, I am still on LLVM v6 as v7 ORC api changes were not backward compatible. Has the ORC api stabilized now with v8, or is it still under flux? Thanks and Regards Dibyendu
2019 Jun 21
2
Purpose of Epoch Trackers
Hi all, I'm dealing with the multi-threaded code, in one of executions of the program I hitting an assertion failure, I'm not always getting the assertion failure when I run the executable but it occurs for say (1 in 10) times. I think there may be an thread race condition. I don't know which is the root cause of this error because the assertion not explicitly occurs in my code, it
2018 Jan 29
2
Using PGO and -O3
Hello all, clang-related PGO documentation recommends using PGO with -O2 (for example: https://clang.llvm.org/docs/UsersManual.html#profile-guided-optimization). The question is: is there any reason why exactly -O2 is used in examples? Are there any factors which can cause problems when using PGO with -O3? Thanks in advance for your advice! -- Best Regards, Victor Leschuk | Software Engineer
2019 Mar 06
2
GSoC2019 - DebugInfo should not effect codegen
Hi all, I'm interested in participating this GSoC with llvm. I would like to contribute on the project idea "DebugInfo should not effect codegen". Over the past few days, I have gone through some bugs reported at bugzilla that cause different codegen behavior of same program. Bugs I have been looking at are:     1. [fuzzDI] -O1 + `-g` cause the generated code to change.