Spaces:
Running
Running
| # Thunder/utils/human_readable.py | |
| from Thunder.utils.logger import logger | |
| _UNITS = ('', 'K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y') | |
| def humanbytes(size: int, decimal_places: int = 2) -> str: | |
| try: | |
| if not size: | |
| return "0 B" | |
| n = 0 | |
| while size >= 1024 and n < len(_UNITS) - 1: | |
| size /= 1024 | |
| n += 1 | |
| return f"{round(size, decimal_places)} {_UNITS[n]}B" | |
| except Exception as e: | |
| logger.error(f"Error in humanbytes for size {size}: {e}", exc_info=True) | |
| return "N/A" | |