Commit 53c3ea8f by Cody Northrop Committed by Commit Bot

Perf: Add a trace of Angry Birds 2

Test: angle_perftests --gtest_filter="*Trace*" Bug: b/157672184 Change-Id: If4885398aff73ce774987fbeefb63d140f7fab1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2233367 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: 's avatarCourtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent a6c8e1c0
{
"src/tests/perf_tests/restricted_traces/angry_birds_2_1500.tar.gz.sha1":
"2965c213af0918e5b2ab1a495af45c3d",
"src/tests/perf_tests/restricted_traces/candy_crush_500.tar.gz.sha1":
"df8be1c5112ba9d623b94e682d8fa72b",
"src/tests/perf_tests/restricted_traces/egypt_1500.tar.gz.sha1":
......@@ -8,11 +10,11 @@
"src/tests/perf_tests/restricted_traces/manhattan_10.tar.gz.sha1":
"b4d333cd5cf3977c339350be0a819928",
"src/tests/perf_tests/restricted_traces/restricted_traces.json":
"95edbf8e21748fa2f3bf0a77016d0511",
"de1d1c2086bd4f5249f5bdbdf0d2a854",
"src/tests/perf_tests/restricted_traces/restricted_traces_autogen.gni":
"16fe33a4ec6e109a05461d4f5276feb2",
"25de059705d29d797e246aae027498ec",
"src/tests/perf_tests/restricted_traces/restricted_traces_autogen.h":
"e59a1290ee3bdf627b9ea34dfbac440f",
"8e936a5ca01c2374c627c8a494a3220a",
"src/tests/perf_tests/restricted_traces/subway_surfer_500.tar.gz.sha1":
"a7d9e6db6a74b9a927677f7b91307316",
"src/tests/perf_tests/restricted_traces/temple_run_300.tar.gz.sha1":
......
d99797ec545eb8140706e3259442a96240118cd9
\ No newline at end of file
......@@ -7,11 +7,12 @@
"restricted_traces.json: List of restricted trace tests in ANGLE."
],
"traces": [
"angry_birds_2_1500",
"candy_crush_500",
"egypt_1500",
"manhattan_10",
"temple_run_300",
"trex_200",
"subway_surfer_500",
"candy_crush_500"
"temple_run_300",
"trex_200"
]
}
......@@ -9,10 +9,11 @@
# Can be consumed by tests/BUILD.gn.
angle_restricted_traces = [
"angry_birds_2_1500 3",
"candy_crush_500 2",
"egypt_1500 1",
"manhattan_10 1",
"subway_surfer_500 4",
"temple_run_300 3",
"trex_200 1",
"subway_surfer_500 4",
"candy_crush_500 2",
]
......@@ -10,6 +10,7 @@
#ifndef ANGLE_RESTRICTED_TRACES_H_
#define ANGLE_RESTRICTED_TRACES_H_
#include "angry_birds_2_1500/angry_birds_2_1500_capture_context3.h"
#include "candy_crush_500/candy_crush_500_capture_context2.h"
#include "egypt_1500/egypt_1500_capture_context1.h"
#include "manhattan_10/manhattan_10_capture_context1.h"
......@@ -21,12 +22,13 @@ namespace angle
{
enum class RestrictedTraceID
{
angry_birds_2_1500,
candy_crush_500,
egypt_1500,
manhattan_10,
subway_surfer_500,
temple_run_300,
trex_200,
subway_surfer_500,
candy_crush_500,
InvalidEnum,
EnumCount = InvalidEnum
};
......@@ -47,19 +49,22 @@ struct TraceInfo
};
constexpr angle::PackedEnumMap<RestrictedTraceID, TraceInfo> kTraceInfos = {
{RestrictedTraceID::angry_birds_2_1500,
{angry_birds_2_1500::kReplayFrameStart, angry_birds_2_1500::kReplayFrameEnd,
"angry_birds_2_1500"}},
{RestrictedTraceID::candy_crush_500,
{candy_crush_500::kReplayFrameStart, candy_crush_500::kReplayFrameEnd, "candy_crush_500"}},
{RestrictedTraceID::egypt_1500,
{egypt_1500::kReplayFrameStart, egypt_1500::kReplayFrameEnd, "egypt_1500"}},
{RestrictedTraceID::manhattan_10,
{manhattan_10::kReplayFrameStart, manhattan_10::kReplayFrameEnd, "manhattan_10"}},
{RestrictedTraceID::temple_run_300,
{temple_run_300::kReplayFrameStart, temple_run_300::kReplayFrameEnd, "temple_run_300"}},
{RestrictedTraceID::trex_200,
{trex_200::kReplayFrameStart, trex_200::kReplayFrameEnd, "trex_200"}},
{RestrictedTraceID::subway_surfer_500,
{subway_surfer_500::kReplayFrameStart, subway_surfer_500::kReplayFrameEnd,
"subway_surfer_500"}},
{RestrictedTraceID::candy_crush_500,
{candy_crush_500::kReplayFrameStart, candy_crush_500::kReplayFrameEnd, "candy_crush_500"}}};
{RestrictedTraceID::temple_run_300,
{temple_run_300::kReplayFrameStart, temple_run_300::kReplayFrameEnd, "temple_run_300"}},
{RestrictedTraceID::trex_200,
{trex_200::kReplayFrameStart, trex_200::kReplayFrameEnd, "trex_200"}}};
using DecompressCallback = uint8_t *(*)(const std::vector<uint8_t> &);
using FramebufferChangeCallback = void (*)(void *userData, GLenum target, GLuint framebuffer);
......@@ -68,24 +73,27 @@ inline void ReplayFrame(RestrictedTraceID traceID, uint32_t frameIndex)
{
switch (traceID)
{
case RestrictedTraceID::angry_birds_2_1500:
angry_birds_2_1500::ReplayContext3Frame(frameIndex);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::ReplayContext2Frame(frameIndex);
break;
case RestrictedTraceID::egypt_1500:
egypt_1500::ReplayContext1Frame(frameIndex);
break;
case RestrictedTraceID::manhattan_10:
manhattan_10::ReplayContext1Frame(frameIndex);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::ReplayContext4Frame(frameIndex);
break;
case RestrictedTraceID::temple_run_300:
temple_run_300::ReplayContext3Frame(frameIndex);
break;
case RestrictedTraceID::trex_200:
trex_200::ReplayContext1Frame(frameIndex);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::ReplayContext4Frame(frameIndex);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::ReplayContext2Frame(frameIndex);
break;
default:
fprintf(stderr, "Error in switch.\n");
assert(0);
......@@ -97,24 +105,27 @@ inline void ResetReplay(RestrictedTraceID traceID)
{
switch (traceID)
{
case RestrictedTraceID::angry_birds_2_1500:
angry_birds_2_1500::ResetContext3Replay();
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::ResetContext2Replay();
break;
case RestrictedTraceID::egypt_1500:
egypt_1500::ResetContext1Replay();
break;
case RestrictedTraceID::manhattan_10:
manhattan_10::ResetContext1Replay();
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::ResetContext4Replay();
break;
case RestrictedTraceID::temple_run_300:
temple_run_300::ResetContext3Replay();
break;
case RestrictedTraceID::trex_200:
trex_200::ResetContext1Replay();
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::ResetContext4Replay();
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::ResetContext2Replay();
break;
default:
fprintf(stderr, "Error in switch.\n");
assert(0);
......@@ -126,24 +137,27 @@ inline void SetupReplay(RestrictedTraceID traceID)
{
switch (traceID)
{
case RestrictedTraceID::angry_birds_2_1500:
angry_birds_2_1500::SetupContext3Replay();
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetupContext2Replay();
break;
case RestrictedTraceID::egypt_1500:
egypt_1500::SetupContext1Replay();
break;
case RestrictedTraceID::manhattan_10:
manhattan_10::SetupContext1Replay();
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetupContext4Replay();
break;
case RestrictedTraceID::temple_run_300:
temple_run_300::SetupContext3Replay();
break;
case RestrictedTraceID::trex_200:
trex_200::SetupContext1Replay();
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetupContext4Replay();
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetupContext2Replay();
break;
default:
fprintf(stderr, "Error in switch.\n");
assert(0);
......@@ -155,24 +169,27 @@ inline void SetBinaryDataDir(RestrictedTraceID traceID, const char *dataDir)
{
switch (traceID)
{
case RestrictedTraceID::angry_birds_2_1500:
angry_birds_2_1500::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::egypt_1500:
egypt_1500::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::manhattan_10:
manhattan_10::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::temple_run_300:
temple_run_300::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::trex_200:
trex_200::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetBinaryDataDir(dataDir);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetBinaryDataDir(dataDir);
break;
default:
fprintf(stderr, "Error in switch.\n");
assert(0);
......@@ -184,24 +201,27 @@ inline void SetBinaryDataDecompressCallback(RestrictedTraceID traceID, Decompres
{
switch (traceID)
{
case RestrictedTraceID::angry_birds_2_1500:
angry_birds_2_1500::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::egypt_1500:
egypt_1500::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::manhattan_10:
manhattan_10::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::temple_run_300:
temple_run_300::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::trex_200:
trex_200::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetBinaryDataDecompressCallback(callback);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetBinaryDataDecompressCallback(callback);
break;
default:
fprintf(stderr, "Error in switch.\n");
assert(0);
......@@ -215,24 +235,27 @@ inline void SetFramebufferChangeCallback(RestrictedTraceID traceID,
{
switch (traceID)
{
case RestrictedTraceID::angry_birds_2_1500:
angry_birds_2_1500::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::egypt_1500:
egypt_1500::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::manhattan_10:
manhattan_10::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::temple_run_300:
temple_run_300::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::trex_200:
trex_200::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::subway_surfer_500:
subway_surfer_500::SetFramebufferChangeCallback(userData, callback);
break;
case RestrictedTraceID::candy_crush_500:
candy_crush_500::SetFramebufferChangeCallback(userData, callback);
break;
default:
fprintf(stderr, "Error in switch.\n");
assert(0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment