Checklist

Note

The document will be updated regularly to reflect the latest requirements. Such and update will be accompanied by an increment in the version number and a note on the date of the last update.

Version: 1
Last Updated: 2024-08-26

The following checklist is intended to help you ensure that you have completed all the necessary steps required as part of the JUREAP program. Please ensure that you have completed all the sub-steps before proceeding to the next step. Contact us if you have any questions or need assistance.

  1. Setup and Preparation

  2. exacb Integration

  3. SPEP Meeting

  4. JEDI Performance

  5. Large-scale scaling

  6. Documentation

  7. Certificate

Step 0 : Setup and Preparation

  • Create an account on JuDoor only if you do not have one already.

  • Log in to the gitlab instance at https://gitlab.jsc.fz-juelich.de/users/sign_in with your account at least once.

  • Decide an acronym for the application. This will be the name of the GitLab repo that will be created for you.

    • The acronym should somehow describe the application and code.

    • The acronym should have a chance of being sufficiently unique.

    • The acronym will be kind of public, so do not expose any sensitive information.

Send us by email the acronym and all usernames who should have access to the repository.

  • We will create a GitLab repository for you and add the provided usernames to the repository.

  • We will send you instructions in a separate mail on how to get a jureapXX compute time project.

    Note

    The jureap computing time project is necessary for the SPEP phase, even if you have other compute time projects at JSC.

Step 1: exacb Integration

The first step of the SPEP is to integrate the application into to the exacb ([https://go.fzj.de/exacb](https://go.fzj.de/exacb)) framework.

At this stage, it is not crucial for the application to be in its best state. Instead, the focus on this stage is on the technical integration of the application in relation to the compilation and execution of the application through the CI/CD pipeline.

  • Prepare your test case on a JSC system (preferably on Juwels Booster). Make sure that the standalone case runs successfully on the JSC system, before attempting to integrate it with JUBE and subsequently exacb.

  • Implement the exacb integration for your application by following instructions on the documentation website

    • It is enough to show that the following variants run successfully on either a JSC system (preferably Juwels Booster).

  • Evaluate that your test runs successfully as a part of exacb.

If you encounter any issues during the integration, please contact us at any time. It is also possible that there is a bug in exacb or that your ideal workflows are currently supported by exacb, and we will work with you to find a solution for your case.

Ensure that

  • Your application is integrated with exacb, that is, triggering a CI pipeline on the GitLab repository will run the application successfully on Juwels Booster for the following test cases

  • Ensure that the CI job reports the CSV file correctly as specified here.

Send us an email when you have finished the integration.

Step 2 : SPEP Meeting

The second step is a SPEP meeting. We will schedule a 30-minute Zoom call to discuss your implementation, application and the next steps.

If everything in this step is completed, we will give you access to JEDI, the JUPITER Exascale Development Instrument. JEDI has the same hardware as JUPITER and will be used for further testing and porting in the early phases.

Step 3 : JEDI Performance

The third step of the SPEP is to test the application on JEDI. The goal of this step is to ensure that the application runs on JEDI and to identify any potential issues that may arise when running the application on JUPITER.

The step consists of two sub-steps:

Code runs on JEDI

The objective of this part is to ensure that the application runs on JEDI in a correct manner. As a guideline, you can follow the following steps:

  • Ensure that the application can be compiled and executed on JEDI.

  • Ensure that the JUBE files work correctly on JEDI.

  • Add the following variants of exacb to the CI pipeline and ensure that they run correctly on JEDI. Instructions

  • Ensure that the CI job reports the CSV file correctly as specified here.

Record and report data through the exacb framework

Once you are fairly confident in your application, you can start recording the benchmark data, and use the recorded benchmark data to evaluate the performance of your application on JEDI. The details of which benchmark data to record and how to report the data are provided in the corresponding issue.

In order to record the data, you should run the relevant exacb CI/CD pipelines with the record option set to true. This will record the benchmark data in your project’s gitlab repository as specified in the reference.

Once the data is recorded, then you can use the jureap/jedi CI/CD component to generate the report.

An example of the above steps can be found in How-To Guide: JEDI Evaluation Run.

Step 4: Large-scale scaling

The large scale scaling works in a similar way to the JEDI performance step. One must run their experiments with data recording enabled, and then use the CI/CD component to generate the report.

The details of which benchmark data to record and how to report the data are provided in the corresponding issue.

In order to record the data, you should run the relevant exacb CI/CD pipelines with the record option set to true. This will record the benchmark data in your project’s gitlab repository as specified in the reference.

Once the data is recorded, then you can use the jureap/scaling CI/CD component to generate the report.

Step 5: Documentation

Instructions for the documentation will be provided soon.

Step 6: Certificate

Instructions for the certificate will be provided soon.