limits.py 740 B

1234567891011121314151617
  1. from hivemind.utils.logging import get_logger
  2. logger = get_logger(__name__)
  3. def increase_file_limit(new_soft=2**15, new_hard=2**15):
  4. """Increase the maximum number of open files. On Linux, this allows spawning more processes/threads."""
  5. try:
  6. import resource # local import to avoid ImportError for Windows users
  7. soft, hard = resource.getrlimit(resource.RLIMIT_NOFILE)
  8. new_soft = max(soft, new_soft)
  9. new_hard = max(hard, new_hard)
  10. logger.info(f"Increasing file limit: soft {soft}=>{new_soft}, hard {hard}=>{new_hard}")
  11. return resource.setrlimit(resource.RLIMIT_NOFILE, (new_soft, new_hard))
  12. except Exception as e:
  13. logger.warning(f"Failed to increase file limit: {e}")