Sun GlassFish Enterprise Server v2.1.1 Performance Tuning Guide

Tuning Operating System and TCP Settings

The following table shows the operating system tuning for Solaris 10 used when benchmarking for performance and scalability on UtraSPARC T1–based systems (64 bit systems).

Table 5–2 Tuning 64–bit Systems for Performance Benchmarking

Parameter 

Scope  

Default Value 

Tuned Value 

Comments 

rlim_fd_max

/etc/system

65536 

260000 

Process open file descriptors limit; should account for the expected load (for the associated sockets, files, pipes if any). 

hires_tick

/etc/system

 

 

sq_max_size

/etc/system

Controls streams driver queue size; setting to 0 makes it infinite so the performance runs won’t be hit by lack of buffer space. Set on clients too. Note that setting sq_max_size to 0 might not be optimal for production systems with high network traffic.

ip:ip_squeue_bind

   

 

ip:ip_squeue_fanout

   

 

ipge:ipge_taskq_disable

/etc/system

 

 

ipge:ipge_tx_ring_size

/etc/system

 

2048 

 

ipge:ipge_srv_fifo_depth

/etc/system

 

2048 

 

ipge:ipge_bcopy_thresh

/etc/system

 

384 

 

ipge:ipge_dvma_thresh

/etc/system

 

384 

 

ipge:ipge_tx_syncq

/etc/system

 

 

tcp_conn_req_max_q

ndd /dev/tcp

128 

3000 

 

tcp_conn_req_max_q0

ndd /dev/tcp

1024 

3000 

 

tcp_max_buf

ndd /dev/tcp

 

4194304 

 

tcp_cwnd_max

ndd/dev/tcp

 

2097152  

 

tcp_xmit_hiwat

ndd /dev/tcp

8129 

400000 

To increase the transmit buffer. 

tcp_recv_hiwat

ndd /dev/tcp

8129 

400000 

To increase the receive buffer. 

Note that the IPGE driver version is 1.25.25.