Skip to content

Commit 1f0f83e

Browse files
committed
[test] Measure gzip sizes without metadata. NFC
Writing to a temporary gzip file, measuring and then deleting is both inefficient, but also results in a slightly larger reported size because it then also writes extra metadata like the original filename. That metadata is not something we care about measuring, as more often than not compression on the Web happens on the fly anyway.
1 parent d0460ec commit 1f0f83e

File tree

57 files changed

+94
-99
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+94
-99
lines changed
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 519,
3-
"a.html.gz": 364,
3+
"a.html.gz": 357,
44
"a.js": 3853,
5-
"a.js.gz": 2050,
5+
"a.js.gz": 2045,
66
"a.wasm": 1294,
7-
"a.wasm.gz": 864,
7+
"a.wasm.gz": 857,
88
"total": 5666,
9-
"total_gz": 3278
9+
"total_gz": 3259
1010
}

test/code_size/embind_hello_wasm.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 552,
3-
"a.html.gz": 380,
3+
"a.html.gz": 373,
44
"a.js": 7680,
5-
"a.js.gz": 3363,
5+
"a.js.gz": 3358,
66
"a.wasm": 7300,
7-
"a.wasm.gz": 3348,
7+
"a.wasm.gz": 3341,
88
"total": 15532,
9-
"total_gz": 7091
9+
"total_gz": 7072
1010
}

test/code_size/embind_val_wasm.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 552,
3-
"a.html.gz": 380,
3+
"a.html.gz": 373,
44
"a.js": 5748,
5-
"a.js.gz": 2563,
5+
"a.js.gz": 2558,
66
"a.wasm": 9101,
7-
"a.wasm.gz": 4698,
7+
"a.wasm.gz": 4691,
88
"total": 15401,
9-
"total_gz": 7641
9+
"total_gz": 7622
1010
}
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 519,
3-
"a.html.gz": 364,
3+
"a.html.gz": 357,
44
"a.js": 830,
5-
"a.js.gz": 530,
5+
"a.js.gz": 525,
66
"a.wasm": 1891,
7-
"a.wasm.gz": 1082,
7+
"a.wasm.gz": 1075,
88
"total": 3240,
9-
"total_gz": 1976
9+
"total_gz": 1957
1010
}

test/code_size/hello_webgl2_wasm.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 454,
3-
"a.html.gz": 328,
3+
"a.html.gz": 321,
44
"a.js": 4386,
5-
"a.js.gz": 2252,
5+
"a.js.gz": 2247,
66
"a.wasm": 8286,
7-
"a.wasm.gz": 5617,
7+
"a.wasm.gz": 5610,
88
"total": 13126,
9-
"total_gz": 8197
9+
"total_gz": 8178
1010
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"a.html": 346,
3-
"a.html.gz": 262,
3+
"a.html.gz": 255,
44
"a.js": 18078,
5-
"a.js.gz": 9781,
5+
"a.js.gz": 9776,
66
"total": 18424,
7-
"total_gz": 10043
7+
"total_gz": 10031
88
}

test/code_size/hello_webgl_wasm.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 454,
3-
"a.html.gz": 328,
3+
"a.html.gz": 321,
44
"a.js": 3924,
5-
"a.js.gz": 2092,
5+
"a.js.gz": 2087,
66
"a.wasm": 8286,
7-
"a.wasm.gz": 5617,
7+
"a.wasm.gz": 5610,
88
"total": 12664,
9-
"total_gz": 8037
9+
"total_gz": 8018
1010
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"a.html": 346,
3-
"a.html.gz": 262,
3+
"a.html.gz": 255,
44
"a.js": 17605,
5-
"a.js.gz": 9614,
5+
"a.js.gz": 9609,
66
"total": 17951,
7-
"total_gz": 9876
7+
"total_gz": 9864
88
}

test/code_size/hello_world_wasm.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 552,
3-
"a.html.gz": 380,
3+
"a.html.gz": 373,
44
"a.js": 287,
5-
"a.js.gz": 247,
5+
"a.js.gz": 242,
66
"a.wasm": 95,
7-
"a.wasm.gz": 108,
7+
"a.wasm.gz": 101,
88
"total": 934,
9-
"total_gz": 735
9+
"total_gz": 716
1010
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"a.html": 323,
3-
"a.html.gz": 253,
3+
"a.html.gz": 246,
44
"a.js": 965,
5-
"a.js.gz": 593,
5+
"a.js.gz": 588,
66
"total": 1288,
7-
"total_gz": 846
7+
"total_gz": 834
88
}

