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

Limitation of PyRun when used with multithreaded KSolve #406

Open
dilawar opened this issue Apr 10, 2020 · 0 comments
Open

Limitation of PyRun when used with multithreaded KSolve #406

dilawar opened this issue Apr 10, 2020 · 0 comments
Assignees
Projects

Comments

@dilawar
Copy link
Contributor

dilawar commented Apr 10, 2020

One major reason behind replacing muparser with ExprTK was that muParser was not playing well with multithreaded Ksolve (probably because of how we integrated it). ExprTk worked well with multithreaded Ksolve but not with unpublished Vinu's model.

In Vinu's model, PyRun updates moose objects. Probably because of this, or probably due to python's finicky nature with multithreading, exprtk gives correct results up to the first few iterations, and then all values go to 0.

With new python bindings, the situation improved a bit but I run into GSL integration error. With BOOST solvers, I didn't run into integration error but values became 0 after some iterations.

I'll have another look at it, in detail once bindings are in beta. The PyRun interface is still the same as hand-crafted by Subha.

Until this issue is resolved, warn users if they try to update moose object's from the PyRun process when multithreaded Ksolve is used.

@dilawar dilawar self-assigned this Apr 10, 2020
@dilawar dilawar added this to In Progress in moose-core Apr 10, 2020
@dilawar dilawar moved this from In Progress to TODO in moose-core Apr 10, 2020
@dilawar dilawar changed the title Multithreaded KSolve + ExprTk + PyRun Limitation of PyRun when used with multithreaded KSolve Sep 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
moose-core
  
TODO
Development

No branches or pull requests

1 participant