Outdated Version

You are viewing an older version of this section. View current production version.

AVX2 Instruction Set Verification

Info

This topic does not apply to SingleStore Managed Service.

SingleStore DB can make use of AVX2 instructions on Intel and Intel-compatible processors, both for improved performance for columnstore query processing, and to enable use of certain vector functions. You can check your system to see if it is supported if you are not sure.

Verifying AVX2 Support

If you want to verify if your system supports the AVX2 instruction set, check your processor specifications from the manufacturer or run cat /proc/cpuinfo | grep avx2 to see if “avx2” (in lower case) is listed. Some VM installations, including cloud installations, may not show “avx2” in cpuinfo output but they still support AVX2. If you want to definitively check if a node on your system supports AVX2, after installing SingleStore DB on that node, you can run a utility called check_avx2 that is part of SingleStore DB.

For example, to locate it, you can do:

cd /
sudo find . -name check_avx2 -print

You may see output like:

./var/lib/memsql/master-3306-MI7abac029/lib/check_avx2
./var/lib/memsql/leaf-3308-MIae506559/lib/check_avx2
./var/lib/memsql/leaf-3307-MIddea06c6/lib/check_avx2

The unique serial numbers and port numbers in this output may differ. Run any one of these check_avx2 executables (they are all the same). For example:

/var/lib/memsql/master-3306-MI7abac029/lib/check_avx2

If it produces no output at all and does not produce an error, then the processor definitely supports AVX2. If it produces an error or otherwise fails, AVX2 is not supported.