Passed
Pull Request — master (#117)
by
unknown
01:30
created

tests.test_distribution.test_n_processes_1()   A

Complexity

Conditions 1

Size

Total Lines 6
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 5
nop 0
dl 0
loc 6
rs 10
c 0
b 0
f 0
1
import numpy as np
2
from hyperactive import Hyperactive
3
4
5
def objective_function(opt):
6
    score = -opt["x1"] * opt["x1"]
7
    return score
8
9
10
search_space = {
11
    "x1": list(np.arange(-100, 101, 1)),
12
}
13
14
15
def test_n_jobs_0():
16
    hyper = Hyperactive()
17
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
18
    hyper.run()
19
20
    assert len(hyper.results_list) == 2
21
22
23
def test_n_jobs_1():
24
    hyper = Hyperactive()
25
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=4)
26
    hyper.run()
27
28
    assert len(hyper.results_list) == 4
29
30
31
def test_n_jobs_2():
32
    hyper = Hyperactive()
33
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=8)
34
    hyper.run()
35
36
    assert len(hyper.results_list) == 8
37
38
39
def test_n_jobs_3():
40
    hyper = Hyperactive()
41
    hyper.add_search(objective_function, search_space, n_iter=15)
42
    hyper.run()
43
44
45
def test_n_jobs_5():
46
    hyper = Hyperactive()
47
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
48
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
49
50
    hyper.run()
51
52
    assert len(hyper.results_list) == 4
53
54
55
def test_n_jobs_6():
56
    hyper = Hyperactive()
57
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
58
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
59
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
60
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
61
62
    hyper.run()
63
64
    assert len(hyper.results_list) == 8
65
66
67
def test_n_jobs_7():
68
    hyper = Hyperactive()
69
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=-1)
70
    hyper.run()
71
72
73
def test_multiprocessing_0():
74
    hyper = Hyperactive(distribution="multiprocessing")
75
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
76
    hyper.run()
77
78
79
def test_joblib_0():
80
    hyper = Hyperactive(distribution="joblib")
81
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
82
    hyper.run()
83
84
85
def test_joblib_1():
86
    from joblib import Parallel, delayed
87
88
    def joblib_wrapper(process_func, search_processes_paras, n_jobs, **kwargs):
89
        n_jobs = len(search_processes_paras)
90
91
        jobs = [
92
            delayed(process_func)(*info_dict) for info_dict in search_processes_paras
93
        ]
94
        results = Parallel(n_jobs=n_jobs, *kwargs)(jobs)
95
96
        return results
97
98
    hyper = Hyperactive(distribution=joblib_wrapper)
99
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
100
101
    hyper.run()
102
103
104
def test_pathos_0():
105
    hyper = Hyperactive(distribution="pathos")
106
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
107
    hyper.run()
108
109
110
def test_n_processes_0():
111
    hyper = Hyperactive(n_processes=1)
112
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
113
    hyper.run()
114
115
    assert len(hyper.results_list) == 2
116
117
118
def test_n_processes_1():
119
    hyper = Hyperactive(n_processes=2)
120
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
121
    hyper.run()
122
123
    assert len(hyper.results_list) == 2
124
125
126
def test_n_processes_2():
127
    hyper = Hyperactive(n_processes=4)
128
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=2)
129
    hyper.run()
130
131
    assert len(hyper.results_list) == 2
132
133
134
def test_n_processes_3():
135
    hyper = Hyperactive(n_processes=4)
136
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=3)
137
    hyper.run()
138
139
    assert len(hyper.results_list) == 3
140
141
142
def test_n_processes_4():
143
    hyper = Hyperactive(n_processes=1)
144
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=4)
145
    hyper.run()
146
147
    assert len(hyper.results_list) == 4
148
149
150
def test_n_processes_5():
151
    hyper = Hyperactive(n_processes=1)
152
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=4)
153
    hyper.add_search(objective_function, search_space, n_iter=15, n_jobs=4)
154
    hyper.run()
155
156
    assert len(hyper.results_list) == 8
157