Intermediate8 min read

Reading a GIS Document

A hands-on walkthrough of a real GIS document — field by field, section by section. By the end, you'll be able to read any GIS document and understand exactly what it describes.

A real GIS document

Let's walk through a real GIS document — Lambda Labs' 1×H100 SXM5 offering. Every field explained.

{
  "$schema": "https://computespec.dev/gpu/v1/schema.json",
  "provider": "lambda-labs",
  "instance": "gpu_1x_h100_sxm5"
}

$schema points to the JSON Schema for validation. provider is a kebab-case identifier. instance is the provider's own name for this offering.

The gpu section

"gpu": {
  "model": "nvidia-h100",
  "variant": "sxm5",
  "count": 1,
  "vram_gb": 80,
  "tflops_fp16": 989.5,
  "memory_bandwidth_tbps": 3.35,
  "interconnect": "nvlink",
  "architecture": "hopper"
}
  • model — the GPU chip, kebab-case (GPU Model Names)
  • variant — the form factor: SXM5, PCIe, NVL (GPU Variants)
  • count — how many GPUs in this instance
  • vram_gb — GB of video memory per GPU (What is VRAM?)
  • tflops_fp16 — compute power at half precision (What are TFLOPS?)
  • memory_bandwidth_tbps — VRAM bandwidth in TB/s (Memory Bandwidth)
  • interconnect — how GPUs communicate: nvlink, pcie, infiniband
  • architecture — the GPU generation: hopper, ampere, ada-lovelace

The compute section

"compute": {
  "vcpus": 26,
  "ram_gb": 200,
  "storage_gb": 512,
  "storage_type": "nvme-ssd",
  "network_gbps": 25
}

This is the non-GPU infrastructure:

  • vcpus — virtual CPUs for data loading and preprocessing (What is a vCPU?)
  • ram_gb — system memory (separate from VRAM)
  • storage_gb — local disk space
  • storage_type — nvme-ssd, ssd, hdd
  • network_gbps — network bandwidth for data transfer and multi-node training

The pricing section

"pricing": {
  "currency": "USD",
  "billing_unit": "per-hour",
  "billing_granularity": "per-second",
  "on_demand": 2.49,
  "spot": null,
  "reserved_1yr": null,
  "reserved_3yr": null
}

null means the provider doesn't offer that pricing model. Lambda doesn't offer spot or reserved pricing for this instance — so those fields are null, not zero.

billing_granularity tells you the minimum billing increment. "per-second" means you pay for exactly the seconds you use, even though the billing_unit is "per-hour" (the price is quoted hourly).

The normalized section

"normalized": {
  "cost_per_gpu_hour": 2.49,
  "cost_per_tflop_hour": 0.00252,
  "vram_per_dollar": 32.13
}

These are computed, not provider-reported. The formulas are defined in the spec:

  • cost_per_gpu_hour = $2.49 ÷ 1 GPU = $2.49 (Cost Per GPU Hour)
  • cost_per_tflop_hour = $2.49 ÷ 989.5 TFLOPS = $0.00252
  • vram_per_dollar = 80 GB ÷ $2.49 = 32.13 GB/$

These metrics let you compare this Lambda H100 against any other offering — different provider, different GPU, different pricing model — on equal footing.

The meta section

"meta": {
  "last_updated": "2026-02-08T00:00:00Z",
  "source_url": "https://lambdalabs.com/service/gpu-cloud",
  "verified": true,
  "spec_version": "1.0.0"
}

Provenance matters. source_url tells you where the data came from. verified tells you if a human confirmed it. last_updated tells you how fresh it is. spec_version tells you which version of the GIS spec this document follows.

If verified is false, treat the data as approximate. Pricing changes frequently — always check the source URL for current prices.

Key takeaways
  • ·Every GIS document starts with $schema and provider/instance identifiers
  • ·The gpu section is usually the most important for ML workloads
  • ·The normalized section lets you compare any two offerings instantly
  • ·meta.verified tells you if the data was manually confirmed
  • ·null values mean the provider doesn't offer that pricing model