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

Execution of empty task graph with registered objects causes cryptic assertion error #489

Open
andrii0lomakin opened this issue Jul 8, 2024 · 2 comments

Comments

@andrii0lomakin
Copy link
Contributor

Good day.
I mistakenly created two task graphs and registered objects to transfer in one graph but tasks in the other one.
Then I executed a graph with 0 amount of tasks and registered transfer objects.
As a result, I got a cryptic assertion error (only because assertions were enabled).

That does not allow for identifying such issues correctly.

@stratika
Copy link
Collaborator

hi @andrii0lomakin, thanks for the report. To understand better, did you try something similar to this?

TaskGraphgraph = new TaskGraph("s0");
graph.transferToDevice(DataTransferMode.FIRST_EXECUTION, input) 
          .transferToHost(DataTransferMode.EVERY_EXECUTION, output);

ImmutableTaskGraph immutableTaskGraph = graph.snapshot();
TornadoExecutionPlan executionPlan = new TornadoExecutionPlan(immutableTaskGraph);
executionPlan.execute();

How did you enable the assertions? And what is the exact error message you got?

@andrii0lomakin
Copy link
Contributor Author

@stratika
I have used -ea -da:org.graalvm.compiler...
You can find the reproducer there: https://github.com/babylonml/tornadovm-bugs/blob/main/src/test/kotlin/com/babylonml/EmptyTaskGraph.kt . To run the test, please specify the TornadoVM SDK location using the babylonml.tornadovm.home property.

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

No branches or pull requests

2 participants