:orphan: Modin Configuration Settings """""""""""""""""""""""""""" To adjust Modin's default behavior, you can set the value of Modin configs by setting an environment variable or by using the ``modin.config`` API. To list all available configs in Modin, please run ``python -m modin.config`` to print all Modin configs with descriptions. Public API '''''''''' Potentially, the source of configs can be any, but for now only environment variables are implemented. Any environment variable originate from :class:`~modin.config.envvars.EnvironmentVariable`, which contains most of the config API implementation. .. autoclass:: modin.config.envvars.EnvironmentVariable :members: get, put, get_help, get_value_source, once, subscribe Modin Configs List '''''''''''''''''' .. csv-table:: :file: configs_help.csv :header-rows: 1 Usage Guide ''''''''''' See example of interaction with Modin configs below, as it can be seen config value can be set either by setting the environment variable or by using config API. .. code-block:: python import os # Setting `MODIN_STORAGE_FORMAT` environment variable. # Also can be set outside the script. os.environ["MODIN_STORAGE_FORMAT"] = "Hdk" import modin.config import modin.pandas as pd # Checking initially set `StorageFormat` config, # which corresponds to `MODIN_STORAGE_FORMAT` environment # variable print(modin.config.StorageFormat.get()) # prints 'Hdk' # Checking default value of `NPartitions` print(modin.config.NPartitions.get()) # prints '8' # Changing value of `NPartitions` modin.config.NPartitions.put(16) print(modin.config.NPartitions.get()) # prints '16' One can also use config variables with a context manager in order to use some config only for a certain part of the code: .. code-block:: python import modin.config as cfg # Default value for this config is 'False' print(cfg.RangePartitioning.get()) # False # Set the config to 'True' inside of the context-manager with cfg.context(RangePartitioning=True): print(cfg.RangePartitioning.get()) # True df.merge(...) # will use range-partitioning impl # Once the context is over, the config gets back to its previous value print(cfg.RangePartitioning.get()) # False # You can also set multiple config at once when you pass a dictionary to 'cfg.context' print(cfg.AsyncReadMode.get()) # False with cfg.context(RangePartitioning=True, AsyncReadMode=True): print(cfg.RangePartitioning.get()) # True print(cfg.AsyncReadMode.get()) # True print(cfg.RangePartitioning.get()) # False print(cfg.AsyncReadMode.get()) # False