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

let remote compute resource "push back" output files #5892

Open
ltalirz opened this issue Feb 13, 2023 · 0 comments
Open

let remote compute resource "push back" output files #5892

ltalirz opened this issue Feb 13, 2023 · 0 comments
Labels
type/feature request status undecided

Comments

@ltalirz
Copy link
Member

ltalirz commented Feb 13, 2023

Is your feature request related to a problem? Please describe

File transfer between the machine running the AiiDA daemon and the compute resource is currently handled by the AiiDA daemon via scp (which puts load on the daemon).

In cloud environments, this file transfer is best accomplished by other means, e.g. via a shared file system or object store that is mounted both locally on the VM running the AiiDA daemon and remotely on the compute resource.

A workaround to have AiiDA support this use case today is to configure your remote compute resource as the localhost, let AiiDA copy files onto the locally mounted storage, and then let a scheduler plugin interact with the scheduler of the remote compute resource.

This works as long as the files created in the "scratch folder" are transferred automatically as they are created by the simulation code.

There are, however, use cases where one wants to avoid transferring all of the files as they are created during the run of the calculation (e.g. because some of them are large and temporary, and network bandwidth to the shared storage is limited).
In such cases, you may want to run the calculation in a temporary local file system on the compute resource.
Afterwards, the remote compute resource needs to know which files should be "pushed back" to shared storage.

Describe the solution you'd like

#5636 implements a simple solution for this: by making the various copy lists available in AiiDA's job template, the scheduler plugin can make sure to write a job script that, after running the calculation, takes care of copying back to shared storage only those files that are actually needed by AiiDA to parse the calculation.

Of course, this is still a bit of a hack, but it is very lightweight and accomplishes the use case.
The only "cost" is that the job template now contains info about which output files AiiDA is interested in.

@sphuber

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/feature request status undecided
Projects
None yet
Development

No branches or pull requests

1 participant