freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ftbench update: make integrated


From: Ahmet Göksu
Subject: Re: ftbench update: make integrated
Date: Wed, 12 Jul 2023 16:23:31 +0300

Hi,
BASELINE_DIR = $(OBJ_DIR)/baseline/
BENCHMARK_DIR = $(OBJ_DIR)/benchmark/
and i am stucked here
or the object file creation you have to use `$(CC)`, and for
the final linking you should use `$(LIBTOOL) --mode=link` in normal
unix build mode, and `$(CC)` otherwise. Have a look into the
`Makefile` of the 'freetype-demos' repository for more details.
creating obj file works great,
$(OBJ_DIR)/ftbench.$(SO): $(FTBENCH_SRC)
      @$(CC) $(INCLUDES) $< -lfreetype -o $@

but i am stucked to binary. 
$(FTBENCH_BIN): $(OBJ_DIR)/ftbench.$(SO) 
    $(LIBTOOL) --mode=link $(CC) $(subst /,$(f),$(LDFLAGS)) $^ -o $@ $(subst /,$(f),$(FTLIB) $(EFENCE))
i am trying to do it same way in the demos, yet didnt figured it out. 

Best,
Goksu
goksu.in
On 7 Jul 2023 07:55 +0300, Werner LEMBERG <wl@gnu.org>, wrote:

I thought you mean running make outside of the src/tools/ftbench
file (as how older version works) by non-sourcedir builds. if you
mean running from a seperate build directory, it is working now.

Thanks, will check that soon.

Well, as it turns out, it doesn't exactly work as a build from a
separate directory should work: The benchmark tests and the HTML page
are still created in the source directory! This must not happen.
Everything must be created in the build directory (except the output
of `./autogen.sh`, but this is not related to your work).

For fixing this I suggest to use two different (Unix) users: one for
testing, and one for modifying the source code, and the former has no
write access to the latter. You can then immediately identify where
`make baseline` and friends try to write to the source directory.

Some other remarks.

* I'm a bit unhappy about

```
Creating baseline...
```

as the only information while the computer churns and grinds, so to
say, for some time. I would rather like to see

```
Creating baseline
foo
bar
...
Baseline created
```

or something similar. An alternative (or addition) is to show a
percentage of how many fonts have been processed already.

* Please add links to the original baseline and benchmark `.txt`
files; they contain much more information than displayed on the HTML
page.


Werner

Benchmark Results

Warning: Baseline and Benchmark have the same commit ID

Info

InfoBaselineBenchmark
Parameters-c 200-c 200
Commit ID9c7800659c780065
Commit Date2023-07-12 15:16:41 +03002023-07-12 15:16:41 +0300
BranchGSoC-2023-AhmetGSoC-2023-Ahmet

*Smaller values mean faster operation

Results for Roboto_subset.ttf

Test N Baseline (ms) Benchmark (ms) Difference (%)
Load 24000 115.541 116.820 -1.1
Load_Advances (Normal) 24000 126.435 125.963 0.4
Load_Advances (Fast) 24000 0.646 0.684 -5.9
Load_Advances (Unscaled) 24000 0.569 0.568 0.2
Render 24000 88.266 89.721 -1.6
Get_Glyph 24000 37.032 36.593 1.2
Get_Char_Index 18800 0.583 0.531 8.9
Iterate CMap 200 0.478 0.409 14.4
New_Face 200 9.579 8.772 8.4
Embolden 24000 46.849 46.564 0.6
Stroke 24000 700.708 694.741 0.9
Get_BBox 24000 22.569 25.406 -12.6
Get_CBox 24000 17.722 18.594 -4.9
New_Face & load glyph(s) 24000 21.370 21.442 -0.3

Results for Arial_subset.ttf

Test N Baseline (ms) Benchmark (ms) Difference (%)
Load 19000 174.225 158.105 9.3
Load_Advances (Normal) 19000 150.410 142.973 4.9
Load_Advances (Fast) 19000 0.509 0.484 4.9
Load_Advances (Unscaled) 19000 0.468 0.469 -0.2
Render 19000 85.531 77.678 9.2
Get_Glyph 19000 34.912 33.264 4.7
Get_Char_Index 18800 0.798 0.536 32.8
Iterate CMap 200 0.694 0.409 41.1
New_Face 200 14.320 12.084 15.6
Embolden 19000 43.524 43.088 1.0
Stroke 19000 534.305 582.461 -9.0
Get_BBox 19000 20.412 21.126 -3.5
Get_CBox 19000 14.594 15.484 -6.1
New_Face & load glyph(s) 19000 22.327 22.309 0.1

Results for TimesNewRoman_subset.ttf

Test N Baseline (ms) Benchmark (ms) Difference (%)
Load 19000 185.300 181.873 1.8
Load_Advances (Normal) 19000 175.895 171.645 2.4
Load_Advances (Fast) 19000 0.498 0.555 -11.4
Load_Advances (Unscaled) 19000 0.472 0.510 -8.1
Render 19000 82.904 83.032 -0.2
Get_Glyph 19000 31.744 30.638 3.5
Get_Char_Index 18800 0.531 0.536 -0.9
Iterate CMap 200 0.408 0.408 0.0
New_Face 200 11.026 10.931 0.9
Embolden 19000 57.636 55.526 3.7
Stroke 19000 800.295 797.791 0.3
Get_BBox 19000 24.484 28.717 -17.3
Get_CBox 19000 16.093 17.449 -8.4
New_Face & load glyph(s) 19000 29.082 30.176 -3.8

Results for Tahoma_subset.ttf

Test N Baseline (ms) Benchmark (ms) Difference (%)
Load 19000 99.950 104.147 -4.2
Load_Advances (Normal) 19000 106.464 109.841 -3.2
Load_Advances (Fast) 19000 0.499 0.510 -2.2
Load_Advances (Unscaled) 19000 0.462 0.470 -1.7
Render 19000 67.269 69.975 -4.0
Get_Glyph 19000 29.915 30.512 -2.0
Get_Char_Index 18800 0.573 0.534 6.8
Iterate CMap 200 0.410 0.412 -0.5
New_Face 200 9.941 9.835 1.1
Embolden 19000 45.231 45.019 0.5
Stroke 19000 500.872 563.542 -12.5
Get_BBox 19000 24.181 18.762 22.4
Get_CBox 19000 17.973 13.759 23.4
New_Face & load glyph(s) 19000 21.261 21.143 0.6

Results for Verdana_subset.ttf

Test N Baseline (ms) Benchmark (ms) Difference (%)
Load 19000 95.137 123.316 -29.6
Load_Advances (Normal) 19000 100.505 146.036 -45.3
Load_Advances (Fast) 19000 0.504 0.545 -8.1
Load_Advances (Unscaled) 19000 0.479 0.705 -47.2
Render 19000 69.773 98.764 -41.6
Get_Glyph 19000 34.865 33.167 4.9
Get_Char_Index 18800 0.592 0.561 5.2
Iterate CMap 200 0.549 0.472 14.0
New_Face 200 14.107 10.994 22.1
Embolden 19000 48.804 43.989 9.9
Stroke 19000 489.753 493.519 -0.8
Get_BBox 19000 18.696 26.697 -42.8
Get_CBox 19000 13.647 18.015 -32.0
New_Face & load glyph(s) 19000 20.809 31.823 -52.9

Freetype Benchmark

reply via email to

[Prev in Thread] Current Thread [Next in Thread]