TRIQS / triqs

a Toolbox for Research on Interacting Quantum Systems
https://triqs.github.io
GNU General Public License v3.0
135 stars 71 forks source link

TRIQS on GPU. #929

Closed sujanbharadwaj closed 7 months ago

sujanbharadwaj commented 7 months ago

Dear TRIQS Team, I would like to know whether TRIQS-cthyb supports GPU.

the-hampel commented 7 months ago

Hi @sujanbharadwaj , as of now we do not support GPUs for cthyb (or any other solver). We started to bring some GPU awareness to the base array class in triqs/NDA to allow developers to utilize GPUs. Development is in its early stages but we will continue developing features to enable GPU support in the future.

sujanbharadwaj commented 7 months ago

Dear @the-hampel Thanks for the reply. It would be very helpful if we could run TRIQS-cthyb on GPUs. I am very happy to hear that the TRIQS Community is working towards this development.

the-hampel commented 7 months ago

Since you are specifically asking about cthyb I would like to make some comments. To my knowledge GPU support has only be implemented in this paper: https://arxiv.org/abs/2010.08482 for performing the determinant updates. It is shown that this only provides some speedup in impurity problems with more than 5 orbitals, e.g. f-shells. So depending on the problem you would like solve it is not even that clear how a GPU implementation should work. This is partially why we did not pursue GPU support yet.

sujanbharadwaj commented 7 months ago

Hi @the-hampel Thanks for the information.

70akaline commented 4 months ago

Since you are specifically asking about cthyb I would like to make some comments. To my knowledge GPU support has only be implemented in this paper: https://arxiv.org/abs/2010.08482 for performing the determinant updates. It is shown that this only provides some speedup in impurity problems with more than 5 orbitals, e.g. f-shells. So depending on the problem you would like solve it is not even that clear how a GPU implementation should work. This is partially why we did not pursue GPU support yet.

Hi, Alex, have you read this paper before about accelerating (by GPU) CT-AUX? https://ieeexplore.ieee.org/abstract/document/8891643 https://www.sciencedirect.com/science/article/pii/S0010465519300086

I guess somehow, DCA++ now also has similar algorithm for CT-SEG/CT-INT: https://github.com/CompFUSE/DCA

Perhaps, those strategy could be used for matrix CT-HYB as well

Wentzell commented 4 months ago

Thank you @70akaline for bringing up these other efforts to use GPUs for impurity solver acceleration. We will consider these strategies in our development efforts.