configure_mlx.sh 975 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/bin/bash
  2. # Get the total memory in MB
  3. TOTAL_MEM_MB=$(($(sysctl -n hw.memsize) / 1024 / 1024))
  4. # Calculate 80% and TOTAL_MEM_GB-5GB in MB
  5. EIGHTY_PERCENT=$(($TOTAL_MEM_MB * 80 / 100))
  6. MINUS_5GB=$((($TOTAL_MEM_MB - 5120)))
  7. # Calculate 70% and TOTAL_MEM_GB-8GB in MB
  8. SEVENTY_PERCENT=$(($TOTAL_MEM_MB * 70 / 100))
  9. MINUS_8GB=$((($TOTAL_MEM_MB - 8192)))
  10. # Set WIRED_LIMIT_MB to higher value
  11. if [ $EIGHTY_PERCENT -gt $MINUS_5GB ]; then
  12. WIRED_LIMIT_MB=$EIGHTY_PERCENT
  13. else
  14. WIRED_LIMIT_MB=$MINUS_5GB
  15. fi
  16. # Set WIRED_LWM_MB to higher value
  17. if [ $SEVENTY_PERCENT -gt $MINUS_8GB ]; then
  18. WIRED_LWM_MB=$SEVENTY_PERCENT
  19. else
  20. WIRED_LWM_MB=$MINUS_8GB
  21. fi
  22. # Display the calculated values
  23. echo "Total memory: $TOTAL_MEM_MB MB"
  24. echo "Maximum limit (iogpu.wired_limit_mb): $WIRED_LIMIT_MB MB"
  25. echo "Lower bound (iogpu.wired_lwm_mb): $WIRED_LWM_MB MB"
  26. # Apply the values with sysctl
  27. sudo sysctl -w iogpu.wired_limit_mb=$WIRED_LIMIT_MB
  28. sudo sysctl -w iogpu.wired_lwm_mb=$WIRED_LWM_MB