Skip to content

Local NVMe

Local NVMe storage is directly attached to your VM, delivering the highest possible performance for workloads that benefit from physical proximity to compute.

NVMe (Non-Volatile Memory Express) is a communications interface and driver that leverages the high bandwidth of PCIe. Crafted to elevate performance, efficiency, and interoperability, NVMe is the industry standard for SSDs.

Local NVMe drives are physically attached to the host machine, providing direct access without network overhead. This architecture delivers the lowest possible latency and highest throughput for I/O-intensive workloads.

Unlike network-attached storage, Local NVMe storage is ephemeral and tied to the physical host. If the VM is stopped or the host fails, data on local NVMe drives may be lost. For persistent storage needs, consider Accelerated Block Storage (ABS).

Local NVMe is available in the following regions:

  • us-sea-1 (Seattle)
  • us-sva-1 (Silicon Valley)
  • us-chi-1 (Chicago)
  • us-wdc-1 (Washington DC)
  • eu-frk-1 (Frankfurt)
  • ap-sin-1 (Singapore)
  • ap-seo-1 (Seoul)
  • ap-tyo-1 (Tokyo)
Lowest LatencyDirect PCIe connection to the CPU eliminates network hops, delivering sub-100 microsecond latency.
Maximum ThroughputNVMe-based block storage can reach a theoretical maximum speed of 1,000,000 IOPS.
Cost-EfficiencyNirvana’s NVMe-based block storage balances speed and cost, providing a significant performance boost and up to 100x lower costs.
Flexibility and CompatibilityNVMe drives are compatible with all major operating systems, and their direct communication with the system CPU ensures rapid speeds.

Local NVMe is ideal for workloads that prioritize performance over persistence:

  • Boot Volumes: Fast startup times for VMs
  • Scratch Space: Temporary storage for data processing and computation
  • Caching Layers: High-speed cache for frequently accessed data
  • Workloads with External Persistence: Applications that replicate data to external storage or other nodes
  • Low-Latency Applications: Workloads requiring the absolute lowest possible latency
Is Local NVMe data persistent?

Yes, however, storage is tied to the physical host, so if the host fails, data on local NVMe drives may be lost. For highly available persistent storage, use Accelerated Block Storage (ABS).

When should I use Local NVMe vs ABS?

Use Local NVMe when you need the absolute lowest latency and highest throughput, and your application can tolerate data loss (e.g., caching, scratch space, or workloads with external replication).

Use ABS when you need persistent, highly available storage that survives VM restarts and host failures.

Which regions support Local NVMe?

Local NVMe is available in: us-sea-1, us-sva-1, us-chi-1, us-wdc-1, eu-frk-1, ap-sin-1, ap-seo-1, and ap-tyo-1.

How do I use Local NVMe with the Terraform Provider?

Using the Nirvana Terraform Provider, set the volume type to nvme.

For separately managed nirvana_compute_volume resources:

resource "nirvana_compute_volume" "example_compute_volume" {
name = "my-data-volume"
type = "nvme"
size = 100
vm_id = nirvana_compute_vm.id
}

For nirvana_compute_vm with nested boot_volume and data_volumes fields:

resource "nirvana_compute_vm" "vm" {
region = var.region
name = "my-vm"
os_image_name = data.nirvana_compute_vm_os_images.vm_os_images.items[0].name
ssh_key = {
public_key = var.ssh_public_key
}
cpu_config = {
vcpu = var.cpu
}
memory_config = {
size = var.memory
}
boot_volume = {
size = var.boot_disk_size
type = "nvme"
}
data_volumes = [
{
name = "my-data-volume"
size = var.data_disk_size
type = "nvme"
}
]
subnet_id = nirvana_networking_vpc.vpc.subnet.id
public_ip_enabled = true
tags = var.tags
}