ltalirz / atomistic-software

Tracking citations of atomistic simulation engines
https://atomistic.software
GNU Affero General Public License v3.0
16 stars 10 forks source link

GPU/accelerator support #93

Open ltalirz opened 2 years ago

ltalirz commented 2 years ago

Comment provided by reviewer of the article

I believe, even though the authors briefly described the evolution of computation capacity over the years, thanks to advancement in hardware power, they did not sufficiently acknowledge some of the codes have also been remarkably improved in terms of computing algorithms. Nowadays, some of these codes utilize the high-level form of parallel computing that allows researcher to use advanced supercomputers. Of interest, some of these simulation engines fea- ture GPU computing, allowing researchers to study larger systems (greater number of particles) in their work with significantly reduced time, which con- sequently lowers the costs associated with the computing resources. Thanks to GPU computing, simulations of large systems of interest can be done even in workstations in research labs. Thus, I believe the authors should add a discussion the capability of GPU and parallel computing to the paper and the relevant features to the collection.

ltalirz commented 2 years ago

Thank you for the thoughtful suggestion.

As a first follow-up, I have added a sentence regarding the evolution of hardware to the introduction. Second, I agree that information on accelerator support would be a useful addition to the list (even if a binary supported/not supported label necessarily is a somewhat simplistic representation of how codes take advantage of these accelerators). Starting from the MolSSI list, I have now collected information on acceleration paradigms supported by the codes (not only GPUs but also shared- and distributed-memory CPU parallelism) and added it to the atomistic.software collection. I believe the information to already be fairly complete but have decided to hide the corresponding column by default in order not to clutter the view (it is available from the “View Columns” button and it can be used for filtering).

Todo:

ltalirz commented 2 years ago

@pedersor mentions he noticed the column when preparing this manuscript (despite it not being displayed by default).

He nevertheless suggests

I think this could be useful to display as default, especially due to the increasing popularity and availability of such resources. For non-technical users, it may even be worth having an even clearer way to denote e.g. GPU support (for example, some simple icon, like those used in the Cost and Source categories, since e.g. some users may not know what Cuda is -- and may not bother to hover over).

My thoughts: As for using symbols, it seems to me that the people who want to run the software on the GPU will probably need to know at least whether they are running on an Nvidia GPU or not, so I'm not sure whether one symbol for GPU support would be a better solution. Similarly, it seems useful to distinguish between intra-node and across-node parallelization schemes; perhaps it would be easier to come up for symbols for those than for different frameworks for GPU support (suggestions welcome ;-) ).