Is it possible to enable GPU acceleration for other Yade commands except FlowEngine command?

Asked by Nicholas Ng on 2019-07-16

Hi all,

I'm a Yade user and would like to ask a question about GPU acceleration for Yade. Previously I have asked a question before about GPU acceleration for using Yade in HPC [1].

The response I get is that GPU acceleration in Yade only work for "FlowEngine" and not other commands, so there is no such method as enable GPU entirely for Yade to run in HPC. I have also read explanation about this through [2]. However, I would like to ask whether there is any way we can enable GPU acceleration for other Yade commands, where the number of particles generated is between 40k - 80k. Currently when I run a direct shear test simulation with 40k particles (which do not incorporate FlowEngine command), it would take me around 4 hours to complete, so I was thinking is it possible to apply GPU acceleration in some sense to speed up my simulation?

I would really appreciate if someone can give me some reply on this matter.

Thank you and regards,
Nicholas Ng

[1] https://answers.launchpad.net/yade/+question/681799
[2] https://yade-dev.gitlab.io/trunk/GPUacceleration.html?highlight=gpu%20acceleration

Question information

Language:
English Edit question
Status:
Answered
For:
Yade Edit question
Assignee:
No assignee Edit question
Last query:
2019-07-16
Last reply:
2019-07-16
Jérôme Duriez (jduriez) said : #1

Hello,

I think the answer is:
yes, it's possible, modifying the source code to re-code it and insert therein GPU acceleration ;-)

(CPU) parallel simulation can more easily obtained with -j option (see --help).

Robert Caulk (rcaulk) said : #2

The magic one-liner command you seek does not exist. As Jerome's tone points out, re-coding Yade would be quite an endeavor.

In any case, MPI is much more scale-able and lucky for you there is a team of people working to implement it in Yade right now. Track the progress [1].

[1]https://gitlab.com/yade-dev/trunk/merge_requests/179

> "GPU acceleration in Yade only work for "FlowEngine" and not other commands [...] However, I would like to ask whether there is > any way we can enable GPU acceleration for other Yade commands "

I am deeply confused.

Following Jérôme's answer, you could start by 1/ acquiring expert knowledge in GPU, then 2/ learn Yade design, then 3/ implement GPU support for some of the "other yade commands", and then 4/ you'll be able to use them. That's certainly the right way to go.

When you will reach step 3 we will probably be able to answer some of your questions, before that it's difficult.

Bruno

Nicholas Ng (nngyongjie) said : #4

Hi all,

Thank you so much for the kind response.

Regards,
Nicholas Ng

Can you help with this problem?

Provide an answer of your own, or ask Nicholas Ng for more information if necessary.

To post a message you must log in.