Clients

Client Overhead

The Gremlin agent that runs on the client requires very little overhead. Here are the needs in a couple of sample use cases.

Note: For information about network bandwidth usage by the Daemon, refer to Bandwidth section.

Linux single-task host

The agent has very low performance overhead on a classic, single-task host. Our benchmarks for this type of host are based on an Amazon EC2 t2.micro:

  • vCPUs: 1 vCPUs
  • Memory: 1 GiB
  • Operating System: Ubuntu 16.04 LTS (Debian agent instructions found here)
MetricAgent Idle
CPU< 0.10%
Resident Memory~17 MiB
Storage on disk~35 MiB

Linux Host DIY

May require elevated privileges

MetricSource
CPUtop
Resident Memorypmap <pid>
Storage on diskdu -sh */* \| grep gremlin or during installation

Linux Docker host

The agent has very low performance overhead on a host running Docker, with exact usage depending on the number of Docker containers your machine hosts, and whether those processes are long- or short-lived. Our benchmarks for this type of host are based on an Amazon EC2 t2.micro:

  • vCPUs: 1 vCPUs
  • Memory: 1 GiB
  • Operating system: Ubuntu 16.04 LTS
  • Docker Client Version: 19.03.5-ce
  • Docker Engine Version: 19.03.5-ce
  • Number of containers: 1 container

For this type of Docker host, typical usage is

MetricAgent Idle
CPU< 0.07%
Resident Memory~752 KiB
Container Size~9 KiB
Image Size~616 MiB

Docker DIY

May require elevated privileges

MetricSource
CPUdocker stats
Resident Memorydocker stats
Container Sizedocker system df -v
Image Sizedocker system df -v

Windows single-task host

The agent has very low performance overhead on a classic, single-task host. Our benchmarks for this type of host are based on an Amazon EC2 t2.micro:

  • vCPUs: 1 vCPUs
  • Memory: 1 GiB
  • Operating System: Windows Server 2019 Datacenter (Windows agent instructions found here)
MetricAgent Idle
CPU< 0.10%
Resident Memory~23 MiB
Storage on disk~21 MiB

Windows host DIY

The typeperf commands in the table below output each second. The -si option can be used to average over longer time periods. For example, -si 29:00 averages over 29 minutes.

Multiple typeperf counters can be included; just seperate them with a space.

MetricSource
CPUtypeperf "\Process(gremlind)\% Processor Time"
Resident Memorytypeperf "\Process(gremlind)\Working Set Peak"
Storage on diskdir "C:\Program Files\Gremlin" /s