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.