Skip to content

[bug] Triggered an unimplemented exception from the PTXArithmeticTool class #9

Open
@stratika

Description

I tried to run TornadoVM-Ray-Tracer with the PTX backend, and I got the following trace that triggers something unimplemented:

tornadovm-ray-tracer
------------------------------------
Running TornadoVM Ray Tracer with GUI...
WARNING: Using incubator modules: jdk.incubator.vector
------------------------------------
Building World:
-> Loading Skybox Image 'Sky.jpg'...
-> Adding object to the scene...
-> Allocating object representation buffers...
------------------------------------
Setting up rendering environment...
Allocating buffers...
Setting up Tornado Task Graph...
Getting Available Tornado Devices...
-> Found: (PTX) NVIDIA RTX A2000 8GB Laptop GPU
e: uk.ac.manchester.tornado.api.exceptions.TornadoInternalError: unimplemented
uk.ac.manchester.tornado.api.exceptions.TornadoInternalError: unimplemented
	at [email protected]/uk.ac.manchester.tornado.api.exceptions.TornadoInternalError.unimplemented(TornadoInternalError.java:29)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.lir.PTXArithmeticTool.emitReinterpret(PTXArithmeticTool.java:174)
	at jdk.internal.vm.compiler/org.graalvm.compiler.nodes.calc.ReinterpretNode.generate(ReinterpretNode.java:126)
	at jdk.internal.vm.compiler/org.graalvm.compiler.nodes.spi.ArithmeticLIRLowerable.generate(ArithmeticLIRLowerable.java:33)
	at jdk.internal.vm.compiler/org.graalvm.compiler.core.gen.NodeLIRBuilder.emitNode(NodeLIRBuilder.java:510)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXNodeLIRBuilder.emitNode(PTXNodeLIRBuilder.java:335)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXNodeLIRBuilder.doRoot(PTXNodeLIRBuilder.java:319)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXNodeLIRBuilder.doBlock(PTXNodeLIRBuilder.java:287)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXLIRGenerationPhase.emitBlock(PTXLIRGenerationPhase.java:50)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXLIRGenerationPhase.run(PTXLIRGenerationPhase.java:63)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXLIRGenerationPhase.run(PTXLIRGenerationPhase.java:41)
	at jdk.internal.vm.compiler/org.graalvm.compiler.lir.phases.LIRPhase.apply(LIRPhase.java:121)
	at jdk.internal.vm.compiler/org.graalvm.compiler.lir.phases.LIRPhase.apply(LIRPhase.java:110)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.emitLIR(PTXCompiler.java:188)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.emitBackEnd(PTXCompiler.java:121)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.compile(PTXCompiler.java:111)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler$PTXCompilationRequest.execute(PTXCompiler.java:516)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.compileSketchForDevice(PTXCompiler.java:293)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.runtime.PTXTornadoDevice.compileTask(PTXTornadoDevice.java:183)
	at [email protected]/uk.ac.manchester.tornado.drivers.ptx.runtime.PTXTornadoDevice.installCode(PTXTornadoDevice.java:158)
	at [email protected]/uk.ac.manchester.tornado.runtime.interpreter.TornadoVMInterpreter.compileTaskFromBytecodeToBinary(TornadoVMInterpreter.java:660)
	at [email protected]/uk.ac.manchester.tornado.runtime.interpreter.TornadoVMInterpreter.execute(TornadoVMInterpreter.java:332)
	at [email protected]/uk.ac.manchester.tornado.runtime.interpreter.TornadoVMInterpreter.execute(TornadoVMInterpreter.java:901)
	at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at [email protected]/uk.ac.manchester.tornado.runtime.TornadoVM.executeInterpreterSingleThreaded(TornadoVM.java:125)
	at [email protected]/uk.ac.manchester.tornado.runtime.TornadoVM.execute(TornadoVM.java:112)
	at [email protected]/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.scheduleInner(TornadoTaskGraph.java:877)
	at [email protected]/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.execute(TornadoTaskGraph.java:1384)
	at [email protected]/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.execute(TornadoTaskGraph.java:1396)
	at [email protected]/uk.ac.manchester.tornado.api.TaskGraph.execute(TaskGraph.java:777)
	at [email protected]/uk.ac.manchester.tornado.api.ImmutableTaskGraph.execute(ImmutableTaskGraph.java:49)
	at [email protected]/uk.ac.manchester.tornado.api.TornadoExecutionPlan$TornadoExecutor.lambda$execute$0(TornadoExecutionPlan.java:416)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
	at [email protected]/uk.ac.manchester.tornado.api.TornadoExecutionPlan$TornadoExecutor.execute(TornadoExecutionPlan.java:416)
	at [email protected]/uk.ac.manchester.tornado.api.TornadoExecutionPlan.execute(TornadoExecutionPlan.java:117)
	at com.vinhderful.raytracer.controllers.Main.setAvailableDevices(Main.java:375)
	at com.vinhderful.raytracer.controllers.Main.initialize(Main.java:253)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at com.sun.javafx.reflect.Trampoline.invoke(MethodUtil.java:77)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at javafx.base@19/com.sun.javafx.reflect.MethodUtil.invoke(MethodUtil.java:275)
	at javafx.fxml@19/com.sun.javafx.fxml.MethodHelper.invoke(MethodHelper.java:84)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2673)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2548)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3331)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3287)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3255)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3227)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3203)
	at javafx.fxml@19/javafx.fxml.FXMLLoader.load(FXMLLoader.java:3196)
	at com.vinhderful.raytracer.controllers.Loading$1.call(Loading.java:63)
	at com.vinhderful.raytracer.controllers.Loading$1.call(Loading.java:56)
	at javafx.graphics@19/javafx.concurrent.Task$TaskCallable.call(Task.java:1426)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.lang.Thread.run(Thread.java:1583)
[Bailout] Running the sequential implementation. Enable --debug to see the reason.
Setting up operating loops...
Setting up GUI elements...
------------------------------------
Opening Application...
Exiting application...

This error seems to be there for some time (since TornadoVM v1.0.4).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions