s2io.txt 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. S2IO Technologies XFrame 10 Gig adapter.
  2. -------------------------------------------
  3. I. Module loadable parameters.
  4. When loaded as a module, the driver provides a host of Module loadable
  5. parameters, so the device can be tuned as per the users needs.
  6. A list of the Module params is given below.
  7. (i) ring_num: This can be used to program the number of
  8. receive rings used in the driver.
  9. (ii) ring_len: This defines the number of descriptors each ring
  10. can have. There can be a maximum of 8 rings.
  11. (iii) frame_len: This is an array of size 8. Using this we can
  12. set the maximum size of the received frame that can
  13. be steered into the corrsponding receive ring.
  14. (iv) fifo_num: This defines the number of Tx FIFOs thats used in
  15. the driver.
  16. (v) fifo_len: Each element defines the number of
  17. Tx descriptors that can be associated with each
  18. corresponding FIFO. There are a maximum of 8 FIFOs.
  19. (vi) tx_prio: This is a bool, if module is loaded with a non-zero
  20. value for tx_prio multi FIFO scheme is activated.
  21. (vii) rx_prio: This is a bool, if module is loaded with a non-zero
  22. value for tx_prio multi RING scheme is activated.
  23. (viii) latency_timer: The value given against this param will be
  24. loaded into the latency timer register in PCI Config
  25. space, else the register is left with its reset value.
  26. II. Performance tuning.
  27. By changing a few sysctl parameters.
  28. Copy the following lines into a file and run the following command,
  29. "sysctl -p <file_name>"
  30. ### IPV4 specific settings
  31. net.ipv4.tcp_timestamps = 0 # turns TCP timestamp support off, default 1, reduces CPU use
  32. net.ipv4.tcp_sack = 0 # turn SACK support off, default on
  33. # on systems with a VERY fast bus -> memory interface this is the big gainer
  34. net.ipv4.tcp_rmem = 10000000 10000000 10000000 # sets min/default/max TCP read buffer, default 4096 87380 174760
  35. net.ipv4.tcp_wmem = 10000000 10000000 10000000 # sets min/pressure/max TCP write buffer, default 4096 16384 131072
  36. net.ipv4.tcp_mem = 10000000 10000000 10000000 # sets min/pressure/max TCP buffer space, default 31744 32256 32768
  37. ### CORE settings (mostly for socket and UDP effect)
  38. net.core.rmem_max = 524287 # maximum receive socket buffer size, default 131071
  39. net.core.wmem_max = 524287 # maximum send socket buffer size, default 131071
  40. net.core.rmem_default = 524287 # default receive socket buffer size, default 65535
  41. net.core.wmem_default = 524287 # default send socket buffer size, default 65535
  42. net.core.optmem_max = 524287 # maximum amount of option memory buffers, default 10240
  43. net.core.netdev_max_backlog = 300000 # number of unprocessed input packets before kernel starts dropping them, default 300
  44. ---End of performance tuning file---