Merge "Introduce initial minikin perftest"

This commit is contained in:
Seigo Nonaka
2016-06-09 03:31:45 +00:00
committed by Android (Google) Code Review
4 changed files with 87 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
#
# Copyright (C) 2016 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
LOCAL_PATH := $(call my-dir)
perftest_src_files := \
FontLanguage.cpp \
main.cpp
include $(CLEAR_VARS)
LOCAL_MODULE := minikin_perftests
LOCAL_CPPFLAGS := -Werror -Wall -Wextra
LOCAL_SRC_FILES := $(perftest_src_files)
LOCAL_STATIC_LIBRARIES := libminikin
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/../../libs/minikin \
external/harfbuzz_ng/src
include $(BUILD_NATIVE_BENCHMARK)

View File

@@ -0,0 +1,34 @@
/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <benchmark/benchmark.h>
#include "FontLanguage.h"
using android::FontLanguage;
static void BM_FontLanguage_en_US(benchmark::State& state) {
while (state.KeepRunning()) {
FontLanguage language("en-US", 5);
}
}
BENCHMARK(BM_FontLanguage_en_US);
static void BM_FontLanguage_en_Latn_US(benchmark::State& state) {
while (state.KeepRunning()) {
FontLanguage language("en-Latn-US", 10);
}
}
BENCHMARK(BM_FontLanguage_en_Latn_US);

View File

@@ -0,0 +1,4 @@
mmm -j8 frameworks/minikin/tests/perftests &&
adb push $OUT/data/benchmarktest/minikin_perftests/minikin_perftests \
/data/benchmarktest/minikin_perftests/minikin_perftests &&
adb shell /data/benchmarktest/minikin_perftests/minikin_perftests

View File

@@ -0,0 +1,18 @@
/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <benchmark/benchmark.h>
BENCHMARK_MAIN();