This is a collaborative space. In order to contribute, send an email to maximilien.chaumon@icm-institute.org
On any page, type the letter L on your keyboard to add a "Label" to the page, which will make search easier.
How to run an App on Brainlife
Once your App is registered on Brainlife, the next step is to run it on Brainlife. As specified in How to register an App on Brainlife, at first the App is private (i.e. linked to a private project, only members of this project can view and execute this App).
The steps to run an App are presented more precisely in Brainlife documentation: data processing and processes.
Run the App
There are two ways to run an App depending on if you run only one App or if you run small pipelines (e.g. a series of Apps):
If you want to run only one App:
go directly to the App and then execute it by clicking on “Execute”
BL creates a new process in the selected project, stages all of the input files you selected, and submits your App in a single step
If you want to run a small pipeline:
go to the page of the project linked to the App and then go the tab “Processes”
A Process is where you can submit one or a group of Apps that can share input/output datasets.
create a new process
stage any dataset from our Archive to your process (each process can only process data that is either staged or generated by other Apps)
select the App you want to run
click submit
For an App to run, you need to have resources. Ask Soichi to assign you some resources or register your own resource. See How to register a resource on Brainlife.
Results of the App
Once resources have been assigned to your App, you can run it. Your task will go through different statuses:
Requested: the task waits to be assigned to a resource (if there are a lot of tasks running on Brainlife at the same time, it may take several minutes)
Running: once a resource is free, your task will enter a queue for the resource and then start Running
Finished: the task has been completed, we can see the outputs files
Failed: an error occurred, see the
error.log
in Output for details
If you have created a product.json
, messages will be displayed directly in the Brainlife UI. For instance in the screenshot below, the success message “MaxFilter was applied successfully” was displayed (see product.json).
No need to catch errors in the product.json
, errors will be displayed anyway (see screenshot below).
See also output.log
for details displayed when the App was running.
Process several subjects in a raw
When you run an App by executing it directly (see 1.) or via the “Processes” tab (see 2.), you can submit only one subject at a time. This is great at first, when you are developing and testing your App, but once you find the optimal set of Apps, you would probably want to run it across many subjects and submitting them one by one is simply not a good option. So BL allows you to setup a series of submission rules called “pipeline rules” (see BL documentation).
Archive
Archive is where the data is stored. It is possible to upload your own data or import existing data from the Dataset page on Brainlife (see How to upload data on Brainlife)
Before actually running your App, the data must be staged out of archive and shipped to various computing ressources. Once this step is completed, your App can run on this data.
By default, any data generated by the App will not be archived back unless you manually request it.