---
title: ''
description: Telegraf plugin for collecting metrics from Hugepages
url: https://docs.influxdata.com/telegraf/v1/input-plugins/hugepages/
estimated_tokens: 831
product: Telegraf Controller
version: v1
publisher: InfluxData
canonical: https://docs.influxdata.com/telegraf/v1/input-plugins/hugepages/
date: '2026-05-21T20:10:18+02:00'
lastmod: '2026-05-21T20:10:18+02:00'
---

==========

* Telegraf v1.22.0+

[Plugin source](https://github.com/influxdata/telegraf/tree/v1.39.0/plugins/inputs/hugepages/)[Download configuration](https://raw.githubusercontent.com/influxdata/telegraf/refs/tags/v1.39.0/plugins/inputs/hugepages/sample.conf)

# Hugepages Input Plugin

This plugin gathers metrics from the Linux'[Transparent Huge Pages (THP) memory management system](https://www.kernel.org/doc/html/latest/admin-guide/mm/hugetlbpage.html) that reduces
the overhead of Translation Lookaside Buffer (TLB) lookups on machines with
large amounts of memory.

**Introduced in:** Telegraf v1.22.0**Tags:** system**OS support:** linux

## Global configuration options

Plugins support additional global and plugin configuration settings for tasks
such as modifying metrics, tags, and fields, creating aliases, and configuring
plugin ordering. See [CONFIGURATION.md](/telegraf/v1/configuration/#plugins) for more details.

## Configuration

```toml
# Gathers huge pages measurements.
# This plugin ONLY supports Linux
[[inputs.hugepages]]
  ## Supported huge page types:
  ##   - "root"     - based on root huge page control directory:
  ##                  /sys/kernel/mm/hugepages
  ##   - "per_node" - based on per NUMA node directories:
  ##                  /sys/devices/system/node/node[0-9]*/hugepages
  ##   - "meminfo"  - based on /proc/meminfo file
  # types = ["root", "per_node"]
```

## Metrics

### Measurements

**The following measurements are supported by Hugepages plugin:**

* hugepages\_root (gathered from `/sys/kernel/mm/hugepages`)
  * tags:
    * size\_kb (integer, kB)

  * fields:
    * free (integer)
    * mempolicy (integer)
    * overcommit (integer)
    * reserved (integer)
    * surplus (integer)
    * total (integer)

* hugepages\_per\_node (gathered from `/sys/devices/system/node/node[0-9]*/hugepages`)
  * tags:
    * size\_kb (integer, kB)
    * node (integer)

  * fields:
    * free (integer)
    * surplus (integer)
    * total (integer)

* hugepages\_meminfo (gathered from `/proc/meminfo` file)
  * The fields `total`, `free`, `reserved`, and `surplus` are counts of pages
    of default size. Fields with suffix `_kb` are in kilobytes.
  * fields:
    * anonymous\_kb (integer, kB)
    * file\_kb (integer, kB)
    * free (integer)
    * reserved (integer)
    * shared\_kb (integer, kB)
    * size\_kb (integer, kB)
    * surplus (integer)
    * tlb\_kb (integer, kB)
    * total (integer)

## Example Output

```text
hugepages_root,host=ubuntu,size_kb=1048576 free=0i,mempolicy=8i,overcommit=0i,reserved=0i,surplus=0i,total=8i 1646258020000000000
hugepages_root,host=ubuntu,size_kb=2048 free=883i,mempolicy=2048i,overcommit=0i,reserved=0i,surplus=0i,total=2048i 1646258020000000000
hugepages_per_node,host=ubuntu,size_kb=1048576,node=0 free=0i,surplus=0i,total=4i 1646258020000000000
hugepages_per_node,host=ubuntu,size_kb=2048,node=0 free=434i,surplus=0i,total=1024i 1646258020000000000
hugepages_per_node,host=ubuntu,size_kb=1048576,node=1 free=0i,surplus=0i,total=4i 1646258020000000000
hugepages_per_node,host=ubuntu,size_kb=2048,node=1 free=449i,surplus=0i,total=1024i 1646258020000000000
hugepages_meminfo,host=ubuntu anonymous_kb=0i,file_kb=0i,free=883i,reserved=0i,shared_kb=0i,size_kb=2048i,surplus=0i,tlb_kb=12582912i,total=2048i 1646258020000000000
```
