Running GS2 on Seaborg

The recommended way to run efficiently on seaborg is to plan your run to match the architecture of the machine. Specifically, you should try to design your run to fit on a set of N nodes with P processors each, with as balanced a load as possible. Examples appropriate for the default data layouts (lxyes) are given below.

For nonlinear runs, optimal performance is obtained if one chooses the number of nodes to be equal to the product of the number of energy grid points and the number of plasma species:

    N = negrid*nspec

Furthermore, one should choose the number of ky's to be a multiple of 16. You can use ingen to find out how many ky's you have for a given choice of ny. A good choice would be

    ny = 48

with the corresponding choice

    P = 16

where P is denoted 'tasks_per_node' on seaborg. You could also choose ny=45, P=15, and so on. You should not choose ny=45, P=16. This will run more slowly.

Linearly, the strategy should be the same, except that one does not routinely need to use large numbers of processors for a quick turnaround. A good strategy might be to choose

    N = nspec
    P = negrid

with negrid = 16. This will run optimally.