test/code_size/math_wasm.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"a.html": 552,
3-
"a.html.gz": 380,
3+
"a.html.gz": 373,
44
"a.js": 110,
5-
"a.js.gz": 125,
5+
"a.js.gz": 120,
66
"a.wasm": 2687,
7-
"a.wasm.gz": 1658,
7+
"a.wasm.gz": 1651,
88
"total": 3349,
9-
"total_gz": 2163
9+
"total_gz": 2144
1010
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"a.html": 12515,
3-
"a.html.gz": 6858,
3+
"a.html.gz": 6851,
44
"total": 12515,
5-
"total_gz": 6858
5+
"total_gz": 6851
66
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"a.html": 17233,
3-
"a.html.gz": 7547,
3+
"a.html.gz": 7540,
44
"total": 17233,
5-
"total_gz": 7547
5+
"total_gz": 7540
66
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8171
1+
8162
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8160
1+
8151
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9159
1+
9150
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8119
1+
8110
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8119
1+
8110
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8023
1+
8014
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9176
1+
9167
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8171
1+
8162
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3355
1+
3346
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
7485
1+
7476
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2606
1+
2597
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8319
1+
8310
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2496
1+
2487
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2157
1+
2148
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2119
1+
2110
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2119
1+
2110
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1921
1+
1912
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
11482
1+
11473
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1508
1+
1499
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3620
1+
3611
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2119
1+
2110
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1696
1+
1687
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1727
1+
1718
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2134
1+
2125
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2283
1+
2274
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1997
1+
1988
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1963
1+
1954
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1719
1+
1710
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1727
1+
1718
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1727
1+
1718
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1267
1+
1258
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6614
1+
6605
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1329
1+
1320
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1197
1+
1188
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1163
1+
1154
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1163
1+
1154
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
307
1+
298
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1147
1+
1138
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1163
1+
1154
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1249
1+
1240
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3744
1+
3735
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3950
1+
3941
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1163
1+
1154

test/test_other.py

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -226,13 +226,10 @@ def llvm_nm(file):
226226
return symbols
227227

228228

229-
def get_file_gzipped_size(f):
230-
f_gz = f + '.gz'
231-
with gzip.open(f_gz, 'wb') as gzf:
232-
gzf.write(read_binary(f))
233-
size = os.path.getsize(f_gz)
234-
delete_file(f_gz)
235-
return size
229+
def get_file_and_gz_sizes(f):
230+
contents = read_binary(f)
231+
gz_contents = gzip.compress(contents)
232+
return len(contents), len(gz_contents)
236233

237234

238235
def deminify_syms(names, minification_map):
@@ -9317,8 +9314,7 @@ def run_codesize_test(self, filename, cflags, check_funcs=True, check_full_js=Fa
93179314

93189315
self.run_process(build_cmd + ['--profiling-funcs', '--closure=1'])
93199316

9320-
js_size = os.path.getsize('a.out.js')
9321-
gz_size = get_file_gzipped_size('a.out.js')
9317+
js_size, gz_size = get_file_and_gz_sizes('a.out.js')
93229318
js_size_file = expected_basename + '.jssize'
93239319
gz_size_file = expected_basename + '.gzsize'
93249320
self.check_expected_size_in_file('js', js_size_file, js_size)
@@ -11961,8 +11957,7 @@ def print_percent(actual, expected):
1196111957
f_gz = f + '.gz'
1196211958
expected_size = expected_results[f] if f in expected_results else float('inf')
1196311959
expected_size_gz = expected_results[f_gz] if f_gz in expected_results else float('inf')
11964-
size = os.path.getsize(f)
11965-
size_gz = get_file_gzipped_size(f)
11960+
size, size_gz = get_file_and_gz_sizes(f)
1196611961

1196711962
obtained_results[f] = size
1196811963
obtained_results[f_gz] = size_gz

0 commit comments

Comments
 (0)