mirror of
https://github.com/wassname/pytorch-lightning.git
synced 2026-09-09 11:32:07 +08:00
prune tests (#564)
* format docstring in tests * prune unused vars * optimize imports * drop duplicated var
This commit is contained in:
committed by
William Falcon
parent
62f6f92fdf
commit
63717e8fda
+21
-41
@@ -1,7 +1,9 @@
|
||||
import os
|
||||
|
||||
import pytest
|
||||
import torch
|
||||
|
||||
import tests.utils as tutils
|
||||
from pytorch_lightning import Trainer
|
||||
from pytorch_lightning.callbacks import (
|
||||
ModelCheckpoint,
|
||||
@@ -15,16 +17,12 @@ from pytorch_lightning.trainer.dp_mixin import (
|
||||
determine_root_gpu_device,
|
||||
)
|
||||
from pytorch_lightning.utilities.debugging import MisconfigurationException
|
||||
import tests.utils as tutils
|
||||
|
||||
PRETEND_N_OF_GPUS = 16
|
||||
|
||||
|
||||
def test_multi_gpu_model_ddp2(tmpdir):
|
||||
"""
|
||||
Make sure DDP2 works
|
||||
:return:
|
||||
"""
|
||||
"""Make sure DDP2 works."""
|
||||
if not tutils.can_run_gpu_test():
|
||||
return
|
||||
|
||||
@@ -43,14 +41,11 @@ def test_multi_gpu_model_ddp2(tmpdir):
|
||||
distributed_backend='ddp2'
|
||||
)
|
||||
|
||||
tutils.run_model_test(trainer_options, model, hparams)
|
||||
tutils.run_model_test(trainer_options, model)
|
||||
|
||||
|
||||
def test_multi_gpu_model_ddp(tmpdir):
|
||||
"""
|
||||
Make sure DDP works
|
||||
:return:
|
||||
"""
|
||||
"""Make sure DDP works."""
|
||||
if not tutils.can_run_gpu_test():
|
||||
return
|
||||
|
||||
@@ -68,7 +63,7 @@ def test_multi_gpu_model_ddp(tmpdir):
|
||||
distributed_backend='ddp'
|
||||
)
|
||||
|
||||
tutils.run_model_test(trainer_options, model, hparams)
|
||||
tutils.run_model_test(trainer_options, model)
|
||||
|
||||
|
||||
def test_optimizer_return_options():
|
||||
@@ -103,26 +98,20 @@ def test_optimizer_return_options():
|
||||
|
||||
|
||||
def test_cpu_slurm_save_load(tmpdir):
|
||||
"""
|
||||
Verify model save/load/checkpoint on CPU
|
||||
:return:
|
||||
"""
|
||||
"""Verify model save/load/checkpoint on CPU."""
|
||||
tutils.reset_seed()
|
||||
|
||||
hparams = tutils.get_hparams()
|
||||
model = LightningTestModel(hparams)
|
||||
|
||||
save_dir = tmpdir
|
||||
|
||||
# logger file to get meta
|
||||
logger = tutils.get_test_tube_logger(save_dir, False)
|
||||
|
||||
logger = tutils.get_test_tube_logger(tmpdir, False)
|
||||
version = logger.version
|
||||
|
||||
trainer_options = dict(
|
||||
max_nb_epochs=1,
|
||||
logger=logger,
|
||||
checkpoint_callback=ModelCheckpoint(save_dir)
|
||||
checkpoint_callback=ModelCheckpoint(tmpdir)
|
||||
)
|
||||
|
||||
# fit model
|
||||
@@ -147,16 +136,16 @@ def test_cpu_slurm_save_load(tmpdir):
|
||||
|
||||
# test HPC saving
|
||||
# simulate snapshot on slurm
|
||||
saved_filepath = trainer.hpc_save(save_dir, logger)
|
||||
saved_filepath = trainer.hpc_save(tmpdir, logger)
|
||||
assert os.path.exists(saved_filepath)
|
||||
|
||||
# new logger file to get meta
|
||||
logger = tutils.get_test_tube_logger(save_dir, False, version=version)
|
||||
logger = tutils.get_test_tube_logger(tmpdir, False, version=version)
|
||||
|
||||
trainer_options = dict(
|
||||
max_nb_epochs=1,
|
||||
logger=logger,
|
||||
checkpoint_callback=ModelCheckpoint(save_dir),
|
||||
checkpoint_callback=ModelCheckpoint(tmpdir),
|
||||
)
|
||||
trainer = Trainer(**trainer_options)
|
||||
model = LightningTestModel(hparams)
|
||||
@@ -178,11 +167,7 @@ def test_cpu_slurm_save_load(tmpdir):
|
||||
|
||||
|
||||
def test_multi_gpu_none_backend(tmpdir):
|
||||
"""
|
||||
Make sure when using multiple GPUs the user can't use
|
||||
distributed_backend = None
|
||||
:return:
|
||||
"""
|
||||
"""Make sure when using multiple GPUs the user can't use `distributed_backend = None`."""
|
||||
tutils.reset_seed()
|
||||
|
||||
if not tutils.can_run_gpu_test():
|
||||
@@ -199,14 +184,11 @@ def test_multi_gpu_none_backend(tmpdir):
|
||||
)
|
||||
|
||||
with pytest.raises(MisconfigurationException):
|
||||
tutils.run_model_test(trainer_options, model, hparams)
|
||||
tutils.run_model_test(trainer_options, model)
|
||||
|
||||
|
||||
def test_multi_gpu_model_dp(tmpdir):
|
||||
"""
|
||||
Make sure DP works
|
||||
:return:
|
||||
"""
|
||||
"""Make sure DP works."""
|
||||
tutils.reset_seed()
|
||||
|
||||
if not tutils.can_run_gpu_test():
|
||||
@@ -223,17 +205,14 @@ def test_multi_gpu_model_dp(tmpdir):
|
||||
gpus='-1'
|
||||
)
|
||||
|
||||
tutils.run_model_test(trainer_options, model, hparams)
|
||||
tutils.run_model_test(trainer_options, model)
|
||||
|
||||
# test memory helper functions
|
||||
memory.get_memory_profile('min_max')
|
||||
|
||||
|
||||
def test_ddp_sampler_error(tmpdir):
|
||||
"""
|
||||
Make sure DDP + AMP work
|
||||
:return:
|
||||
"""
|
||||
"""Make sure DDP + AMP work."""
|
||||
if not tutils.can_run_gpu_test():
|
||||
return
|
||||
|
||||
@@ -374,7 +353,8 @@ test_parse_gpu_ids_data = [
|
||||
pytest.param(1, [0]),
|
||||
pytest.param(-1, list(range(PRETEND_N_OF_GPUS)), id="-1 - use all gpus"),
|
||||
pytest.param('-1', list(range(PRETEND_N_OF_GPUS)), id="'-1' - use all gpus"),
|
||||
pytest.param(3, [0, 1, 2])]
|
||||
pytest.param(3, [0, 1, 2]),
|
||||
]
|
||||
|
||||
|
||||
@pytest.mark.gpus_param_tests
|
||||
@@ -403,5 +383,5 @@ def test_parse_gpu_returns_None_when_no_devices_are_available(mocked_device_coun
|
||||
parse_gpu_ids(gpus)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
pytest.main([__file__])
|
||||
# if __name__ == '__main__':
|
||||
# pytest.main([__file__])
|
||||
|
||||
Reference in New Issue
Block a user