The S2A 9900 will allow queuing of 512 commands per port. When the S2A command queue is full, the S2A will report a status of task set full. If a host does not throttle, much of the S2A's time will be spent returning TSF status, as opposed to servicing i/o. This will result in other tasks timing out, being aborted, etc. If there are many active initiators on a port, the queue depth per system should be set less than 512/<number of initiators per port> ((Number of initiators connected to 9900 port) * (luns presented per port) * (queue depth per LUN)). For most configurations where valid by that rule, a value of 8 functions well.
The means to change the queue depth varies by operating system and HBA type. An example for Qlogic: The execution throttle parameter needs to be changed in the BIOS, from SANsurfer, or from SCLI - not as module parameter. To change it from the BIOS, please see here: http://download.qlogic.com/boot_code/35291/QLx23xxbiosreadme.htm But these are only examples so please verify your HBA type and it's manual for instructions on modifying the queue depth setting.
Check out these articles on how to change the queue depths on the SAN clients.
QLogic Queue Depth settings on RedHat