different outline window in IGV
Haluk Dogan
hlk.dogan at gmail.com
Mon Sep 11 02:33:11 UTC 2017
I checked the OptimisticOptimizations class. Is the following Optimization
enum class only the optimization plans in Graal?
public enum Optimization {
RemoveNeverExecutedCode,
UseTypeCheckedInlining,
UseTypeCheckHints,
UseExceptionProbabilityForOperations,
UseExceptionProbability,
UseLoopLimitChecks
}
Thanks.
Haluk
On Thu, Aug 31, 2017 at 11:30 AM, Christian Wimmer <
christian.wimmer at oracle.com> wrote:
> You have full control over optimization phases that Graal performs: When
> Graal is invoked for Truffle [1], the "suites" parameter specifies the
> optimization phases that are applied. For Truffle, we use the default
> suites [2], but you can do any modification to the suites that you want,
> i.e., remove phases or add your own custom phases.
>
> -Christian
>
> [1] https://github.com/graalvm/graal/blob/a00ce39133db463fc93a59
> 63f62060de295c5db0/compiler/src/org.graalvm.compiler.
> truffle/src/org/graalvm/compiler/truffle/TruffleCompiler.java#L232
>
> [2] https://github.com/graalvm/graal/blob/a00ce39133db463fc93a59
> 63f62060de295c5db0/compiler/src/org.graalvm.compiler.
> truffle/src/org/graalvm/compiler/truffle/hotspot/HotSp
> otTruffleCompiler.java#L45
>
>
>
> On 08/31/2017 07:21 AM, Haluk Dogan wrote:
>
>> So, we actually don't have the control for optimization levels and
>> particular optimization methods like in the gcc[1]. Am I wrong?
>>
>> I tried "mx ideinit" and import all the projects to my workspace,
>> however, I had a long list in the "Problems" window mostly related with
>> jvmci. I build graal with "labsjdk1.8.0_141-jvmci-0.33". I'll try again
>> with cloning fresh repository.
>>
>> Thanks.
>>
>> [1] http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html <
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__gcc.
>> gnu.org_onlinedocs_gcc_Optimize-2DOptions.html&d=DwMF
>> aQ&c=RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057SbK10&r=8_4sWLyE-
>> J7cW7yn2ZjXxOIuQGXx5VR-eUMNh-IO-MM&m=ZDTxJqhtEVh20GvfZzX7exR
>> JBqRaqKrJ-htYdiZd-cc&s=IfJm2WUrevCcoKYTs5NRNWiRIa2ClpN5z-Wbz0U1JbI&e=>
>>
>>
>> On Thu, Aug 31, 2017 at 12:02 AM, Christian Wimmer <
>> christian.wimmer at oracle.com <mailto:christian.wimmer at oracle.com>> wrote:
>>
>> The best (but of course reasonably complex) example for custom
>> compilations is Truffle. When you look at code like the class
>> TruffleCompiler, you see how a custom StructuredGraph is created
>> (using the PartialEvaluator class), compiled using the standard
>> Graal compilation pipeline (but with some custom providers like a
>> more aggressive constant folding of field loads), and installed into
>> the VM's code cache.
>>
>> I think our version of JDK 8 is easier for experiments compared to
>> Java 9 because you don't run in any module issues, and it is also
>> our main development platform. When you run "mx ideinit", you get
>> all the IDE setup for Eclipse, NetBeans, or IntelliJ (including the
>> correct setup of the projects to include the JVMCI classes).
>>
>> -Christian
>>
>>
>>
>> On 8/29/2017 11:16 AM, Haluk Dogan wrote:
>>
>> Hi,
>>
>> Is there any examples for custom compilation with Graal? I'm
>> interested in
>> this part "Applications can call Graal like a library to perform
>> custom
>> compilations" as shown in slide 82 of
>> "2017_PLDI_GraalTutorial.pdf".
>> However, I was not able to make any progress.
>>
>> I created an Intellij project and set 9ea14-zulu as my compiler.
>> Then, I
>> tried to run GraalTutorial, but had errors related to undefined
>> modules. If
>> I changed the compiler to "labsjdk1.8.0_141-jvmci-0.33", then I
>> am getting
>> errors for importing jdk.vm.ci.code.*
>>
>> Is there any guideline to set up a project, so that I can call
>> Graal like a
>> library?
>>
>> Thanks.
>>
>> Best,
>> Haluk
>>
>> On Mon, Aug 28, 2017 at 12:52 PM, Christian Wimmer <
>> christian.wimmer at oracle.com
>> <mailto:christian.wimmer at oracle.com>> wrote:
>>
>> Hi Haluk,
>>
>> There is an updated version of the Graal tutorial from PLDI
>> 2017 (linked
>> from [1]), where the command lines reflect the state from
>> June 2017. But
>> things change quickly in the Graal world, so it is difficult
>> to keep a
>> presentation up-to-date.
>>
>> -Christian
>>
>> [1]
>> https://github.com/graalvm/graal/blob/master/docs/Publicatio
>> ns.md
>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__
>> github.com_graalvm_graal_blob_master_docs_Publications.md&d=
>> DwMFaQ&c=RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057SbK10&r=8_
>> 4sWLyE-J7cW7yn2ZjXxOIuQGXx5VR-eUMNh-IO-MM&m=ZDTxJqhtEVh20Gvf
>> ZzX7exRJBqRaqKrJ-htYdiZd-cc&s=Xb0Ck0tNuTZ0-xmIQPLtO6PRulDCt2
>> kx7Rta_s0Fxpo&e=>
>>
>>
>>
>>
>> On 08/28/2017 09:00 AM, Haluk Dogan wrote:
>>
>> Hi,
>>
>> I'm playing with Graal to get more understanding about
>> the technology. I
>> run the following command:
>>
>> mx unittest -XX:+UseJVMCICompiler -Dgraal.Dump
>> -D:MethodFilter=String.hashCode
>> GraalTutorial#testStringHashCode
>>
>> However, the screen I have for Outline window is
>> different than the
>> Christian Wimmer's "Graal Tutorial at CGO 2015". What
>> parameters should I
>> add to get the same window?
>>
>> Thanks.
>>
>> Best,
>> Haluk
>>
>>
>>
>>
>>
>>
>>
>> --
>> HD
>>
>
--
HD
More information about the graal-dev
mailing list