perf


Log

Author Commit Date CI Message
Behdad Esfahbod 13438da1 2023-07-02T12:56:13 [benchmark-font] Minor move a variable
Behdad Esfahbod 7d72fdd5 2023-07-02T09:55:37 [benchmark-font] Do some work in draw_glyph callbacks For no good reason other than matching what I'm adding to skrifa benchmark. Doesn't seem to affect benchmarks whatsoever.
Behdad Esfahbod 0fceaef0 2023-06-30T08:50:49 [benchmark-subset] Report in microseconds, not milli We're in that range now. :)
Behdad Esfahbod 547dc1a4 2023-06-30T08:48:43 [benchmark-font] Add load_face_and_shape benchmark To measure face-loading performance
Behdad Esfahbod fcf70af1 2023-06-30T08:43:10 [perf] Fix break
Behdad Esfahbod 17f29c81 2023-06-29T13:27:09 [benchmark_font/draw_glyphs] Implement quadratic_to Not interested in the fallback implementation here.
Behdad Esfahbod 41f85d01 2023-06-27T12:50:04 [benchmark-font] Add RobotoFlex We didn't have a variable TTF before!
Behdad Esfahbod 3a827123 2023-06-23T11:16:57 [benchmark-subset] Free cached face upon exist For better valgrind output.
Garret Rieger 6b0d3867 2023-06-01T23:59:55 [subset] in subset benchmarks switch nohinting with retaingids. retain gids is a more interesting case than no hinting for performance.
Garret Rieger f41c5ec9 2023-06-01T18:38:05 [map] update map benchmark to also test lookups that hit.
Behdad Esfahbod 7f111787 2023-05-27T12:41:05 [benchmark-map] Remove overhead
Behdad Esfahbod 56668073 2023-05-27T12:37:36 [benchmark-map] Improve Insert benchmark Previously it was enlarging the map depending on whatever number of runs the benchmark-runner decided to run the loop. That wasn't very useful...
Behdad Esfahbod fc8dfe64 2023-04-24T14:39:20 [benchmark-font] Minor rename
Behdad Esfahbod 3c972867 2022-12-22T11:40:06 More s/hb_font_get_glyph_shape/hb_font_draw_glyph/
Behdad Esfahbod 7f73b57b 2022-12-10T17:35:52 [subset] Graduate L1 instancing API from experimental Fixes https://github.com/harfbuzz/harfbuzz/issues/3926
Garret Rieger eda02c2e 2022-12-05T20:18:41 [subset] Move hb_subset_preprocess to be non-experimental.
Behdad Esfahbod 29903f46 2022-12-02T17:45:01 [benchmark-subset] Cache (preprocessed) face amongst runs
Behdad Esfahbod 20a0a467 2022-11-30T15:59:54 [perf] Remove stale run.sh
Behdad Esfahbod 38e7bc34 2022-11-30T15:01:38 [benchmark-subset] Support testing arbitrary fonts from cmdline
Behdad Esfahbod fad8322b 2022-11-27T15:09:48 [benchmark-subset] Add no-hinting ops
Behdad Esfahbod 1e6f77c2 2022-11-26T15:31:56 [benchmark-subset] Adjust num glyphs more
Behdad Esfahbod 0382defa 2022-11-26T15:27:07 [benchmark-subset] Adjust number of glyphs of fonts
Behdad Esfahbod 4cb441df 2022-11-26T15:23:07 [benchmark-subset] Add AdobeVFPrototype
Behdad Esfahbod b6df3471 2022-11-23T20:15:16 [perf] Add Hindi test to benchmark-shape
Behdad Esfahbod 44396197 2022-11-16T16:35:00 [perf] Add fa-words.txt and use in shape benchmark
Garret Rieger d1bf6c0c 2022-10-17T20:14:02 [subset] only preprocess in benchmark when experimental api is enabled.
Garret Rieger 515863e5 2022-10-13T23:42:00 [subset] Remove add accelerator flag, replace with new api method. Adds hb_subset_preprocess() which preprocesses the face and attaches accelerator data.
Garret Rieger 3394ec70 2022-10-13T23:02:54 [subset] use subset accelerator in tests. This ensures it produces equivalent subsets as without the accelerator.
Garret Rieger f4903def 2022-10-13T21:38:54 [subset] use the accelerator in the subsetting benchmark.
Behdad Esfahbod 238e7dd2 2022-09-01T13:24:01 Fix build
Qunxin Liu 47094490 2022-08-31T12:01:32 [instance] add benchmarks for instancing
Behdad Esfahbod 031fd20a 2022-06-30T13:50:18 [perf] Update README
Behdad Esfahbod 98fbe87a 2022-06-27T11:48:59 [benchmark-font] Disable quadratic callback We are interested in the quadratic-to-cubic codepath benchmarking.
Behdad Esfahbod 697287fb 2022-06-05T06:53:42 [benchmark-shape,hb-shape-threads] Fix argument parsing order After recent change.
Behdad Esfahbod 2dec7420 2022-06-05T02:04:02 [benchmark-shape] Remove a few tests They were not adding value.
Behdad Esfahbod 3c258e13 2022-06-05T02:01:17 [benchmark-shape] Reorder text vs font order for better output
Behdad Esfahbod 9eab6d32 2022-05-26T12:00:45 [benchmark-set] Another Pause/Resume
Behdad Esfahbod f371789b 2022-05-28T04:02:36 Sprinkle static around
Behdad Esfahbod 33c990f0 2022-05-27T16:57:00 Include cassert to fix bots
Behdad Esfahbod 0fe18692 2022-05-24T17:49:15 [benchmark-set] Pause timing around set copy initialization
Behdad Esfahbod ce5435a8 2022-05-24T16:34:04 [benchmark-set] Remove use of rand() inside benchmark
Behdad Esfahbod 8a7cfe17 2022-05-23T14:36:06 [perf/benchmark-shape] Test ft font backend as well
Behdad Esfahbod e1f4445d 2022-05-21T15:11:53 [benchmark-shape] Allow taking multiple tests from cmdline
Behdad Esfahbod 1bf2d5f8 2022-05-21T14:42:50 [perf/benchmark-shape] Allow taking text-file/font-file args from cmdline
Behdad Esfahbod 852a8f04 2022-05-21T14:31:09 [perf/benchmark-font] Allow benchmarking fonts specified on cmdline
Behdad Esfahbod da4b6f15 2022-05-20T17:21:04 [benchmark-shape] Add variable fonts
Behdad Esfahbod 0623aa59 2022-05-19T14:12:42 [benchmark-set] Add benchmark for set copy
Behdad Esfahbod 3e4ab2ad 2022-05-18T11:16:46 [perf/benchmark-ot] Add zh-hans
Behdad Esfahbod 6e668a2a 2022-05-18T11:16:11 [perf/benchmark-ot] Rename test
Behdad Esfahbod f5d619be 2022-05-18T11:04:52 [ot-tags] Further gate the slow complex case, and add more tests Part of https://github.com/harfbuzz/harfbuzz/issues/3591 Still 'zh-trad' is the slowest case. -------------------------------------------------------------------------------------------------- Benchmark Time CPU Iterations -------------------------------------------------------------------------------------------------- BM_hb_ot_tags_from_script_and_language/COMMON zh_trad 136 ns 136 ns 5107838 BM_hb_ot_tags_from_script_and_language/COMMON ab_abcd 115 ns 115 ns 6103104 BM_hb_ot_tags_from_script_and_language/COMMON ab_abc 25.4 ns 25.3 ns 27674482 BM_hb_ot_tags_from_script_and_language/COMMON abcdef_XY 20.2 ns 20.1 ns 34795719 BM_hb_ot_tags_from_script_and_language/COMMON abcd_XY 19.4 ns 19.3 ns 36390401 BM_hb_ot_tags_from_script_and_language/COMMON cxy_CN 33.5 ns 33.4 ns 20998939 BM_hb_ot_tags_from_script_and_language/COMMON exy_CN 25.1 ns 25.0 ns 27705832 BM_hb_ot_tags_from_script_and_language/COMMON zh_CN 34.2 ns 34.1 ns 20564356 BM_hb_ot_tags_from_script_and_language/COMMON en_US 15.5 ns 15.5 ns 45032204 BM_hb_ot_tags_from_script_and_language/LATIN en_US 15.9 ns 15.8 ns 44412379 BM_hb_ot_tags_from_script_and_language/COMMON none 4.72 ns 4.71 ns 149101665 BM_hb_ot_tags_from_script_and_language/LATIN none 4.72 ns 4.70 ns 149254498
Behdad Esfahbod b231fc2d 2022-05-17T17:02:48 [perf/benchmark-ot] Add a couple more test cases
Behdad Esfahbod 3524b14f 2022-05-17T17:02:48 [perf/benchmark-ot] Add a couple more test cases
Behdad Esfahbod 0ff5d36c 2022-05-17T16:34:52 [perf/benchmark-ot] Fix benchmark Part of https://github.com/harfbuzz/harfbuzz/issues/3591 Ouch! These are the current numbers: ------------------------------------------------------------------------------------------------ Benchmark Time CPU Iterations ------------------------------------------------------------------------------------------------ BM_hb_ot_tags_from_script_and_language/COMMON abcd_XY 78.0 ns 77.7 ns 8917912 BM_hb_ot_tags_from_script_and_language/COMMON zh_CN 44.9 ns 44.8 ns 15475318 BM_hb_ot_tags_from_script_and_language/COMMON en_US 17.6 ns 17.5 ns 39812340 BM_hb_ot_tags_from_script_and_language/LATIN en_US 18.2 ns 18.1 ns 38356204 BM_hb_ot_tags_from_script_and_language/COMMON none 4.76 ns 4.74 ns 148746131 BM_hb_ot_tags_from_script_and_language/LATIN none 4.73 ns 4.71 ns 148421349
Behdad Esfahbod 407a135b 2022-05-17T14:45:45 [perf/benchmark-ot] Add one more test
Behdad Esfahbod 26d906b8 2022-05-17T13:12:17 [perf] Add benchmark-ot
Behdad Esfahbod 629fa8ee 2022-05-16T17:44:50 [perf/benchmark-font] Test Roboto as variable even though it's not
Behdad Esfahbod 71a0cda8 2022-05-16T17:43:48 [perf/benchmark-font] Only certain fonts are variable Don't test every font as variable.
Garret Rieger e4e053c8 2022-05-13T17:00:57 [perf] fix typo in perf Makefile.
Behdad Esfahbod 7edd54f3 2022-05-10T18:44:14 [perf/benchmark-subset] Minor cleanup
Garret Rieger 52d59bf1 2022-05-10T19:40:37 [perf] Make subset benchmark data driven.
Garret Rieger 5277a577 2022-05-10T18:14:25 [perf] Add benchmarks for CFF subsetting.
Garret Rieger bc5129d7 2022-05-04T22:16:03 [perf] use option_t in subset benchmark to select between glyphs and codepoint subset.
Garret Rieger 6212856c 2022-05-04T22:16:03 [perf] benchmark subsetting via glyphs.
Behdad Esfahbod f67e6bf7 2022-05-02T16:59:48 [perf/benchmark-font] Add benchmark for glyph_h_advance
Behdad Esfahbod 1c0a3d4d 2022-05-02T16:50:54 [perf/benchmark-font] Add a couple Noto fonts
Behdad Esfahbod 3fff2e91 2022-05-02T16:31:59 [perf/benchmark-font] Cosmetic
Behdad Esfahbod 0d1f8dca 2022-05-02T16:18:53 [perf/benchmark-font] Actually make nominal_glyph bench work
Behdad Esfahbod 6cf69d10 2022-05-02T16:07:32 [perf/benchmark-font] Add back testing of is_variable
Behdad Esfahbod 3aa2ff79 2022-05-02T16:01:22 [perf/benchmark-font] Fix build without freetype
Behdad Esfahbod 58a0988b 2022-05-02T15:57:19 [perf/benchmark-font] Benchmark get_nominal_glyph
Behdad Esfahbod 6d29903e 2022-05-02T14:03:15 [perf/benchmark-font] Parametrize test
Behdad Esfahbod 636c90e8 2022-05-02T13:41:49 [perf/perf] Rename to benchmark-font
Behdad Esfahbod 036d03d2 2022-05-02T13:39:54 [perf/perf] Move all logic to perf-draw, for now To be renamed.
Behdad Esfahbod 746c3c03 2022-05-02T13:26:41 [perf/perf] Remove ttf-parser backend
Behdad Esfahbod 4aaa0af7 2022-05-02T13:06:27 [perf/perf] Rely on hb-draw to measure ft performance
Behdad Esfahbod 217d38df 2022-04-29T16:18:17 Try to fix distcheck
Behdad Esfahbod 35681b3e 2022-04-29T16:02:55 [benchmark-shape] Break lines and shape separately
Behdad Esfahbod be1ac9c5 2022-04-29T15:55:19 [benchmark-shape] Data-driven test sets
Behdad Esfahbod ae3efc64 2022-04-29T15:37:11 [perf] Spawn off benchmark-shape from perf runner
Behdad Esfahbod 5f43ce82 2022-04-29T13:37:46 [benchmark-set] Split SetLookup into an ordered and random version
Behdad Esfahbod ae9c7b86 2022-04-29T13:39:04 [benchmark-set] At least increase needle by one in lookup benchmark
Behdad Esfahbod 68a9b83d 2022-04-29T13:27:42 [benchmark-set] At least increase needle by one in lookup benchmark
Behdad Esfahbod 5866ec05 2022-04-29T13:14:41 [benchmark-map] Remove rand() overhead from benchmark
Behdad Esfahbod dd005911 2022-04-29T12:23:53 [benchmark-set] Reduce lookup benchmark overhead Turnsout 90% was overhead... Now lookup is in the 4ns ballpark.
Behdad Esfahbod 4c177de1 2022-04-21T13:51:37 [perf] Err. Remove HUGE font from perf suite
Behdad Esfahbod 7f7ebdc6 2022-04-21T11:25:12 [perf] Reuse a font
Garret Rieger 85142f32 2022-04-20T22:32:54 [perf] Add missing ninja command in profiling instructions.
Garret Rieger a5cf9178 2022-04-20T22:31:26 [perf] Update readme with profiling instructions.
Behdad Esfahbod df3ecea7 2022-04-20T16:06:06 [perf/perf] Fix run when ttfparser is not available
Garret Rieger f48647e5 2022-04-20T22:08:33 In perf/README update meson command line to set release build type.
Garret Rieger b3ce96da 2022-04-20T21:51:20 [perf] Add several more fonts to the subset benchmarks.
Behdad Esfahbod 9ad30036 2022-04-20T15:53:37 [perf/perf-draw] Port to new draw API
Behdad Esfahbod 23c7c305 2022-04-20T15:45:37 [perf/benchmark-map] Adjust range specifiers
Garret Rieger 2b03bced 2022-04-20T21:34:45 [perf] Cleanup range specifiers in set benchmark.
Garret Rieger 178c6700 2022-04-20T21:19:54 [perf] Rework set insert test to not use pause/resume timing. These have high overhead which affect the result. Also change set iteration to time the individual iteration operation.
Garret Rieger fbd183d0 2022-04-20T20:05:14 [perf] Start writing subset benchmarks.
Garret Rieger fc2027bf 2022-04-20T19:33:04 [perf] Add map benchmarks.
Garret Rieger 057ec2c9 2022-04-20T19:15:03 [perf] Add set ieration and lookup benchmarks.
Garret Rieger 40975fc3 2022-04-20T18:54:36 [perf] Add some instructions for building/running benchmarks.
Garret Rieger cef64b94 2022-04-20T18:36:35 [perf] Add the start of a benchmark for set operations.