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

Pardiso for clusters (cpardiso) #35

Open
ma-sadeghi opened this issue Dec 16, 2021 · 2 comments
Open

Pardiso for clusters (cpardiso) #35

ma-sadeghi opened this issue Dec 16, 2021 · 2 comments

Comments

@ma-sadeghi
Copy link

Hi,
Have you looked into supporting Pardiso for clusters (so it can be run on machines with distributed memory)?
Thanks!

@haasad
Copy link
Owner

haasad commented Dec 21, 2021

Hey, no, I haven't looked into that. I used to have access to a server with 256GB memory, which was always enough for my usage. Is this something you plan to use?

@ma-sadeghi
Copy link
Author

ma-sadeghi commented Dec 21, 2021

I'd love to use it. The issue is that at some point (depends on the memory bandwidth of the CPU), memory operations become the bottleneck. In my experience, this critical point tends to be around 10ish cores (again, it depends on the hardware, but I tested on Compute Canada resources, which are fairly modern). So, a CPU with 32 or 64 cores, for instance, give you almost the same speedup as one with 8 cores.

With clusters, on the other hand, each node gets its own memory bandwidth, and so much higher speed ups become possible. I'd love to contribute, but I have no experience with interfacing Python with C/Fortran code. MKL seems to already have a cluster version of pypardiso (see here).

If you could give me some pointers on how to start, I can take a crack at it, otherwise, I'd really appreciate it if it's something that interests you.

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