Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Wat zijn de omgevingsvariabelen die worden gebruikt om JAX -geheugentoewijzing te configureren


Wat zijn de omgevingsvariabelen die worden gebruikt om JAX -geheugentoewijzing te configureren


Om JAX -geheugenallocatie te configureren, kunnen verschillende omgevingsvariabelen worden gebruikt:

1. `Xla_python_client_preallocate`: Deze variabele bepaalt of JAX GPU -geheugen preaLlocates. Het instellen op `false 'schakelt preallocatie uit, waardoor JAX geheugen indien nodig toewijst. Dit kan echter leiden tot geheugenfragmentatie en werkt mogelijk niet altijd zoals verwacht in sommige versies van JAX [1] [3] [5].

2. `XLA_PYTHON_CLIENT_MEM_FRACTIE`: Deze variabele geeft het percentage van het totale GPU -geheugen aan dat JAX moet doorstaan. Als u het bijvoorbeeld instelt op `.10` zal 10% van het GPU -geheugen porloceren. Dit kan helpen fouten buiten de geheugen te voorkomen, maar kan leiden tot OOM-waarschuwingen als ze niet correct worden beheerd [1] [3] [5].

3. `Xla_python_client_allocator = platform`: deze instelling zorgt ervoor dat Jax precies toewijst wat nodig is op vraag en geheugen dat niet langer nodig is. Hoewel het niet wordt aanbevolen voor algemeen gebruik vanwege de trage prestaties, kan het nuttig zijn voor het debuggen of minimaliseren van GPU -geheugengebruik [1] [3].

Deze variabelen kunnen worden ingesteld voordat uw JAX -applicatie wordt uitgevoerd om het geheugenallocatiegedrag aan te passen. Sommige gebruikers hebben echter inconsistent gedrag gerapporteerd met deze instellingen in bepaalde versies van JAX [5] [9].

Citaten:
[1] https://kolonist26-jax-kr.readthedocs.io/en/latest/gpu_memory_allocation.html
[2] https://docs.nvidia.com/deepleParining/dali/User-guide/Docs/Advanced_Topics_Performance_Tuning.html
[3] https://jax.readthedocs.io/en/latest/gpu_memory_allocation.html
[4] https://docs.jax.dev/en/latest/installation.html
[5] https://github.com/google/jax/issues/19267
[6] https://www.maplesoft.com/support/help/maple/view.aspx?path=envvar
[7] https://docs.jax.dev/en/latest/faq.html
[8] https://github.com/google/jax/issues/1491
[9] https://github.com/google/jax/issues/19035
[10] https://stackoverflow.com/questions/73322760/jax-gpu-memory-usage-even-with-cpu-allocatie