HP SVA V2.0 Parallel Compositing Reference Guide

Use Sockets Optimized for Performance Rather Than Throughput
If you use a socket to communicate with the other hosts, disable nagling on the sockets to
get the best performance. Nagling is often the default behavior for a socket such that a
message is not transferred until a preset amount of data is ready to be sent, or a
predetermined timeout is reached. If your application has short packets of data, your data
is only transferred after the timeout is reached. This causes large and unnecessary delays in
the data transfer of your application.
Adding a TCP_NODELAY option to your socket gives better performance. For example,
int flag=1;
setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, (char*)&flag, sizeof(int));
HP Remote Graphics Software (RGS) Impacts Performance
If you are connected to a node using RGS and that node is using the Library to either render
or display, RGS also needs to read back pixels from the graphics card’s framebuffer. This
competes for resources with rendering and readback.
Similarly, there is a performance loss if you point the X Display of a node using the Library
to another machine over the network.
Handling the Different Networks for the Sample and HP Implementations
The sample and HP implementations name networks differently. To use sockets over the
cluster interconnect, you need to prefix the system hostname with ic-. For example, the
system interconnect for node n5 is ic-n5. The HP implementation accepts either n5 or
ic-n5 as a hostname for node n5. Thus, code written for the sample implementation will
also work with the HP implementation.
Limits in the HP Implementation
A host may contribute 0..9 framelets. This limit is quite arbitrary; however, if you think
you need more framelets, review the behavior of the multiple-frames sample. You
may decide that adding too many additional framelets comes at the expense of
performance.
The maximum value for PC_FRAME_WIDTH and PC_FRAME_HEIGHT is 65,536. That is
more than 4.2 billion pixels.
The maximum size of a framelet is 4096 x 4096. An OpenGL window has a similar limit.
1.7 Coding Tips 25