41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
|   | # |source| this file | ||
|  | # | ||
|  | # Adjusts system settings for optimal fullnode performance | ||
|  | # | ||
|  | 
 | ||
|  | # shellcheck source=scripts/ulimit-n.sh | ||
|  | source "$(dirname "${BASH_SOURCE[0]}")"/ulimit-n.sh | ||
|  | 
 | ||
|  | # Reference: https://medium.com/@CameronSparr/increase-os-udp-buffers-to-improve-performance-51d167bb1360 | ||
|  | if [[ $(uname) = Linux ]]; then | ||
|  |   ( | ||
|  |     set -x +e | ||
|  |     # test the existence of the sysctls before trying to set them | ||
|  |     # go ahead and return true and don't exit if these calls fail | ||
|  |     sysctl net.core.rmem_max 2>/dev/null 1>/dev/null && | ||
|  |         sudo sysctl -w net.core.rmem_max=161061273 1>/dev/null 2>/dev/null | ||
|  | 
 | ||
|  |     sysctl net.core.rmem_default 2>/dev/null 1>/dev/null && | ||
|  |         sudo sysctl -w net.core.rmem_default=161061273 1>/dev/null 2>/dev/null | ||
|  | 
 | ||
|  |     sysctl net.core.wmem_max 2>/dev/null 1>/dev/null && | ||
|  |         sudo sysctl -w net.core.wmem_max=161061273 1>/dev/null 2>/dev/null | ||
|  | 
 | ||
|  |     sysctl net.core.wmem_default 2>/dev/null 1>/dev/null && | ||
|  |         sudo sysctl -w net.core.wmem_default=161061273 1>/dev/null 2>/dev/null | ||
|  |   ) || true | ||
|  | fi | ||
|  | 
 | ||
|  | if [[ $(uname) = Darwin ]]; then | ||
|  |   ( | ||
|  |     if [[ $(sysctl net.inet.udp.maxdgram | cut -d\  -f2) != 65535 ]]; then | ||
|  |       echo "Adjusting maxdgram to allow for large UDP packets, see BLOB_SIZE in src/packet.rs:" | ||
|  |       set -x | ||
|  |       sudo sysctl net.inet.udp.maxdgram=65535 | ||
|  |     fi | ||
|  |   ) | ||
|  | 
 | ||
|  | fi | ||
|  | 
 | ||
|  | 
 |