/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/benchmarks/bench_bundle.py

  • Committer: Carl Friedrich Bolz
  • Date: 2006-09-07 10:51:59 UTC
  • mto: (1908.3.21 usecases-benchmarks)
  • mto: This revision was merged to the branch mainline in revision 2068.
  • Revision ID: cfbolz@gmx.de-20060907105159-095161f93d8c498a
Fix bundle benchmarks: don't do install_bundle on too many revisions: takes way
too long. Split up timing of install_bundle and write_bundle.

Show diffs side-by-side

added added

removed removed

Lines of Context:
93
93
        self.commit_some_revisions(tree, files[:5], 1, 1)
94
94
        self._time_read_write()
95
95
 
96
 
    def test_few_files_small_tree_500_revision(self):
 
96
    def test_few_files_small_tree_100_revision(self):
97
97
        os.mkdir("a")
98
98
        tree, files = self.create_with_commits(5, 1, directory_name="a")
99
 
        self.commit_some_revisions(tree, files[:5], 500, 1)
 
99
        self.commit_some_revisions(tree, files[:5], 100, 1)
100
100
        self._time_read_write()
101
101
 
102
102
    def test_few_files_small_tree_1000_revision(self):
111
111
        self.commit_some_revisions(tree, files[:5], 1, 1)
112
112
        self._time_read_write()
113
113
 
114
 
    def test_few_files_moderate_tree_500_revision(self):
 
114
    def test_few_files_moderate_tree_100_revision(self):
115
115
        os.mkdir("a")
116
116
        tree, files = self.create_with_commits(100, 1, directory_name="a")
117
 
        self.commit_some_revisions(tree, files[:5], 500, 1)
 
117
        self.commit_some_revisions(tree, files[:5], 100, 1)
118
118
        self._time_read_write()
119
119
 
120
120
    def test_few_files_moderate_tree_1000_revision(self):
129
129
        self.commit_some_revisions(tree, files[:100], 1, 1)
130
130
        self._time_read_write()
131
131
 
132
 
    def test_some_files_moderate_tree_500_revision(self):
 
132
    def test_some_files_moderate_tree_100_revision(self):
133
133
        os.mkdir("a")
134
134
        tree, files = self.create_with_commits(100, 1, directory_name="a")
135
 
        self.commit_some_revisions(tree, files[:100], 500, 1)
 
135
        self.commit_some_revisions(tree, files[:100], 100, 1)
136
136
        self._time_read_write()
137
137
 
138
138
    def test_some_files_moderate_tree_1000_revision(self):
147
147
        self.commit_some_revisions(tree, files[:5], 1, 1)
148
148
        self._time_read_write()
149
149
 
150
 
    def test_few_files_big_tree_500_revision(self):
 
150
    def test_few_files_big_tree_100_revision(self):
151
151
        os.mkdir("a")
152
152
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
153
 
        self.commit_some_revisions(tree, files[:5], 500, 1)
 
153
        self.commit_some_revisions(tree, files[:5], 100, 1)
154
154
        self._time_read_write()
155
155
 
156
156
    def test_few_files_big_tree_1000_revision(self):
165
165
        self.commit_some_revisions(tree, files[:100], 1, 1)
166
166
        self._time_read_write()
167
167
 
168
 
    def test_some_files_big_tree_500_revision(self):
 
168
    def test_some_files_big_tree_100_revision(self):
169
169
        os.mkdir("a")
170
170
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
171
 
        self.commit_some_revisions(tree, files[:100], 500, 1)
 
171
        self.commit_some_revisions(tree, files[:100], 100, 1)
172
172
        self._time_read_write()
173
173
 
174
174
    def test_some_files_big_tree_1000_revision(self):
183
183
        self.commit_some_revisions(tree, files[:1000], 1, 1)
184
184
        self._time_read_write()
185
185
 
186
 
    def test_many_files_big_tree_500_revision(self):
 
186
    def test_many_files_big_tree_100_revision(self):
187
187
        os.mkdir("a")
188
188
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
189
 
        self.commit_some_revisions(tree, files[:1000], 500, 1)
 
189
        self.commit_some_revisions(tree, files[:1000], 100, 1)
190
190
        self._time_read_write()
191
191
 
192
192
    def test_many_files_big_tree_1000_revision(self):
195
195
        self.commit_some_revisions(tree, files[:1000], 1000, 1)
196
196
        self._time_read_write()
197
197
 
 
198
class BundleLibraryLevelInstallBenchmark(Benchmark):
 
199
    """ Benchmarks for the install_bundle library function. """
 
