Spaces:
Sleeping
Sleeping
Fix invalid OMP_NUM_THREADS environment variable
Browse files- Check for empty, zero, or negative OMP_NUM_THREADS values
- Set to reasonable default (half of CPU count, min 1, max 8)
- Prevents 'Invalid value for environment variable' error on startup
- Ensures OpenMP libraries can initialize properly
app.py
CHANGED
|
@@ -21,6 +21,15 @@ from mosaic.gradio_app import download_and_process_models
|
|
| 21 |
from mosaic.ui import launch_gradio
|
| 22 |
|
| 23 |
if __name__ == "__main__":
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
# Enable HF transfer for faster downloads on Spaces
|
| 25 |
os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1"
|
| 26 |
|
|
|
|
| 21 |
from mosaic.ui import launch_gradio
|
| 22 |
|
| 23 |
if __name__ == "__main__":
|
| 24 |
+
# Fix OMP_NUM_THREADS environment variable if invalid
|
| 25 |
+
omp_threads = os.environ.get("OMP_NUM_THREADS", "")
|
| 26 |
+
if not omp_threads or omp_threads == "0" or (omp_threads.lstrip('-').isdigit() and int(omp_threads) <= 0):
|
| 27 |
+
# Set to a reasonable default based on CPU count
|
| 28 |
+
import multiprocessing
|
| 29 |
+
num_cpus = multiprocessing.cpu_count()
|
| 30 |
+
# Use half of available CPUs, minimum 1, maximum 8 for stability
|
| 31 |
+
os.environ["OMP_NUM_THREADS"] = str(max(1, min(8, num_cpus // 2)))
|
| 32 |
+
|
| 33 |
# Enable HF transfer for faster downloads on Spaces
|
| 34 |
os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1"
|
| 35 |
|