Skip to content

Commit bbc5488

Browse files
authored
Enable no op optimize (#19490)
1 parent 53ea76a commit bbc5488

File tree

3 files changed

+25
-4
lines changed

3 files changed

+25
-4
lines changed

src/lightning/data/processing/data_processor.py

+7-2
Original file line numberDiff line numberDiff line change
@@ -724,7 +724,12 @@ def _done(self, size: int, delete_cached_files: bool, output_dir: Dir) -> _Resul
724724

725725
size = sum([c["dim"] if c["dim"] is not None else c["chunk_size"] for c in config["chunks"]])
726726
num_bytes = sum([c["chunk_bytes"] for c in config["chunks"]])
727-
data_format = tree_unflatten(config["config"]["data_format"], treespec_loads(config["config"]["data_spec"]))
727+
if config["config"] is not None:
728+
data_format = tree_unflatten(
729+
config["config"]["data_format"], treespec_loads(config["config"]["data_spec"])
730+
)
731+
else:
732+
data_format = None
728733
num_chunks = len(config["chunks"])
729734

730735
# The platform can't store more than 1024 entries.
@@ -735,7 +740,7 @@ def _done(self, size: int, delete_cached_files: bool, output_dir: Dir) -> _Resul
735740
size=size,
736741
num_bytes=num_bytes,
737742
data_format=data_format,
738-
compression=config["config"]["compression"],
743+
compression=config["config"]["compression"] if config["config"] else None,
739744
num_chunks=len(config["chunks"]),
740745
num_bytes_per_chunk=num_bytes_per_chunk,
741746
)

src/lightning/data/processing/utilities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import os
33
import urllib
44
from contextlib import contextmanager
5-
from subprocess import Popen
5+
from subprocess import DEVNULL, Popen
66
from typing import Any, Callable, List, Optional, Tuple, Union
77

88
from lightning.data.constants import _IS_IN_STUDIO, _LIGHTNING_CLOUD_LATEST
@@ -134,7 +134,7 @@ def optimize_dns(enable: bool) -> None:
134134
f"sudo /home/zeus/miniconda3/envs/cloudspace/bin/python"
135135
f" -c 'from lightning.data.processing.utilities import _optimize_dns; _optimize_dns({enable})'"
136136
)
137-
Popen(cmd, shell=True).wait() # E501
137+
Popen(cmd, shell=True, stdout=DEVNULL, stderr=DEVNULL).wait() # E501
138138

139139

140140
def _optimize_dns(enable: bool) -> None:

tests/tests_data/processing/test_data_processor.py

+16
Original file line numberDiff line numberDiff line change
@@ -1023,3 +1023,19 @@ def test_map_is_last(num_workers, expected, tmpdir):
10231023
)
10241024

10251025
assert sorted(os.listdir(tmpdir)) == expected
1026+
1027+
1028+
def no_op(index):
1029+
pass
1030+
1031+
1032+
def test_empty_optimize(tmpdir):
1033+
optimize(
1034+
no_op,
1035+
list(range(10)),
1036+
output_dir=str(tmpdir),
1037+
chunk_bytes="64MB",
1038+
num_workers=1,
1039+
)
1040+
1041+
assert os.listdir(tmpdir) == ["index.json"]

0 commit comments

Comments
 (0)