Can someone verify the output of vioperf on vertica system
/opt/vertica/bin/vioperf --duration=60s
The minimum required I/O is 20 MB/s read and write per physical processor core on each node, in full duplex i.e. reading and writing at this rate simultaneously, concurrently on all nodes of the cluster. The recommended I/O is 40 MB/s per physical core on each node. For example, the I/O rate for a server node with 2 hyper-threaded six-core CPUs is 240 MB/s required minimum, 480 MB/s recommended.
Using direct io (buffer size=1048576, alignment=512) for directory "/data/vertica/vabs"
test | directory | counter name | counter value | counter value (10 sec avg) | thread count | %CPU | %IO Wait | elapsed time (s)| remaing time (s)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Write | /data/vertica/vabs | MB/s | 251 | 251 | 32 | 8 | 22 | 10 | 5
Write | /data/vertica/vabs | MB/s | 249 | 243 | 32 | 5 | 21 | 15 | 0
ReWrite | /data/vertica/vabs | MB/s | 94 | 94 | 32 | 4 | 17 | 10 | 5
ReWrite | /data/vertica/vabs | MB/s | 100 | 133 | 32 | 5 | 19 | 15 | 0
Read | /data/vertica/vabs | MB/s | 305 | 305 | 32 | 9 | 21 | 10 | 5
Read | /data/vertica/vabs | MB/s | 307 | 310 | 32 | 9 | 24 | 15 | 0
SkipRead | /data/vertica/vabs | seeks/s | 15850 | 15850 | 32 | 5 | 22 | 10 | 5
SkipRead | /data/vertica/vabs | seeks/s | 19262 | 26082 | 32 | 6 | 23 | 15 | 0
The minimum required I/O is 20 MB/s read and write per physical processor core on each node, in full duplex i.e. reading and writing at this rate simultaneously, concurrently on all nodes of the cluster. The recommended I/O is 40 MB/s per physical core on each node. For example, the I/O rate for a server node with 2 hyper-threaded six-core CPUs is 240 MB/s required minimum, 480 MB/s recommended.
Using direct io (buffer size=1048576, alignment=512) for directory "/data/vertica/vabs"
test | directory | counter name | counter value | counter value (10 sec avg) | thread count | %CPU | %IO Wait | elapsed time (s)| remaing time (s)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Write | /data/vertica/vabs | MB/s | 251 | 251 | 32 | 8 | 22 | 10 | 5
Write | /data/vertica/vabs | MB/s | 249 | 243 | 32 | 5 | 21 | 15 | 0
ReWrite | /data/vertica/vabs | MB/s | 94 | 94 | 32 | 4 | 17 | 10 | 5
ReWrite | /data/vertica/vabs | MB/s | 100 | 133 | 32 | 5 | 19 | 15 | 0
Read | /data/vertica/vabs | MB/s | 305 | 305 | 32 | 9 | 21 | 10 | 5
Read | /data/vertica/vabs | MB/s | 307 | 310 | 32 | 9 | 24 | 15 | 0
SkipRead | /data/vertica/vabs | seeks/s | 15850 | 15850 | 32 | 5 | 22 | 10 | 5
SkipRead | /data/vertica/vabs | seeks/s | 19262 | 26082 | 32 | 6 | 23 | 15 | 0
0
Comments
I have also verified and as per my understanding, vertica recommends you should have 40MB/S speed per core on a server node. For example if you have 32 core machine(2 physical, and 16 core / physical), then your machine io speed should be 32X40 MB/S for optimized performance.
I hope this helps.
Anyone form Vertica Team, please correct me if my understanding is wrong.