You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Exception in thread "main" java.lang.ArithmeticException: / by zero
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.ReduceTaskGraph.calculateAcceleratorGroupSize(ReduceTaskGraph.java:168)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.ReduceTaskGraph.obtainSizeArrayResult(ReduceTaskGraph.java:135)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.ReduceTaskGraph.scheduleWithReduction(ReduceTaskGraph.java:476)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.rewriteTaskForReduceSkeleton(TornadoTaskGraph.java:1171)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.reduceAnalysis(TornadoTaskGraph.java:1181)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.analyzeSkeletonAndRun(TornadoTaskGraph.java:1191)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.schedule(TornadoTaskGraph.java:1278)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TaskGraph.execute(TaskGraph.java:767)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.ImmutableTaskGraph.execute(ImmutableTaskGraph.java:49)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TornadoExecutionPlan$TornadoExecutor.execute(TornadoExecutionPlan.java:295)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TornadoExecutionPlan.execute(TornadoExecutionPlan.java:97)
at tornado.examples@1.0.2-dev/uk.ac.manchester.tornado.examples.rodinia.kmeanstest.TestCase.main(TestCase.java:138)
It works when Matrix2DDouble matrix is not a parameter (method parallel4). I want to make Matrix2DDouble matrix as a parameter to modify Matrix2DDouble matrix inside the parallel for loop (method parallel6), but there is an error (as shown in the describing the bug part). The reason I use Matrix2DDouble is to replace double[][].
Computing system setup (please complete the following information):
OS: Ubuntu 22.04.3 LTS
OpenCL and Driver versions: NVIDIA CUDA: OpenCL 3.0 CUDA 12.2.148 Intel OpenCL: OpenCL 3.0
If applicable, PTX and CUDA Driver versions: CUDA Compilation Tools Version: 12.2 CUDA Release Version: V12.2.140
if I want to add a constant number (method parallel5). Must I create IntArray a = new IntArray(1); a.set(0,1) and then a.get(0) to replace the constant number? Here is the exception when I run the execution of parallel5.
Exception in thread "main" uk.ac.manchester.tornado.api.exceptions.TornadoInternalError: unimplemented
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.exceptions.TornadoInternalError.unimplemented(TornadoInternalError.java:29)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.graal.compiler.TornadoSnippetReflectionProvider.forBoxed(TornadoSnippetReflectionProvider.java:43)
at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.SnippetTemplate.forBoxed(SnippetTemplate.java:1711)
at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.SnippetTemplate.bind(SnippetTemplate.java:1661)
at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.SnippetTemplate.instantiate(SnippetTemplate.java:2039)
at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.SnippetTemplate.instantiate(SnippetTemplate.java:2002)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.snippets.PTXGPUReduceSnippets$Templates.lower(PTXGPUReduceSnippets.java:1040)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.PTXLoweringProvider.lowerReduceSnippets(PTXLoweringProvider.java:380)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.PTXLoweringProvider.lower(PTXLoweringProvider.java:251)
at jdk.internal.vm.compiler/org.graalvm.compiler.nodes.spi.Lowerable.lower(Lowerable.java:40)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.process(LoweringPhase.java:665)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase$ProcessFrame.preprocess(LoweringPhase.java:553)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.processBlock(LoweringPhase.java:764)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.lower(LoweringPhase.java:297)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.run(LoweringPhase.java:271)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.run(LoweringPhase.java:113)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:434)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:322)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:390)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:434)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:322)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.emitFrontEnd(PTXCompiler.java:235)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.compile(PTXCompiler.java:113)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler$PTXCompilationRequest.execute(PTXCompiler.java:519)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.graal.compiler.PTXCompiler.compileSketchForDevice(PTXCompiler.java:297)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.runtime.PTXTornadoDevice.compileTask(PTXTornadoDevice.java:183)
at tornado.drivers.ptx@1.0.2-dev/uk.ac.manchester.tornado.drivers.ptx.runtime.PTXTornadoDevice.installCode(PTXTornadoDevice.java:154)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.interpreter.TornadoVMInterpreter.compileTaskFromBytecodeToBinary(TornadoVMInterpreter.java:621)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.interpreter.TornadoVMInterpreter.execute(TornadoVMInterpreter.java:325)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.interpreter.TornadoVMInterpreter.execute(TornadoVMInterpreter.java:856)
at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.TornadoVM.executeSingleThreaded(TornadoVM.java:118)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.TornadoVM.execute(TornadoVM.java:107)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.scheduleInner(TornadoTaskGraph.java:830)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.schedule(TornadoTaskGraph.java:1297)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TaskGraph.execute(TaskGraph.java:767)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.ImmutableTaskGraph.execute(ImmutableTaskGraph.java:49)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TornadoExecutionPlan$TornadoExecutor.execute(TornadoExecutionPlan.java:295)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TornadoExecutionPlan.execute(TornadoExecutionPlan.java:97)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.ReduceTaskGraph.executeExpression(ReduceTaskGraph.java:651)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.ReduceTaskGraph.scheduleWithReduction(ReduceTaskGraph.java:601)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.rewriteTaskForReduceSkeleton(TornadoTaskGraph.java:1171)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.reduceAnalysis(TornadoTaskGraph.java:1181)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.analyzeSkeletonAndRun(TornadoTaskGraph.java:1191)
at tornado.runtime@1.0.2-dev/uk.ac.manchester.tornado.runtime.tasks.TornadoTaskGraph.schedule(TornadoTaskGraph.java:1278)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TaskGraph.execute(TaskGraph.java:767)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.ImmutableTaskGraph.execute(ImmutableTaskGraph.java:49)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TornadoExecutionPlan$TornadoExecutor.execute(TornadoExecutionPlan.java:295)
at tornado.api@1.0.2-dev/uk.ac.manchester.tornado.api.TornadoExecutionPlan.execute(TornadoExecutionPlan.java:97)
at tornado.examples@1.0.2-dev/uk.ac.manchester.tornado.examples.rodinia.kmeanstest.TestCase.main(TestCase.java:124)
The text was updated successfully, but these errors were encountered:
gaoyang-li
changed the title
@Parallel and @Reduce
exceptions when using @Parallel & @Reduce
Feb 8, 2024
Describe the bug
How To Reproduce
Expected behavior
It works when
Matrix2DDouble matrix
is not a parameter (methodparallel4
). I want to makeMatrix2DDouble matrix
as a parameter to modifyMatrix2DDouble matrix
inside the parallel for loop (methodparallel6
), but there is an error (as shown in the describing the bug part). The reason I useMatrix2DDouble
is to replacedouble[][]
.Computing system setup (please complete the following information):
Additional context
if I want to add a constant number (method
parallel5
). Must I createIntArray a = new IntArray(1); a.set(0,1)
and thena.get(0)
to replace the constant number? Here is the exception when I run the execution ofparallel5
.The text was updated successfully, but these errors were encountered: