Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Behind the scenes

Authors
Affiliations
Cornell University
National Center for Supercomputing Applications
University of Illinois at Urbana-Champaign

What does SIVACOR do to ensure that the resulting replication package is trusted?

SIVACOR implements TRACE

SIVACOR is an example of a TRACE-compliant system. The resulting package

Example Log of a SIVACOR Submission

A summary of those activies shows up on the runtime view of the SIVACOR system:

SIVACOR runtime view

Preparing the system

The computer system is configured to run the user’s code. A compute node is requested.

Unpacking the uploaded ZIP file

At this point, the uploaded archive is unpacked.

First snapshot

An arrangement captures checksums, time stamps, and file path of all files in the workspace. This is the first one: it should correspond exactly to the unpacked archive.

Setting up the software, and running the code.

The various software components, as defined by the user on Step 2, are downloaded (pulled), here Stata. The user’s script is then run.

Recording the state after running code

The arrangement after running the user’s code is recorded, capturing any changes that occurred. The run of the user’s code is a performance, and is separately recorded.

Repeats for subsequent runs

When there are multiple steps to a workflow, this repeats for each step:

In this example, there were two steps, which are also displayed for the user at the end of the process:

Information on steps

Cleaning up

Since every job can also remove files, via the .sivacorignore mechanism, the last step is another arrangement, capturing the final state of the workspace.

Wrapping the package: signing

To ensure the integrity and authenticity of the replication package, it is signed:

Different TRACE implementations can use different signing mechanisms. SIVACOR uses PGP, the key can be found on the Signing key page.

Returning the package to the user

The finalized package is made available to the user again

which then appears to the user as:

Completed run