The Frontier Application Programming Interface
[Frames Version]
Table of Contents
Foundation
The Frontier Platform
Frontier Basics
Jobs and Tasks
Data and Executable Elements
Task Definition
Task Status
Checkpoints
Design Considerations
Use of Java for Task Executable Code
Division of Jobs into Tasks
High Compute-to-Data Ratio
The Launch-and-Listen Paradigm
Unpredictable Task Execution
Erroneous Results
Intellectual Property Protection
The Task Runtime API
The Task Lifecycle
Frontier User Perspective
Provider Perspective
The Task Interface
Instantiation
Parameters
Running and Stopping
The Task Context
Accessing Data Elements
Posting Results and Reporting Status
Logging Checkpoints
Reporting Progress
The Client API
Remote vs. Local Mode
Job and Task Attributes
Creation of Jobs and Tasks
Jobs
Tasks
Elements
Submitting Data to the Frontier Server
Monitoring and Controlling
Run Mode
Listening to Events
Removing Tasks and Jobs
Releasing and Reestablishing
Release Behavior
Reestablishing
Running Locally
Size Considerations
Message Queue Sizes
Task Release
Job Listeners
Referenced Structures
Conclusion