different outline window in IGV

Haluk Dogan hlk.dogan at gmail.com
Wed Sep 6 22:06:08 UTC 2017


I think I solved the problem by setting the jdk output of "mx makegraaljdk"
to my project. Earlier, I used graalvm-0.27.

On Wed, Sep 6, 2017 at 2:51 AM, Haluk Dogan <hlk.dogan at gmail.com> wrote:

> I'm following the tutorial slides and wrote the code in the following link
> (it is exactly the same as the tutorial code snippet).
>
> I added the following JVM flags to run the program:
>
> -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler
> -XX:-UseJVMCIClassLoader
>
> However, I'm receiving this error:
> Exception in thread "main" java.lang.NoSuchMethodError:
> org.graalvm.compiler.code.CompilationResult.<init>(Lorg/
> graalvm/compiler/core/common/CompilationIdentifier;)V
>     at smartoptimizer.HelloWorld.compileAndInstallMethod(
> HelloWorld.java:115)
>     at smartoptimizer.HelloWorld.main(HelloWorld.java:132)
>
> I've checked the org.graalvm.compiler.code.CompilationResult constructor
> and there is actually a *CompilationResult(CompilationIdentifier
> compilationId)* constructor.
>
> I don't know what's wrong? Is this problem related with JVM flags?
>
> Thanks.
>
> 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/HotSpotTruffleCompiler.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=DwMFaQ&c=
>>> RoP1YumCXCgaWHvlZYR8PQcxBKCX5YTpkKY057SbK10&r=8_4sWLyE-J7cW7
>>> yn2ZjXxOIuQGXx5VR-eUMNh-IO-MM&m=ZDTxJqhtEVh20GvfZzX7exRJBqRa
>>> qKrJ-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=ZDTxJqhtEVh20GvfZzX7ex
>>> RJBqRaqKrJ-htYdiZd-cc&s=Xb0Ck0tNuTZ0-xmIQPLtO6PRulDCt2kx7Rta_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
>



-- 
HD


More information about the graal-dev mailing list