-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Description
Bug description
Hi! I need to maintain a test of a usage example of my library torchjd, showing how it can be combined with PyTorch Lightning. To keep my test outputs clean, I would like to disable all logs from PyTorch Lightning, but I can't manage to do so.
Even when passing logger=False to the Trainer, and when manually disabling logs, I can't get rid of the INFO: GPU available: [...] logs. I'm posting this as a bug since I think that passing logger=False is supposed to do precisely what I want, but maybe since a recent release it stopped working?
I only found outdated solutions on stackoverflow and in other issues. Thanks in advance for the help! :)
What version are you seeing the problem on?
v2.4
How to reproduce the bug
This reproducer is the first 4 steps of the tutorial, with 2 changes:
- The first 5 lines that try to disable logging manually
- The extra parameters
enable_checkpointing=False, logger=False, enable_model_summary=False, enable_progress_bar=Falseprovided to theTrainer
import logging
logging.getLogger("lightning_fabric").propagate = False
logging.getLogger("lightning_fabric").setLevel = False
logging.getLogger("pytorch_lightning").propagate = False
logging.getLogger("pytorch_lightning").setLevel = False
import os
from torch import optim, nn, utils, Tensor
from torchvision.datasets import MNIST
from torchvision.transforms import ToTensor
import lightning as L
# define any number of nn.Modules (or use your current ones)
encoder = nn.Sequential(nn.Linear(28 * 28, 64), nn.ReLU(), nn.Linear(64, 3))
decoder = nn.Sequential(nn.Linear(3, 64), nn.ReLU(), nn.Linear(64, 28 * 28))
# define the LightningModule
class LitAutoEncoder(L.LightningModule):
def __init__(self, encoder, decoder):
super().__init__()
self.encoder = encoder
self.decoder = decoder
def training_step(self, batch, batch_idx):
# training_step defines the train loop.
# it is independent of forward
x, _ = batch
x = x.view(x.size(0), -1)
z = self.encoder(x)
x_hat = self.decoder(z)
loss = nn.functional.mse_loss(x_hat, x)
# Logging to TensorBoard (if installed) by default
self.log("train_loss", loss)
return loss
def configure_optimizers(self):
optimizer = optim.Adam(self.parameters(), lr=1e-3)
return optimizer
# init the autoencoder
autoencoder = LitAutoEncoder(encoder, decoder)
# setup data
dataset = MNIST(os.getcwd(), download=True, transform=ToTensor())
train_loader = utils.data.DataLoader(dataset)
# train the model (hint: here are some helpful Trainer arguments for rapid idea iteration)
trainer = L.Trainer(limit_train_batches=100, max_epochs=1, enable_checkpointing=False, logger=False, enable_model_summary=False, enable_progress_bar=False)
trainer.fit(model=autoencoder, train_dataloaders=train_loader)Error messages and logs
Output (in red in my terminal):
INFO: GPU available: True (cuda), used: True
INFO: TPU available: False, using: 0 TPU cores
INFO: HPU available: False, using: 0 HPUs
INFO: LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]
INFO: `Trainer.fit` stopped: `max_epochs=1` reached.
Environment
Current environment
- CUDA:
- GPU:
- NVIDIA GeForce GTX 1080
- available: True
- version: 12.4 - Lightning:
- lightning: 2.4.0
- lightning-utilities: 0.11.8
- pytorch-lightning: 2.4.0
- torch: 2.5.1
- torchjd: 0.2.2
- torchmetrics: 1.6.0
- torchvision: 0.20.1 - Packages:
- aiohappyeyeballs: 2.4.3
- aiohttp: 3.11.2
- aiosignal: 1.3.1
- alabaster: 0.7.16
- attrs: 24.2.0
- autocommand: 2.2.2
- babel: 2.16.0
- backports.tarfile: 1.2.0
- beautifulsoup4: 4.12.3
- blinker: 1.9.0
- certifi: 2024.8.30
- cfgv: 3.4.0
- charset-normalizer: 3.4.0
- clarabel: 0.9.0
- click: 8.1.7
- coverage: 7.6.7
- cvxpy: 1.6.0
- dash: 2.18.2
- dash-core-components: 2.0.0
- dash-html-components: 2.0.0
- dash-table: 5.0.0
- distlib: 0.3.9
- docutils: 0.21.2
- ecos: 2.0.14
- filelock: 3.16.1
- flask: 3.0.3
- frozenlist: 1.5.0
- fsspec: 2024.10.0
- furo: 2024.1.29
- identify: 2.6.2
- idna: 3.10
- imagesize: 1.4.1
- importlib-metadata: 8.5.0
- inflect: 7.3.1
- iniconfig: 2.0.0
- itsdangerous: 2.2.0
- jaraco.collections: 5.1.0
- jaraco.context: 5.3.0
- jaraco.functools: 4.0.1
- jaraco.text: 3.12.1
- jinja2: 3.1.4
- kaleido: 0.2.1
- lightning: 2.4.0
- lightning-utilities: 0.11.8
- markdown-it-py: 3.0.0
- markupsafe: 3.0.2
- mdit-py-plugins: 0.4.2
- mdurl: 0.1.2
- more-itertools: 10.3.0
- mpmath: 1.3.0
- multidict: 6.1.0
- myst-parser: 4.0.0
- nest-asyncio: 1.6.0
- networkx: 3.4.2
- nodeenv: 1.9.1
- numpy: 2.1.3
- nvidia-cublas-cu12: 12.4.5.8
- nvidia-cuda-cupti-cu12: 12.4.127
- nvidia-cuda-nvrtc-cu12: 12.4.127
- nvidia-cuda-runtime-cu12: 12.4.127
- nvidia-cudnn-cu12: 9.1.0.70
- nvidia-cufft-cu12: 11.2.1.3
- nvidia-curand-cu12: 10.3.5.147
- nvidia-cusolver-cu12: 11.6.1.9
- nvidia-cusparse-cu12: 12.3.1.170
- nvidia-nccl-cu12: 2.21.5
- nvidia-nvjitlink-cu12: 12.4.127
- nvidia-nvtx-cu12: 12.4.127
- osqp: 0.6.7.post3
- packaging: 24.2
- pillow: 11.0.0
- platformdirs: 4.3.6
- plotly: 5.24.1
- pluggy: 1.5.0
- pre-commit: 4.0.1
- propcache: 0.2.0
- pygments: 2.18.0
- pytest: 8.3.3
- pytest-cov: 6.0.0
- pytorch-lightning: 2.4.0
- pyyaml: 6.0.2
- qdldl: 0.1.7.post4
- qpsolvers: 4.4.0
- quadprog: 0.1.13
- requests: 2.32.3
- retrying: 1.3.4
- scipy: 1.14.1
- scs: 3.2.7
- setuptools: 75.6.0
- six: 1.16.0
- snowballstemmer: 2.2.0
- soupsieve: 2.6
- sphinx: 7.4.7
- sphinx-autodoc-typehints: 2.3.0
- sphinx-basic-ng: 1.0.0b2
- sphinx-design: 0.6.1
- sphinxcontrib-applehelp: 2.0.0
- sphinxcontrib-devhelp: 2.0.0
- sphinxcontrib-htmlhelp: 2.1.0
- sphinxcontrib-jsmath: 1.0.1
- sphinxcontrib-qthelp: 2.0.0
- sphinxcontrib-serializinghtml: 2.0.0
- sympy: 1.13.1
- tenacity: 9.0.0
- tomli: 2.1.0
- torch: 2.5.1
- torchjd: 0.2.2
- torchmetrics: 1.6.0
- torchvision: 0.20.1
- tqdm: 4.67.0
- triton: 3.1.0
- typeguard: 4.3.0
- typing-extensions: 4.12.2
- urllib3: 2.2.3
- virtualenv: 20.27.1
- werkzeug: 3.0.6
- wheel: 0.43.0
- yarl: 1.17.1
- zipp: 3.21.0 - System:
- OS: Linux
- architecture:
- 64bit
- ELF
- processor: x86_64
- python: 3.12.3
- release: 5.15.0-126-generic
- version: tensorboarX to tensorboardX #136~20.04.1-Ubuntu SMP Thu Nov 14 16:38:05 UTC 2024
More info
No response