Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Truffle] Fixing Array#[]= for Fannduch benchmark. #2709

Merged
merged 1 commit into from Mar 17, 2015

Conversation

bjfish
Copy link
Contributor

@bjfish bjfish commented Mar 16, 2015

No description provided.

@bjfish bjfish force-pushed the truffle_array_fannduch_fix branch from 5c85e33 to 987b872 Compare March 16, 2015 15:11
@bjfish bjfish force-pushed the truffle_array_fannduch_fix branch from 987b872 to 9092267 Compare March 16, 2015 15:11
chrisseaton added a commit that referenced this pull request Mar 17, 2015
[Truffle] Fixing Array#[]= for Fannduch benchmark.
@chrisseaton chrisseaton merged commit 3dafe3f into jruby:master Mar 17, 2015
@chrisseaton chrisseaton added this to the truffle-dev milestone Mar 17, 2015
@chrisseaton
Copy link
Contributor

I still don't think this fixes it. I now get this:

$ jt bench debug classic-fannkuch-redux
bash -c "JAVACMD=/Users/chrisseaton/Documents/graal/graalvm-jdk1.8.0/bin/java /Users/chrisseaton/Documents/ruby/jruby/bin/jruby -J-Xmx2G -J-d64 -J-server -J-G:+TruffleCompilationExceptionsAreFatal -X+T -I/Users/chrisseaton/Documents/ruby/bench9000/lib/bench/..  /Users/chrisseaton/Documents/ruby/bench9000/lib/bench/benchmarks/classic/fannkuch-redux.rb"
[truffle] opt done         Array#[](core):core: Array#[] <opt> <split-4-U>             |ASTSize      11/   11 |Time   904( 558+345 )ms |DirectCallNodes I    0/D    0 |GraalNodes    65/  215 |CodeSize          683 |Source core: Array#[]
[truffle] opt done         Fixnum#==(core):core: Fixnum#== <opt> <split-4-U>           |ASTSize       8/    8 |Time    51(  38+13  )ms |DirectCallNodes I    0/D    0 |GraalNodes    25/   19 |CodeSize          105 |Source core: Fixnum#==
[truffle] opt done         Fixnum#<(core):core: Fixnum#< <opt> <split-0-U>             |ASTSize       6/    6 |Time    39(  34+4   )ms |DirectCallNodes I    0/D    0 |GraalNodes    25/   19 |CodeSize          105 |Source core: Fixnum#<
[truffle] opt done         Array#[]=(core):core: Array#[]= <opt> <split-6-U>           |ASTSize      15/   15 |Time   100(  78+21  )ms |DirectCallNodes I    0/D    0 |GraalNodes    85/  258 |CodeSize          805 |Source core: Array#[]=
[truffle] opt done         Fixnum#>=(core):core: Fixnum#>= <opt> <split-0-U>           |ASTSize       6/    6 |Time    23(  17+7   )ms |DirectCallNodes I    0/D    0 |GraalNodes    33/   37 |CodeSize          192 |Source core: Fixnum#>=
[truffle] opt done         Fixnum#+(core):core: Fixnum#+ <opt> <split-1-U>             |ASTSize       7/    7 |Time    37(  27+10  )ms |DirectCallNodes I    0/D    0 |GraalNodes    24/   88 |CodeSize          314 |Source core: Fixnum#+
[truffle] opt done         Array#[](core):core: Array#[] <opt> <split-9-U>             |ASTSize      11/   11 |Time    32(  15+16  )ms |DirectCallNodes I    0/D    0 |GraalNodes    65/  219 |CodeSize          709 |Source core: Array#[]
[truffle] opt done         Array#[](core):core: Array#[] <opt> <split-10-U>            |ASTSize      11/   11 |Time    41(  22+19  )ms |DirectCallNodes I    0/D    0 |GraalNodes    65/  215 |CodeSize          683 |Source core: Array#[]
[truffle] opt done         Array#[]=(core):core: Array#[]= <opt> <split-8-U>           |ASTSize      15/   15 |Time    33(  18+15  )ms |DirectCallNodes I    0/D    0 |GraalNodes    85/  252 |CodeSize          789 |Source core: Array#[]=
[truffle] opt done         Array#[]=(core):core: Array#[]= <opt> <split-9-U>           |ASTSize      15/   15 |Time    40(  22+19  )ms |DirectCallNodes I    0/D    0 |GraalNodes    85/  258 |CodeSize          805 |Source core: Array#[]=
[truffle] opt done         Fixnum#+(core):core: Fixnum#+ <opt> <split-3-U>             |ASTSize       7/    7 |Time    17(  11+7   )ms |DirectCallNodes I    0/D    0 |GraalNodes    24/   88 |CodeSize          314 |Source core: Fixnum#+
[truffle] opt done         Fixnum#-(core):core: Fixnum#- <opt> <split-2-U>             |ASTSize       7/    7 |Time    30(  20+10  )ms |DirectCallNodes I    0/D    0 |GraalNodes    32/  101 |CodeSize          379 |Source core: Fixnum#-
[truffle] opt done         Fixnum#-(core):core: Fixnum#- <opt> <split-1-U>             |ASTSize       7/    7 |Time    23(  14+9   )ms |DirectCallNodes I    0/D    0 |GraalNodes    32/  101 |CodeSize          379 |Source core: Fixnum#-
[truffle] opt done         Array#[](core):core: Array#[] <opt> <split-1-U>             |ASTSize      11/   11 |Time    54(  40+14  )ms |DirectCallNodes I    0/D    0 |GraalNodes    65/  215 |CodeSize          683 |Source core: Array#[]
[truffle] opt done         BasicObject#!=(core):core: BasicObject#!= <opt> <split-1-U> |ASTSize      11/   19 |Time    77(  73+4   )ms |DirectCallNodes I    1/D    0 |GraalNodes    25/   19 |CodeSize          105 |Source core: BasicObject#!=
[truffle] opt done         Fixnum#==(core):core: Fixnum#== <opt> <split-2-U>           |ASTSize       8/    8 |Time    18(  15+3   )ms |DirectCallNodes I    0/D    0 |GraalNodes    25/   19 |CodeSize          105 |Source core: Fixnum#==
[thread:14] scope:
[thread:14] scope: Truffle
[thread:14] scope: Truffle.CreateGraph
[thread:14] scope: Truffle.CreateGraph.InterceptException
Exception occurred in scope: Truffle.CreateGraph.InterceptException
Context obj com.oracle.graal.nodes.util.GraphUtil$2: This code path should never be part of a compilation. []
Context obj StructuredGraph:356{Array#[]=(core):core: Array#[]= <split-2-U>, HotSpotMethod<OptimizedCallTarget.callRoot(Object[])>}
Could not connect to the IGV on 127.0.0.1:4445 : java.net.ConnectException: Connection refused
Context obj Truffle<Array#[]=(core):core:_Array#[]=_<split-2-U>()>
[truffle] opt fail         Array#[]=(core):core: Array#[]= <split-2-U>                 |Reason com.oracle.graal.nodes.util.GraphUtil$2: This code path should never be part of a compilation. []
com.oracle.graal.nodes.util.GraphUtil$2: This code path should never be part of a compilation. []
at org.jruby.truffle.nodes.RubyNode.notDesignedForCompilation(RubyNode.java:220)
at org.jruby.truffle.nodes.core.ArrayNodes$IndexSetNode.setOtherArray(ArrayNodes.java)
at org.jruby.truffle.nodes.core.ArrayNodes$IndexSetNode.setRangeArray(ArrayNodes.java:500)
at org.jruby.truffle.nodes.core.ArrayNodesFactory$IndexSetNodeFactory$IndexSetRubyArrayIntegerFixnumRangeRubyArrayUndefinedPlaceholderNode.execute(ArrayNodesFactory.java:2905)
at org.jruby.truffle.nodes.control.SequenceNode.execute(SequenceNode.java:83)
at org.jruby.truffle.nodes.methods.ExceptionTranslatingNode.execute(ExceptionTranslatingNode.java:52)
at org.jruby.truffle.nodes.RubyRootNode.execute(RubyRootNode.java:54)
at com.oracle.graal.truffle.OptimizedCallTarget.callProxy(OptimizedCallTarget.java:357)
at com.oracle.graal.truffle.OptimizedCallTarget.callRoot(OptimizedCallTarget.java:260)
Caused by: com.oracle.graal.graph.VerificationError: This code path should never be part of a compilation. []
at com.oracle.graal.truffle.PartialEvaluator.createGraph(PartialEvaluator.java:163)
at com.oracle.graal.truffle.TruffleCompilerImpl.compileMethod(TruffleCompilerImpl.java:119)
at com.oracle.graal.truffle.hotspot.HotSpotTruffleRuntime$2.run(HotSpotTruffleRuntime.java:212)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:744)
at com.oracle.graal.compiler.CompilerThread.run(CompilerThread.java:49)
classic-fannkuch-redux jruby-9000-dev-truffle-graal failed
took 5.678597s

Can you try running jt bench debug classic-fannkuch-redux again? You need bench9000 either in the JRuby directory or in its parent. When you do any work on Array#[]= you should try running fannkuch as a minimum as it is very sensitive to any changes.

@bjfish
Copy link
Contributor Author

bjfish commented Mar 17, 2015

@chrisseaton Yes, I can run this again with graal

@bjfish bjfish deleted the truffle_array_fannduch_fix branch March 17, 2015 22:05
@enebo enebo added this to the Non-Release milestone Dec 7, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants