app.nzapp
AppsProjectsReposPullsChatIntegrationsGatewayModelsEvalsToolsDatasetsMCPDeploysPricingBlogDocsAssistantsCharactersArtMusic
Sign inStart building
Agent stack
Cloud coding agentAgents SDKIntegrationsBrowser agentMonitors & auto-agentsSchedulersAgent skillsMCP serversDeep research
Models & API
AI GatewayModel catalogModel evalsModel spacesPlaygroundText to imageImage to 3DText to 3DMusic & SFXAudio editorMedia optimizerAI art & libraryChatAPI referenceSchemaBecome a provider
Compute & hosting
DeploysAddonsPostgres hostinggobed vector searchSite hostingAnalyticsCog GPU hostingRL trainingBuilds & CIWorkersTask queuesDomainsGit hosting
Tools
AI toolsDrawDiffusion canvasLive DrawWriteSheetsArtifactsVideo studioNotebooksDatasets
Learn
DocsBlogEval guidesPrompt libraryCLIAlternativesPapersAI charactersArt gallerySecurityConsulting
Company
PricingEnterpriseSettingsBillingStatusInvestorsCreate accountTerms of ServicePrivacy Policy
app.nzapp.nz

AI agent cloud for coding, deploys, model routing, and research. Built for teams shipping software.

Built in New Zealand by App AI NZ.

Social
X / TwitterGitHubYouTube
The app.nz network
GpuBrainPapersReading TimemojojojoNetwrckText-Generator.ioCodex InfinityOpenPathsCuteDSLAI Art GeneratorAIArt-Generator.artSiteSimSimplexGenDictatorFlowWebFiddleRing.nzChatGibidyBitBankExperimentFlowEvangelerHires.nzHow.nzV5 GamesAddicting Word GamesBig Multiplayer ChessWord SmashingreWord GameMultiplication Master
© 2026 App AI NZ Ltd. All rights reserved.All systems normalTermsPrivacy
Blog
July 7, 2026·8 min read·app.nz

How app.nz runs GPUs on demand

Inside the GPU lifecycle: hardware catalogues with VRAM and compute capability, Cog cold starts, local GPU headroom, RunPod pods, schema introspection, metering, and idle reaping.

Listen to this article

On-device voice

Uses the voice built into your browser; no article text leaves this page.

Audio narration is not supported by this browser.

The app.nz GPU stack is built around one rule: a model that is not serving traffic should not be burning GPU money.

That sounds obvious, but it forces the control plane to own the whole lifecycle: choose hardware, create the machine, pull the image, wait until the model is genuinely ready, proxy the request, meter the run, and tear the machine down when it goes idle.

Hardware is a catalogue, not a string

The GPU catalogue lives in the server as structured machine types: provider, vCPU, RAM, GPU name, VRAM, CUDA compute capability, and hourly price. Compute capability matters. A container built for one CUDA/Torch target can fail on another card even when VRAM looks sufficient.

That is why the catalogue carries entries like:

app.nz idGPUVRAMCompute capability
gpu-rtx3090RTX 309024 GB8.6
gpu-l40sL40S48 GB8.9
gpu-a100A100 80GB80 GB8.0
gpu-h100H100 80GB80 GB9.0

For cogs and Comfy deployments, declared VRAM becomes a placement input. cheapestGPUForVRAM picks the smallest priced card that fits the workload.

The Cog lifecycle

A Cog model starts as an idle DB row:

cog_models.status = idle
instance_id = ''
endpoint = ''

The first prediction calls ensureCogWarm. That path is deliberately single-flighted: if ten requests arrive at the same idle model, app.nz provisions one machine, not ten. The warm path then:

  1. inserts a cloud_instances row,
  2. chooses local Docker when allowed and there is live VRAM headroom,
  3. otherwise creates a RunPod pod with the configured GPU,
  4. attaches registry auth for private or gated images,
  5. exposes port 5000 over the provider HTTP proxy,
  6. polls /health-check, /healthz, or /openapi.json,
  7. introspects the schema if the model did not provide one,
  8. marks the model ready and proxies POST /predictions.

The readiness poll is important. A pod being "running" is not the same as a model being ready. Python may still be importing torch, CUDA may still be initializing, weights may still be loading, and the model may still be compiling kernels. app.nz keeps the model in starting until the container says it can serve.

Local headroom first, cloud overflow second

There is an opportunistic local path for low-volume GPU workloads. If APPNZ_LOCAL_DOCKER_COGS=1), the model's hardware policy matches, and nvidia-smi` reports enough free VRAM plus reserve, app.nz can run the Cog image on the prod host's local Docker runtime.

That path mounts:

  • a per-instance workspace at /workspace,
  • an image-keyed model cache at /models,
  • NVIDIA_DRIVER_CAPABILITIES=all,
  • a dynamic localhost port mapped to the Cog HTTP port.

If local launch fails, the control plane records the failure and falls back to the cloud GPU. Local capacity is an accelerator, not a dependency.

Scale to zero is two mechanisms

Dedicated pods scale down through the Cog idle reaper. Each successful prediction stamps last_used_at and arms a timer. If nothing touches the model within its idle window, default 120 seconds, sleepCogModel terminates the cloud instance and clears the endpoint.

Serverless workloads use RunPod serverless endpoints. Those are created with workersMin=0, bounded workersMax, queue-delay scaling, and an idle timeout. They cost nothing while idle, and app.nz can retire the endpoint when a deployment changes image.

What users see

The product surface is simple:

  • register an image and hardware,
  • optionally declare inputs and output kind,
  • click predict,
  • get a typed UI and a stored prediction record.

The control plane handles the unpleasant parts: registry credentials, provider ids, proxy URLs, health checks, per-request timing, cost calculation, and teardown. That is the real feature. GPUs on demand are not just GPU rental; they are lifecycle ownership.

Build what you just read

Ship agents, models, and apps on one cloud.

Start with free credits, then use the same platform from the web app, CLI, desktop app, or MCP.

Start building freeRead the docs

Keep reading

Interactive world models on app.nz: GPU sessions, ABot-World, and ARDY

World models need a GPU that stays up and talks over a socket. How the new session-cog protocol works, the two open-source world models you can drive today, and the harness that keeps every cog README honest with real runs.

RunPod serverless endpoints under the hood

How app.nz creates scale-to-zero GPU endpoints with bounded workers, queue-delay scaling, endpoint reuse, job polling, image updates, and explicit failure handling.

Making Cog containers self-describing

How app.nz warms Cog containers, waits for real readiness, reads health and OpenAPI endpoints, and turns model schemas into typed prediction forms.