From juan.fumero at ed.ac.uk Wed Aug 6 17:15:43 2014 From: juan.fumero at ed.ac.uk (Juan Jose Fumero) Date: Wed, 06 Aug 2014 18:15:43 +0100 Subject: Eclipse and GraalVM: "The VM does not support the Graal API" Message-ID: <1407345343.5781.9.camel@gofio> Hi everybody, I am working with my OpenCL branch and this version of graal [1]. If I execute my programs from the command line: $ ./mx.sh vm \ -Xmx6g \ -Xbootclasspath/p:graal.jar \ -XX:-BootstrapGraal \ -cp @com.edinburgh.parallel.functional \ com.edinburgh.parallel.functional.benchmarks.Saxpy Everything works, but I execute the program in Eclipse, I get the following error. The same error with UnitTest. java.lang.UnsupportedOperationException: The VM does not support the Graal API. Currently used Java home directory is /home/juanjo/phd/graaljdk8ocl/jdk1.8.0_11/product/jre. Currently used VM configuration is: OpenJDK 64-Bit Graal VM at com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) at com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) The method getBackend contains the following: private static Backend getBackend() { Backend hostBackend = Graal.getRequiredCapability(RuntimeProvider.class).getHostBackend(); return hostBackend; } Any idea? Many thanks Juanjo [1] http://hg.openjdk.java.net/graal/graal/rev/e342886ed437 -- PhD Student University of Edinburgh -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: not available URL: From juan.fumero at ed.ac.uk Wed Aug 6 17:39:12 2014 From: juan.fumero at ed.ac.uk (Juan Jose Fumero) Date: Wed, 06 Aug 2014 18:39:12 +0100 Subject: Eclipse and GraalVM: "The VM does not support the Graal API" In-Reply-To: <53E263EC.9060207@oracle.com> References: <1407345343.5781.9.camel@gofio> <53E263EC.9060207@oracle.com> Message-ID: <1407346752.5781.13.camel@gofio> If I upgrade to the lastest version I get the same error, but in the terminal. java.lang.UnsupportedOperationException: The VM does not support the Graal API. Currently used Java home directory is /tmp/graalWed-Aug--6/jdk1.8.0_11/product/jre. Currently used VM configuration is: OpenJDK 64-Bit Graal VM at com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) at com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) at com.edinburgh.parallel.opencl.functional.MapToGraal.getCompiledLambda(MapToGraal.java:96) at com.edinburgh.parallel.opencl.functional.MapToGraal.createKernel(MapToGraal.java:166) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.edinburgh.parallel.functional.ComposablePatternMap.patternApplyOcl(ComposablePatternMap.java:309) What could it be? Juanjo On Wed, 2014-08-06 at 10:20 -0700, Mick Jordan wrote: > On 8/6/14, 10:15 AM, Juan Jose Fumero wrote: > > Hi everybody, > > I am working with my OpenCL branch and this version of graal [1]. > > > > If I execute my programs from the command line: > > > > $ ./mx.sh vm \ > > -Xmx6g \ > > -Xbootclasspath/p:graal.jar \ > > -XX:-BootstrapGraal \ > > -cp @com.edinburgh.parallel.functional \ > > com.edinburgh.parallel.functional.benchmarks.Saxpy > > > > Everything works, but I execute the program in Eclipse, I get the > > following error. The same error with UnitTest. > > > > java.lang.UnsupportedOperationException: The VM does not support the > > Graal API. > > Currently used Java home directory > > is /home/juanjo/phd/graaljdk8ocl/jdk1.8.0_11/product/jre. > > Currently used VM configuration is: OpenJDK 64-Bit Graal VM > > at > > com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) > > at > > com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) > > > > > > The method getBackend contains the following: > > > > private static Backend getBackend() { > > Backend hostBackend = > > Graal.getRequiredCapability(RuntimeProvider.class).getHostBackend(); > > return hostBackend; > > } > > > > > > Any idea? > Upgrade to the latest rev (at a minimum) rev 74123ce7599b > > Mick > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: not available URL: From doug.simon at oracle.com Wed Aug 6 18:35:09 2014 From: doug.simon at oracle.com (Doug Simon) Date: Wed, 6 Aug 2014 20:35:09 +0200 Subject: Eclipse and GraalVM: "The VM does not support the Graal API" In-Reply-To: <1407346752.5781.13.camel@gofio> References: <1407345343.5781.9.camel@gofio> <53E263EC.9060207@oracle.com> <1407346752.5781.13.camel@gofio> Message-ID: As of http://hg.openjdk.java.net/graal/graal/rev/c9284d733aa1, all classes in graal.jar (and graal-truffle.jar) are now (by default) isolated from application classes. This is part of efforts to secure Graal. To revert to the old behavior, specify -XX:-UseGraalClassLoader on the command. -Doug On Aug 6, 2014, at 7:39 PM, Juan Jose Fumero wrote: > If I upgrade to the lastest version I get the same error, but in the > terminal. > > java.lang.UnsupportedOperationException: The VM does not support the > Graal API. > Currently used Java home directory > is /tmp/graalWed-Aug--6/jdk1.8.0_11/product/jre. > Currently used VM configuration is: OpenJDK 64-Bit Graal VM > at > com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) > at > com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) > at > com.edinburgh.parallel.opencl.functional.MapToGraal.getCompiledLambda(MapToGraal.java:96) > at > com.edinburgh.parallel.opencl.functional.MapToGraal.createKernel(MapToGraal.java:166) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:483) > at > com.edinburgh.parallel.functional.ComposablePatternMap.patternApplyOcl(ComposablePatternMap.java:309) > > > What could it be? > > > Juanjo > > > On Wed, 2014-08-06 at 10:20 -0700, Mick Jordan wrote: > >> On 8/6/14, 10:15 AM, Juan Jose Fumero wrote: >>> Hi everybody, >>> I am working with my OpenCL branch and this version of graal [1]. >>> >>> If I execute my programs from the command line: >>> >>> $ ./mx.sh vm \ >>> -Xmx6g \ >>> -Xbootclasspath/p:graal.jar \ >>> -XX:-BootstrapGraal \ >>> -cp @com.edinburgh.parallel.functional \ >>> com.edinburgh.parallel.functional.benchmarks.Saxpy >>> >>> Everything works, but I execute the program in Eclipse, I get the >>> following error. The same error with UnitTest. >>> >>> java.lang.UnsupportedOperationException: The VM does not support the >>> Graal API. >>> Currently used Java home directory >>> is /home/juanjo/phd/graaljdk8ocl/jdk1.8.0_11/product/jre. >>> Currently used VM configuration is: OpenJDK 64-Bit Graal VM >>> at >>> com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) >>> at >>> com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) >>> >>> >>> The method getBackend contains the following: >>> >>> private static Backend getBackend() { >>> Backend hostBackend = >>> Graal.getRequiredCapability(RuntimeProvider.class).getHostBackend(); >>> return hostBackend; >>> } >>> >>> >>> Any idea? >> Upgrade to the latest rev (at a minimum) rev 74123ce7599b >> >> Mick >> >> > > > The University of Edinburgh is a charitable body, registered in > Scotland, with registration number SC005336. From mick.jordan at oracle.com Wed Aug 6 17:20:44 2014 From: mick.jordan at oracle.com (Mick Jordan) Date: Wed, 06 Aug 2014 10:20:44 -0700 Subject: Eclipse and GraalVM: "The VM does not support the Graal API" In-Reply-To: <1407345343.5781.9.camel@gofio> References: <1407345343.5781.9.camel@gofio> Message-ID: <53E263EC.9060207@oracle.com> On 8/6/14, 10:15 AM, Juan Jose Fumero wrote: > Hi everybody, > I am working with my OpenCL branch and this version of graal [1]. > > If I execute my programs from the command line: > > $ ./mx.sh vm \ > -Xmx6g \ > -Xbootclasspath/p:graal.jar \ > -XX:-BootstrapGraal \ > -cp @com.edinburgh.parallel.functional \ > com.edinburgh.parallel.functional.benchmarks.Saxpy > > Everything works, but I execute the program in Eclipse, I get the > following error. The same error with UnitTest. > > java.lang.UnsupportedOperationException: The VM does not support the > Graal API. > Currently used Java home directory > is /home/juanjo/phd/graaljdk8ocl/jdk1.8.0_11/product/jre. > Currently used VM configuration is: OpenJDK 64-Bit Graal VM > at > com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) > at > com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) > > > The method getBackend contains the following: > > private static Backend getBackend() { > Backend hostBackend = > Graal.getRequiredCapability(RuntimeProvider.class).getHostBackend(); > return hostBackend; > } > > > Any idea? Upgrade to the latest rev (at a minimum) rev 74123ce7599b Mick From juan.fumero at ed.ac.uk Thu Aug 7 08:24:58 2014 From: juan.fumero at ed.ac.uk (Juan Jose Fumero) Date: Thu, 07 Aug 2014 09:24:58 +0100 Subject: Eclipse and GraalVM: "The VM does not support the Graal API" In-Reply-To: References: <1407345343.5781.9.camel@gofio> <53E263EC.9060207@oracle.com> <1407346752.5781.13.camel@gofio> Message-ID: <1407399898.5781.14.camel@gofio> Ok, thanks Doug. This solved my problem. Cheers Juanjo On Wed, 2014-08-06 at 20:35 +0200, Doug Simon wrote: > As of http://hg.openjdk.java.net/graal/graal/rev/c9284d733aa1, all classes in graal.jar (and graal-truffle.jar) are now (by default) isolated from application classes. This is part of efforts to secure Graal. > > To revert to the old behavior, specify -XX:-UseGraalClassLoader on the command. > > -Doug > > On Aug 6, 2014, at 7:39 PM, Juan Jose Fumero wrote: > > > If I upgrade to the lastest version I get the same error, but in the > > terminal. > > > > java.lang.UnsupportedOperationException: The VM does not support the > > Graal API. > > Currently used Java home directory > > is /tmp/graalWed-Aug--6/jdk1.8.0_11/product/jre. > > Currently used VM configuration is: OpenJDK 64-Bit Graal VM > > at > > com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) > > at > > com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) > > at > > com.edinburgh.parallel.opencl.functional.MapToGraal.getCompiledLambda(MapToGraal.java:96) > > at > > com.edinburgh.parallel.opencl.functional.MapToGraal.createKernel(MapToGraal.java:166) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:483) > > at > > com.edinburgh.parallel.functional.ComposablePatternMap.patternApplyOcl(ComposablePatternMap.java:309) > > > > > > What could it be? > > > > > > Juanjo > > > > > > On Wed, 2014-08-06 at 10:20 -0700, Mick Jordan wrote: > > > >> On 8/6/14, 10:15 AM, Juan Jose Fumero wrote: > >>> Hi everybody, > >>> I am working with my OpenCL branch and this version of graal [1]. > >>> > >>> If I execute my programs from the command line: > >>> > >>> $ ./mx.sh vm \ > >>> -Xmx6g \ > >>> -Xbootclasspath/p:graal.jar \ > >>> -XX:-BootstrapGraal \ > >>> -cp @com.edinburgh.parallel.functional \ > >>> com.edinburgh.parallel.functional.benchmarks.Saxpy > >>> > >>> Everything works, but I execute the program in Eclipse, I get the > >>> following error. The same error with UnitTest. > >>> > >>> java.lang.UnsupportedOperationException: The VM does not support the > >>> Graal API. > >>> Currently used Java home directory > >>> is /home/juanjo/phd/graaljdk8ocl/jdk1.8.0_11/product/jre. > >>> Currently used VM configuration is: OpenJDK 64-Bit Graal VM > >>> at > >>> com.oracle.graal.api.runtime.Graal.getRequiredCapability(Graal.java:61) > >>> at > >>> com.edinburgh.parallel.opencl.functional.MapToGraal.getBackend(MapToGraal.java:48) > >>> > >>> > >>> The method getBackend contains the following: > >>> > >>> private static Backend getBackend() { > >>> Backend hostBackend = > >>> Graal.getRequiredCapability(RuntimeProvider.class).getHostBackend(); > >>> return hostBackend; > >>> } > >>> > >>> > >>> Any idea? > >> Upgrade to the latest rev (at a minimum) rev 74123ce7599b > >> > >> Mick > >> > >> > > > > > > The University of Edinburgh is a charitable body, registered in > > Scotland, with registration number SC005336. > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: not available URL: From thomas.wuerthinger at oracle.com Sun Aug 31 21:54:07 2014 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Sun, 31 Aug 2014 23:54:07 +0200 Subject: Truffle and mlvm In-Reply-To: References: Message-ID: Mark, The reasons for the various projects building language implementations on top of Truffle (Ruby, JavaScript, Python, R, Smalltalk) are very similar to the motivations behind other language projects on top of the JVM like Jython, JRuby, or your own project of implementing a Smalltalk for the JVM. One additional motivation is a strong focus on guest language interoperability [1] in addition to Java interoperability. We do not plan to invent any new languages. I believe PyPy is a successful project. We fully understand the challenges behind completeness. We will put a main focus in this respect on TruffleRuby. The vast amount of work the JRuby team has already done in this respect helps there a lot. It is accurate that Graal has an HSA and a PTX GPU backend - its relationship to Project Sumatra is however currently unclear to us. We will enable usage of these backends from Truffle languages in the future. - thomas [1] http://2014.splashcon.org/event/splash2014-ds-high-performance-language-interoperability-in-multi-language-runtimes