Skip to content

Commit 5fe12d5

Browse files
rahul003jarednielsen
authored andcommitted
Remove unused or unnecessary code (aws#257)
* remove unused or unnecessary code, also use collectionKeys at one point * Remove training ended method from trial class
1 parent f821f95 commit 5fe12d5

File tree

14 files changed

+35
-75
lines changed

14 files changed

+35
-75
lines changed

tests/core/test_numpy.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def rw(path):
1616
fw.write_tensor(tdata=data, tname=f'foo_{i}')
1717

1818
fr = FileReader(fname=fname)
19-
for i,ts in enumerate(fr.read_tensors(read_data=True)):
19+
for i,ts in enumerate(fr.read_tensors()):
2020
"""
2121
read_data returns name, step and data (if read_data==True)
2222
"""
@@ -51,7 +51,7 @@ def test_string():
5151
fw.write_tensor(tdata=s_written, tname=f'foo_string')
5252

5353
fr = FileReader(fname=fname)
54-
read = list(fr.read_tensors(read_data=True))
54+
read = list(fr.read_tensors())
5555
assert len(read)==1
5656
s_read = np.array(read[0][2])
5757
assert np.all(s_written == s_read)

tornasole/core/index_reader.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ def fetch_tensor_value(tensor_location):
9797
res = [tensor_object]
9898

9999
tr = TensorReader(res[0]) # Access the only element in res
100-
tensor_tuple = list(tr.read_tensors(read_data=True))[0] # Access the only element in the list
100+
tensor_tuple = list(tr.read_tensors())[0] # Access the only element in the list
101101
tensor_name, step, tensor_data, mode, mode_step = tensor_tuple
102102
return tensor_data
103103

tornasole/core/reader.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222

2323
class FileReader():
24-
def __init__(self, fname, wtype='tfevent', verbose=True):
24+
def __init__(self, fname, wtype='tfevent'):
2525
"""Creates a `FileWriter` and an file.
2626
On construction the summary writer creates a new event file in `logdir`.
2727
@@ -35,11 +35,9 @@ def __init__(self, fname, wtype='tfevent', verbose=True):
3535
How often, in seconds, to flush the pending events and summaries to disk.
3636
filename_suffix : str
3737
Every event file's name is suffixed with `filename_suffix` if provided.
38-
verbose : bool
39-
Determines whether to print logging messages.
4038
"""
4139
if wtype == 'tfevent':
42-
self._reader = EventFileReader(fname=fname, verbose=verbose)
40+
self._reader = EventFileReader(fname=fname)
4341
else:
4442
assert False
4543

@@ -51,8 +49,8 @@ def __exit__(self, exc_type, exc_value, traceback):
5149
"""Make usable with "with" statement."""
5250
self._reader.__exit__(exc_type, exc_value, traceback)
5351

54-
def read_tensors(self, read_data=True, check=False):
55-
return self._reader.read_tensors(read_data=read_data, check=check)
52+
def read_tensors(self, check=False):
53+
return self._reader.read_tensors(check=check)
5654

5755
#def __del__(self):
5856
# self._reader.__del__()

tornasole/core/tfevent/event_file_reader.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ class EventsReader(object):
8787
"""Writes `Event` protocol buffers to an event file. This class is ported from
8888
EventsReader defined in
8989
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/util/events_writer.cc"""
90-
def __init__(self, filename, verbose=True):
90+
def __init__(self, filename):
9191
"""
9292
Events files have a name of the form
9393
'/file/path/events.out.tfevents.[timestamp].[hostname][file_suffix]'
@@ -116,7 +116,7 @@ class EventFileReader():
116116
is encoded using the tfrecord format, which is similar to RecordIO.
117117
"""
118118

119-
def __init__(self, fname, verbose=True):
119+
def __init__(self, fname):
120120
"""Creates a `EventFileWriter` and an event file to write to.
121121
On construction the summary writer creates a new event file in `logdir`.
122122
This event file will contain `Event` protocol buffers, which are written to
@@ -125,21 +125,18 @@ def __init__(self, fname, verbose=True):
125125
the event file:
126126
"""
127127
self._filename = fname
128-
self._ev_reader = EventsReader(self._filename, verbose=verbose)
128+
self._ev_reader = EventsReader(self._filename)
129129

130130
def __exit__(self,exc_type, exc_value, traceback):
131131
self._ev_reader.__exit__(exc_type, exc_value, traceback)
132132

133-
def read_tensors(self, read_data=False, check=False):
133+
def read_tensors(self, check=False):
134134
for step, summ in self.read_summaries(check=check):
135135
for v in summ.value:
136136
assert v.WhichOneof('value') == 'tensor'
137137
tensor_name = v.tag
138138
# We have found the right tensor at the right step
139-
if read_data:
140-
tensor_data = get_tensor_data(v.tensor)
141-
else:
142-
tensor_data = None
139+
tensor_data = get_tensor_data(v.tensor)
143140

144141
# default values
145142
# todo: validate the logic extensively

tornasole/core/tfevent/event_file_writer.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ def run(self):
173173
if isinstance(event_in_queue, EventWithIndex):
174174
# checking whether there is an object of IndexArgs,
175175
# which is written by write_summary_with_index
176-
event = event_in_queue.get_event()
176+
event = event_in_queue.event
177177
else:
178178
event = event_in_queue
179179

@@ -189,7 +189,7 @@ def run(self):
189189
eventfile = self._ev_writer.name()
190190
tname = event_in_queue.tensorname
191191
mode = event_in_queue.get_mode()
192-
mode_step = event_in_queue.get_mode_step()
192+
mode_step = event_in_queue.mode_step
193193
eventfile = get_relative_event_file_path(eventfile)
194194
tensorlocation = TensorLocation(
195195
tname, mode, mode_step, eventfile,

tornasole/core/tfevent/index_file_writer.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,5 @@ def __init__(self, event, tensorname, mode, mode_step):
6464
self.mode = mode
6565
self.mode_step = mode_step
6666

67-
def get_event(self):
68-
return self.event
69-
70-
def get_tensorname(self):
71-
return self.tensorname
72-
7367
def get_mode(self):
7468
return str(self.mode).split('.')[-1]
75-
76-
def get_mode_step(self):
77-
return self.mode_step

tornasole/core/tfrecord/record_reader.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ def read_record(self, check=True):
6262
if check:
6363
computed_len_crc = masked_crc32c(strlen_bytes)
6464
assert saved_len_crc == computed_len_crc
65-
#print( f'Payload_Len={strlen} LENCRC={saved_len_crc},{computed_len_crc}')
65+
6666
payload = self._reader.read(strlen)
6767
saved_payload_crc = struct.unpack('I', self._reader.read(4))[0]
6868
if check:
@@ -72,7 +72,6 @@ def read_record(self, check=True):
7272
computed_payload_crc = masked_crc32c(CHECKSUM_MAGIC_BYTES)
7373
assert saved_payload_crc == computed_payload_crc
7474

75-
#print( f'Payload_CRC={saved_payload_crc},{computed_payload_crc}')
7675
return payload
7776

7877
def flush(self):
@@ -81,7 +80,6 @@ def flush(self):
8180

8281
def close(self):
8382
"""Closes the record reader."""
84-
print( "Closing READER", self)
8583
if self._reader is not None:
8684
self._reader.close()
8785
self._reader = None

tornasole/core/tfrecord/tensor_reader.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,16 +35,13 @@ def read_record(self, check=False):
3535
assert saved_payload_crc == computed_payload_crc
3636
return payload
3737

38-
def read_tensors(self, read_data=False, check=False):
38+
def read_tensors(self, check=False):
3939
for (step,summ) in self.read_summaries(check=check):
4040
for v in summ.value:
4141
assert v.WhichOneof('value') == 'tensor'
4242
tensor_name = v.tag
4343
# We have found the right tensor at the right step
44-
if read_data:
45-
tensor_data = get_tensor_data(v.tensor)
46-
else:
47-
tensor_data = None
44+
tensor_data = get_tensor_data(v.tensor)
4845

4946
# default values
5047
# todo: validate the logic extensively

tornasole/mxnet/mxnet_collection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ def get_collection_manager():
5555
return _collection_manager
5656

5757
def add_to_default_collection(args):
58-
add_to_collection('default', args)
58+
add_to_collection(CollectionKeys.DEFAULT, args)
5959

6060
def get_collection(collection_name):
6161
return _collection_manager.get(collection_name, create=True)

tornasole/pytorch/torch_collection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def get_collection_manager():
5656
return _collection_manager
5757

5858
def add_to_default_collection(args):
59-
add_to_collection('default', args)
59+
add_to_collection(CollectionKeys.DEFAULT, args)
6060

6161
def get_collection(collection_name):
6262
return _collection_manager.get(collection_name, create=True)

tornasole/trials/local_trial.py

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
from tornasole.core.collection_manager import CollectionManager, \
66
COLLECTIONS_FILE_NAME
77
from tornasole.core.reader import FileReader
8-
from tornasole.core.access_layer.utils import has_training_ended
98

109
import time
1110
import os
@@ -75,15 +74,6 @@ def _load_collections(self):
7574
self.logger.debug('Waiting to read collections')
7675
continue
7776

78-
def training_ended(self):
79-
return has_training_ended(self.trial_dir)
80-
81-
def __hash__(self):
82-
return hash((self.name, self.trial_dir))
83-
84-
def __eq__(self, other):
85-
return (self.name, self.trial_dir) == (other.name, other.trial_dir)
86-
8777
def get_tensors(self, tname_steps_dict, should_regex_match=False):
8878
# now we do not need to do anything since we read the full event file
8979
pass
@@ -101,7 +91,7 @@ def _read_step_dirs(self, step_dirs):
10191
dirnames_efts = Parallel(n_jobs=multiprocessing.cpu_count(), verbose=0) \
10292
(delayed(self._read_folder) \
10393
(EventFileLocation.get_step_dir_path(self.trial_dir, step_dir),
104-
read_data=self.read_data, check=self.check) \
94+
check=self.check) \
10595
for step_dir in step_dirs)
10696
# sort them as parallel returns in random order
10797
# we want to sort them by dirname
@@ -114,7 +104,6 @@ def _read_step_dirs(self, step_dirs):
114104
for step_dir in step_dirs:
115105
step_dir_path = EventFileLocation.get_step_dir_path(self.trial_dir, step_dir)
116106
dirnames_efts.extend(self._read_folder(step_dir_path,
117-
read_data=self.read_data,
118107
check=self.check))
119108

120109
for dirname, dir_efts in dirnames_efts:
@@ -133,13 +122,13 @@ def _read_step_dirs(self, step_dirs):
133122
# temp file for writing event files and do atomic move
134123

135124
@staticmethod
136-
def _read_folder(dirname, read_data=True, check=True):
125+
def _read_folder(dirname, check=True):
137126
res = []
138127
for fname in os.listdir(dirname):
139128
if fname.endswith(".tfevents"):
140129
full_fname = os.path.join(dirname, fname)
141130
fr = FileReader(fname=full_fname)
142-
summary_values = fr.read_tensors(read_data=read_data, check=check)
131+
summary_values = fr.read_tensors(check=check)
143132
for sv in summary_values:
144133
n, s, d, mode, mode_step = sv
145134
eft = EventFileTensor(fname, tensor_name=n, step_num=s, tensor_value=d,

tornasole/trials/s3_trial.py

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
import os
33

44
from tornasole.core.access_layer.s3handler import ReadObjectRequest, S3Handler
5-
from tornasole.core.access_layer.utils import has_training_ended
6-
from tornasole.core.locations import EventFileLocation
75
from tornasole.core.s3_utils import list_s3_objects
86
from tornasole.core.locations import EventFileLocation
97
from tornasole.core.collection_manager import CollectionManager, \
@@ -33,7 +31,7 @@ def __init__(self, name, bucket_name, prefix_name,
3331
self.logger.info(f'Loading trial {name} at path s3://{bucket_name}/{prefix_name}')
3432
self.bucket_name = bucket_name
3533
self.prefix_name = os.path.join(prefix_name, '')
36-
self.path = "s3://"+os.path.join(self.bucket_name, self.prefix_name)
34+
self.path = "s3://" + os.path.join(self.bucket_name, self.prefix_name)
3735
self.s3_handler = S3Handler()
3836
self._load_collections()
3937
self.load_tensors()
@@ -44,9 +42,6 @@ def _load_tensors_from_index_tensors(self, index_tensors_dict):
4442
for step in steps:
4543
self.add_tensor(step, index_tensors_dict[tname][step]['tensor_location'])
4644

47-
def training_ended(self):
48-
return has_training_ended("s3://{}/{}".format(self.bucket_name, self.prefix_name))
49-
5045
def _load_collections(self):
5146
num_times_before_warning = 10
5247
while True:
@@ -67,13 +62,6 @@ def _load_collections(self):
6762
self.logger.debug('Loaded collections for trial {}'.format(self.name))
6863
return
6964

70-
def __hash__(self):
71-
return hash((self.name, self.bucket_name, self.prefix_name))
72-
73-
def __eq__(self, other):
74-
return (self.name, self.bucket_name, self.prefix_name) \
75-
== (other.name, other.bucket_name, other.prefix_name)
76-
7765
def get_tensors(self, tname_steps_dict, should_regex_match=False):
7866
# to be used when getting selective tensors from S3
7967
# now we do not need to do anything since we read the full event file from S3
@@ -134,5 +122,5 @@ def _get_s3_location(self, obj):
134122

135123
def _read_tensors_from_data(self, data):
136124
tr = TensorReader(data)
137-
res = tr.read_tensors(read_data=self.read_data, check=self.check)
125+
res = tr.read_tensors(check=self.check)
138126
return list(res)

tornasole/trials/trial.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from bisect import bisect_left
44
from abc import ABC, abstractmethod
55

6+
from tornasole.core.access_layer.utils import has_training_ended
67
from tornasole.core.tensor import Tensor, StepState
78
from tornasole.exceptions import *
89
from tornasole.analysis.utils import refresh
@@ -40,13 +41,13 @@ class Trial(ABC):
4041
_index_tensors_dict
4142
4243
['name', '_tensors', '_mode_to_global', '_global_to_mode', 'logger', 'parallel',
43-
'read_data', 'check', 'range_steps', 'collection_manager', 'loaded_all_steps', 'cache', 'path',
44+
'check', 'range_steps', 'collection_manager', 'loaded_all_steps', 'cache', 'path',
4445
'index_tensors_dict', 'index_mode', 'last_event_token', 'last_index_token', 'index_reader',
4546
'dynamic_refresh', 'trial_dir']
4647
"""
4748

4849
def __init__(self, name, range_steps=None, parallel=True,
49-
read_data=True, check=False, index_mode=True, cache=False):
50+
check=False, index_mode=True, cache=False):
5051
self.name = name
5152
self._tensors = {}
5253

@@ -60,7 +61,6 @@ def __init__(self, name, range_steps=None, parallel=True,
6061

6162
self.logger = get_logger()
6263
self.parallel = parallel
63-
self.read_data = read_data
6464
self.check = check
6565
self.range_steps = range_steps
6666
self.collection_manager = None
@@ -97,19 +97,21 @@ def _load_collections(self):
9797
def _load_tensors_from_index_tensors(self, index_tensors_dict):
9898
pass
9999

100-
@abstractmethod
101-
def training_ended(self):
102-
pass
103-
104100
@abstractmethod
105101
def _load_tensors_from_event_files(self, start_after_key=None):
106102
pass
107103

104+
def __hash__(self):
105+
return hash((self.name, self.path))
106+
107+
def __eq__(self, other):
108+
return (self.name, self.path) == (other.name, other.path)
109+
108110
def maybe_refresh(self, name=None):
109111
if self.loaded_all_steps or not self.dynamic_refresh:
110112
return
111113
retry_count = 1
112-
training_ended = self.training_ended()
114+
training_ended = has_training_ended(self.path)
113115
if training_ended and self.loaded_all_steps== False:
114116
retry_count = 2
115117
while retry_count > 0:

tornasole/xgboost/collection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def get_collection_manager():
4444

4545
def add_to_default_collection(args):
4646

47-
add_to_collection('default', args)
47+
add_to_collection(CollectionKeys.DEFAULT, args)
4848

4949

5050
def get_collection(collection_name):

0 commit comments

Comments
 (0)