Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c671a66

Browse files
committed
Various tweaks, fixes, and minor changes.
1 parent f38a934 commit c671a66

File tree

6 files changed

+18
-27
lines changed

6 files changed

+18
-27
lines changed

lib/collector.py

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,6 @@
11
import time
22
import zmq
3-
import democfg
4-
5-
def process_results(receiver):
6-
data = []
7-
# Process results from the workers
8-
for _ in range(democfg.task_count):
9-
result = receiver.recv_pyobj()
10-
print("Processing result: {}".format(result))
11-
data.append(result)
12-
# Calculate final result
13-
print("Final result: {}".format(sum(data)/len(data)))
3+
import democfg, processor
144

155
def collect():
166
context = zmq.Context()
@@ -22,8 +12,8 @@ def collect():
2212
controller.bind(democfg.routing_table["controller"])
2313
# Wait for start signal
2414
assert receiver.recv() == democfg.start_flag
25-
process_results(receiver)
15+
processor.process(receiver)
2616
# Let workers know that all results have been processed
2717
controller.send(democfg.done_msg)
28-
# Finished
29-
time.sleep(5 * democfg.pause_time) # Give 0MQ time to deliver
18+
# Finished, but give 0MQ time to deliver
19+
time.sleep(5 * democfg.pause_time)

lib/demo.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,5 @@ def main(tasks):
1818
distributor.distribute(tasks)
1919

2020
if __name__ == "__main__":
21-
count = range(democfg.task_count)
22-
tasks = [1e8 / democfg.task_count for _ in count]
21+
tasks = [1e8 / democfg.task_count] * democfg.task_count
2322
main(tasks)

lib/distributor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ def distribute(tasks):
77
# Socket to send messages on
88
sender = context.socket(zmq.PUSH)
99
sender.bind(democfg.routing_table["receiver"])
10-
# Socket with direct access to the sink used to syncronize start of batch
10+
# Socket with direct access to the sink used to synchronize start of batch
1111
syncher = context.socket(zmq.PUSH)
1212
syncher.connect(democfg.routing_table["sender"])
1313
# Give 0MQ time to start up

lib/nbutil.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@
55
import IPython
66

77

8+
def hide_axes(axes):
9+
axes.set_frame_on(False)
10+
[n.set_visible(False) for n in axes.get_xticklabels() + axes.get_yticklabels()]
11+
[n.set_visible(False) for n in axes.get_xticklines() + axes.get_yticklines()]
12+
13+
814
def pycat(filename):
915
with open(filename) as f:
1016
code = f.read()

lib/processor.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
import democfg
44

55
def process(receiver):
6+
return get_results(receiver)
7+
8+
def get_results(receiver):
69
data = []
710
# Process results from the workers
811
for _ in range(democfg.task_count):
@@ -11,3 +14,4 @@ def process(receiver):
1114
data.append(result)
1215
# Calculate final result
1316
print("Final result: {}".format(sum(data)/len(data)))
17+
return data

lib/worker.py

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
import random
22
import zmq
3-
import democfg
4-
5-
def run_task(task_data):
6-
in_circle = 0
7-
for _ in range(int(task_data)):
8-
(x, y) = (random.random(), random.random())
9-
if (x ** 2 + y ** 2) <= 1:
10-
in_circle += 1
11-
return 4 * in_circle / task_data
3+
import democfg, tasker
124

135
def is_done(socks, controller):
146
if (socks.get(controller) == zmq.POLLIN and
@@ -39,7 +31,7 @@ def work(worker_id):
3931
if socks.get(receiver) == zmq.POLLIN:
4032
task_data = receiver.recv_pyobj()
4133
# Process task data
42-
result = run_task(task_data)
34+
result = tasker.task(task_data)
4335
sender.send_pyobj(result)
4436
if is_done(socks, controller):
4537
run_loop = False

0 commit comments

Comments
 (0)