Development environment
artifacts
Worker process
KCoral: experiment and resource boundaries
A self-contained program describes the experiment. KCoral separates worker files and process state and coordinates GPU access. Select a component to inspect its design; the selected box is highlighted.
Experiment program: explicit dependencies
Upload, function lookup, execution, and return are the core operations. A program supplies its code and inputs relative to installed software, without relying on objects left by a previous experiment. Upload caching reduces transfers, not these dependency requirements.
Private workspace: isolated files
With filesystem isolation enabled, a worker has private writable storage and read-only runtime dependencies. Temporary experiment files are cleaned up; outputs to retain are explicit return artifacts.
Fresh process state: independent experiments
By default, KCoral replaces the worker after each program. The next experiment starts with a fresh Python process and CUDA context, separately from filesystem cleanup.
GPU coordination: exclusive access
A lease gives a worker exclusive access to a managed GPU. Cooperating workers take turns and finish their GPU work before releasing the device. Explicitly CPU-only functions can run without holding the lease.
GPU: access through KCoral
The GPUs are visible only to the KCoral server, which manages access to them. The development environment has no direct GPU access; it uses KCoral for correctness checks, benchmarks, and profiling.
Tool adapters: bridge to GPU diagnostics
The adapters package inputs and configure Python, IKET, NCU, or Compute Sanitizer in the remote environment. They expose tool output and status and retrieve selected profiling or diagnostic artifacts.