200
 
 
201
    def _time_read_write(self):
 
202
        branch, relpath = Branch.open_containing("a")
 
203
        revision_history = branch.revision_history()
 
204
        bundle_text = StringIO()
 
205
        write_bundle(branch.repository, revision_history[-1],
 
206
                     NULL_REVISION, bundle_text)
 
207
        bundle_text.seek(0)
 
208
        target_tree = self.make_branch_and_tree('b')
 
209
        bundle = self.time(read_bundle, bundle_text)
 
210
        self.time(install_bundle, target_tree.branch.repository, bundle)
 
211
 
 
212
    def test_few_files_small_tree_1_revision(self):
 
213
        os.mkdir("a")
 
214
        tree, files = self.create_with_commits(5, 1, directory_name="a")
 
215
        self.commit_some_revisions(tree, files[:5], 1, 1)
 
216
        self._time_read_write()
 
217
 
 
218
    def test_few_files_small_tree_100_revision(self):
 
219
        os.mkdir("a")
 
220
        tree, files = self.create_with_commits(5, 1, directory_name="a")
 
221
        self.commit_some_revisions(tree, files[:5], 100, 1)
 
222
        self._time_read_write()
 
223
 
 
224
    def test_few_files_moderate_tree_1_revision(self):
 
225
        os.mkdir("a")
 
226
        tree, files = self.create_with_commits(100, 1, directory_name="a")
 
227
        self.commit_some_revisions(tree, files[:5], 1, 1)
 
228
        self._time_read_write()
 
229
 
 
230
    def test_few_files_moderate_tree_100_revision(self):
 
231
        os.mkdir("a")
 
232
        tree, files = self.create_with_commits(100, 1, directory_name="a")
 
233
        self.commit_some_revisions(tree, files[:5], 100, 1)
 
234
        self._time_read_write()
 
235
 
 
236
    def test_some_files_moderate_tree_1_revision(self):
 
237
        os.mkdir("a")
 
238
        tree, files = self.create_with_commits(100, 1, directory_name="a")
 
239
        self.commit_some_revisions(tree, files[:100], 1, 1)
 
240
        self._time_read_write()
 
241
 
 
242
    def test_some_files_moderate_tree_100_revision(self):
 
243
        os.mkdir("a")
 
244
        tree, files = self.create_with_commits(100, 1, directory_name="a")
 
245
        self.commit_some_revisions(tree, files[:100], 100, 1)
 
246
        self._time_read_write()
 
247
 
 
248
    def test_few_files_big_tree_1_revision(self):
 
249
        os.mkdir("a")
 
250
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
 
251
        self.commit_some_revisions(tree, files[:5], 1, 1)
 
252
        self._time_read_write()
 
253
 
 
254
    def test_few_files_big_tree_100_revision(self):
 
255
        os.mkdir("a")
 
256
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
 
257
        self.commit_some_revisions(tree, files[:5], 100, 1)
 
258
        self._time_read_write()
 
259
 
 
260
    def test_some_files_big_tree_1_revision(self):
 
261
        os.mkdir("a")
 
262
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
 
263
        self.commit_some_revisions(tree, files[:100], 1, 1)
 
264
        self._time_read_write()
 
265
 
 
266
    def test_some_files_big_tree_100_revision(self):
 
267
        os.mkdir("a")
 
268
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
 
269
        self.commit_some_revisions(tree, files[:100], 100, 1)
 
270
        self._time_read_write()
 
271
 
 
272
    def test_many_files_big_tree_1_revision(self):
 
273
        os.mkdir("a")
 
274
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
 
275
        self.commit_some_revisions(tree, files[:1000], 1, 1)
 
276
        self._time_read_write()
 
277
 
 
278
    def test_many_files_big_tree_100_revision(self):
 
279
        os.mkdir("a")
 
280
        tree, files = self.create_with_commits(1000, 1, directory_name="a")
 
281
        self.commit_some_revisions(tree, files[:1000], 100, 1)
 
282
        self._time_read_write()
 
283
 
198
284
 
199
285
if __name__ == '__main__':
200
286
    # USE the following if you want to regenerate the above test functions 
204
290
                                           (1000, "many")]:
205
291
            if bundlefiles > treesize:
206
292
                continue
207
 
            for num_revisions in [1, 500, 1000]:
 
293
            for num_revisions in [1, 100, 1000]:
208
294
                code = """\
209
295
    def test_%s_files_%s_tree_%s_revision(self):
210
296
        os.mkdir("a")
216
302
                print code
217
303
 
218
304
 
 
305