Skip to content

Commit b69fe99

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 d8a6db2 commit b69fe99

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": 1288,
7-
"a.wasm.gz": 867,
7+
"a.wasm.gz": 860,
88
"total": 5660,
9-
"total_gz": 3281
9+
"total_gz": 3262
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": 7266,
5-
"a.js.gz": 3321,
5+
"a.js.gz": 3316,
66
"a.wasm": 7294,
7-
"a.wasm.gz": 3346,
7+
"a.wasm.gz": 3339,
88
"total": 15112,
9-
"total_gz": 7047
9+
"total_gz": 7028
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": 5367,
5-
"a.js.gz": 2540,
5+
"a.js.gz": 2535,
66
"a.wasm": 7468,
7-
"a.wasm.gz": 3468,
7+
"a.wasm.gz": 3461,
88
"total": 13387,
9-
"total_gz": 6388
9+
"total_gz": 6369
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": 1885,
7-
"a.wasm.gz": 1079,
7+
"a.wasm.gz": 1072,
88
"total": 3234,
9-
"total_gz": 1973
9+
"total_gz": 1954
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": 8278,
7-
"a.wasm.gz": 5627,
7+
"a.wasm.gz": 5620,
88
"total": 13118,
9-
"total_gz": 8207
9+
"total_gz": 8188
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": 18103,
5-
"a.js.gz": 9771,
5+
"a.js.gz": 9766,
66
"total": 18449,
7-
"total_gz": 10033
7+
"total_gz": 10021
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": 8278,
7-
"a.wasm.gz": 5627,
7+
"a.wasm.gz": 5620,
88
"total": 12656,
9-
"total_gz": 8047
9+
"total_gz": 8028
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": 17630,
5-
"a.js.gz": 9603,
5+
"a.js.gz": 9598,
66
"total": 17976,
7-
"total_gz": 9865
7+
"total_gz": 9853
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": 2678,
7-
"a.wasm.gz": 1655,
7+
"a.wasm.gz": 1648,
88
"total": 3340,
9-
"total_gz": 2160
9+
"total_gz": 2141
1010
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"a.html": 12511,
3-
"a.html.gz": 6855,
3+
"a.html.gz": 6848,
44
"total": 12511,
5-
"total_gz": 6855
5+
"total_gz": 6848
66
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"a.html": 17224,
3-
"a.html.gz": 7558,
3+
"a.html.gz": 7551,
44
"total": 17224,
5-
"total_gz": 7558
5+
"total_gz": 7551
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-
3632
1+
3623
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):
@@ -9322,8 +9319,7 @@ def run_codesize_test(self, filename, cflags, check_funcs=True, check_full_js=Fa
93229319

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

9325-
js_size = os.path.getsize('a.out.js')
9326-
gz_size = get_file_gzipped_size('a.out.js')
9322+
js_size, gz_size = get_file_and_gz_sizes('a.out.js')
93279323
js_size_file = expected_basename + '.jssize'
93289324
gz_size_file = expected_basename + '.gzsize'
93299325
self.check_expected_size_in_file('js', js_size_file, js_size)
@@ -11962,8 +11958,7 @@ def print_percent(actual, expected):
1196211958
f_gz = f + '.gz'
1196311959
expected_size = expected_results[f] if f in expected_results else float('inf')
1196411960
expected_size_gz = expected_results[f_gz] if f_gz in expected_results else float('inf')
11965-
size = os.path.getsize(f)
11966-
size_gz = get_file_gzipped_size(f)
11961+
size, size_gz = get_file_and_gz_sizes(f)
1196711962

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

0 commit comments

Comments
 (0)