Skip to main content
Loading

Performance tuning on Google Compute Engine

Pinning Aerospike Database on Certain vCPUs (taskset)

Aerospike is extremely fast in its in-process operations of getting and setting data items. Indeed, the CPU work done by the Operating System to deal with the TCP packet is comparable to the work done by the Aerospike database engines. To this end, it is beneficial to dedicate vCPUs (virtual CPUs) to handle just the network IRQs. One technique we have found helpful in this case is to leave some vCPUs of the virtual machine totally free. This may take away some CPU power from the application, but it helps improve the network latencies. To leave a vCPU free, use the following command to utilize vCPU (0-6) for Aerospike on an 8-core box:

sudo taskset -c 0-6 /usr/bin/asd --config-file /etc/aerospike/aerospike.conf
note

You may have to change the init script to use the taskset command.