В настоящее время нет прямого способа отключения предварительной памяти графического процессора в JAX без использования переменных среды. Рекомендуемый метод включает в себя установку переменной среды `xla_python_client_preallocate` на` 'false'' до импорта JAX. Это можно сделать либо в вашем скрипте Python, используя `os.environ ['xla_python_client_preallocate'] = 'false'`` `` или установив его изв. Xla_python_client_preallocate = false` (в Windows).
Тем не менее, крайне важно установить эти переменные среды, прежде чем импортировать JAX, так как установление их после этого не окажет никакого влияния [1] [3]. Не существует встроенных функций JAX или конфигураций, которые позволяют отключить преаллокацию без использования переменных среды.
Если вы столкнетесь с проблемами с отключением предварительной среды в более новых версиях JAX, это может быть связано с ошибкой, и проверка последней документации или заметок о выпуске для обновлений рекомендуется [9].
Цитаты:[1] https://github.com/jax-ml/jax/discussions/21962
[2] https://learn.microsoft.com/en-us/windows/win32/msi/environment-table
[3] https://jax.readthedocs.io/en/latest/gpu_memory_allocation.html
[4] https://docs.jax.dev/en/latest/jep/4410-omnistaging.html
[5] https://kolonist26-jax-kr.readthedocs.io/en/latest/gpu_memory_allocation.html
[6] https://developer.jboss.org/thread/215838
[7] https://crikit.science/documentation/ad_systems/
[8] https://docs.nvidia.com/deeplearning/dali/user-guide/docs/advanced_topics_performance_tuning.html
[9] https://github.com/jax-ml/jax/discussions/19014