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
openmp support #227
Comments
@lukeolson Can I ask what the status of the OpenMP support is? Thanks! |
Hi Amin,
The OpenMP support is currently still in development, unfortunately. We
have some working prototypes (in particular from Luke) on adding threaded
parallelism, but they aren't ready for release yet.
Best,
Jacob
…On Thu, Nov 8, 2018 at 2:04 PM Amin Sadeghi ***@***.***> wrote:
@lukeolson <https://github.com/lukeolson> Can I ask what the status of
the OpenMP support is? Thanks!
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#227 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AEjD47Hl9exE0czWPTD89Xsevr42Qgwtks5utJxpgaJpZM4VJwxb>
.
|
I think we're getting close. It will take some testing to make sure the install is polished. |
That's pretty cool. I hadn't seen the plots yet.
…On Thu, Nov 8, 2018 at 2:35 PM Luke Olson ***@***.***> wrote:
I think we're getting close.
https://github.com/lukeolson/sparse-ops
It will take some testing to make sure the install is polished.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#227 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AEjD45yGVq7bWH1AYehMqrx3n19iUKmOks5utKOigaJpZM4VJwxb>
.
|
Hi @lukeolson, Do you think it's possible that I somehow use what you've been working so far on OpenMP support, before it's included it in official PyAMG? Maybe a sample script (some sort of hack) to leverage the ongoing work. I'm desperately in need of a fast solver as I need to do some sensitivity analysis for quite a few parameters in a relatively huge system (100 to 1000 million unknowns). I know you're probably busy, and I really appreciate your efforts. Cheers, |
A first pass is here: And in particular: This introduces an OMP SPMV: However I have a dimension mismatch in the test: That I haven't been able to track down yet. The build is fragile but it's serviceable. Sorry we haven't made any more progress at the moment. |
Quick update. The omp branch works, but the openmp build flags are somewhat hardcoded. Working on that. |
@lukeolson Thanks for getting back to me. When I install the package from source,
(Ubuntu 16.04, using Anaconda3's python, pyamg's master branch).
Edit: probably the error when building the
|
Change the line at https://github.com/pyamg/pyamg/blob/omp/setup.py#L173 to |
Thanks @isuruf, it works fine now. Another question: how do I change number of OMP threads? When I run |
should work. It's going to depend on the matrix. And this only impacts Av, Rv, and P*v in the solve phase. I also didn't doing an optimization of the |
It seems to somehow get overridden.
( |
I pushed a few fixes to
Output
output
|
Do you think the |
As a start:
https://github.com/lukeolson/sparse-ops
Steps:
-fopenmp
amg_core
for next kernelsThe text was updated successfully, but these errors were encountered: