Home
last modified time | relevance | path

Searched full:branch (Results 1 – 25 of 73) sorted by relevance

123

/system/extras/simpleperf/scripts/
Dupdate.py84 def fetch_artifact(branch, build, target, name): argument
90 target, branch, name)
92 cmd = [fetch_artifact_path, '--branch', branch, '--target', target,
98 """Creates a new branch in the project."""
100 logger().info('Creating branch %s', branch_name)
104 def commit(branch, build, add_paths): argument
111 Taken from branch {branch}.""").format(branch=branch, build=build)
127 def install_new_release(branch, build, install_dir): argument
130 install_entry(branch, build, install_dir, entry)
133 def install_entry(branch, build, install_dir, entry): argument
[all …]
DCONTRIBUTING.md9 Changes are normally reviewed on top of the AOSP `master` branch.
/system/extras/simpleperf/
Dbranch_list.proto17 // The branch list file format is generated by the inject command. The new format is:
47 // vaddr in binary, instr addr before the first branch
50 message Branch { message
51 // Each bit represents a branch: 0 for not branch, 1 for branch.
53 bytes branch = 1; field
58 repeated Branch branches = 2;
88 repeated Branch branches = 3;
90 message Branch { message
DETMDecoder.h45 // If the last instruction is a branch instruction, and it branches
49 // times the branch is taken
51 // times the branch isn't taken
56 // the binary containing the branch list
58 // the instruction address before the first branch. Bit 0 is set for thumb instructions.
60 // the branch list (one bit for each branch, true for branch taken, false for not taken)
61 std::vector<bool> branch; member
DBranchListFile.cpp27 std::string ETMBranchToProtoString(const std::vector<bool>& branch) { in ETMBranchToProtoString() argument
28 size_t bytes = (branch.size() + 7) / 8; in ETMBranchToProtoString()
30 for (size_t i = 0; i < branch.size(); i++) { in ETMBranchToProtoString()
31 if (branch[i]) { in ETMBranchToProtoString()
39 std::vector<bool> branch(bit_size, false); in ProtoStringToETMBranch() local
42 branch[i] = true; in ProtoStringToETMBranch()
45 return branch; in ProtoStringToETMBranch()
205 [this](const ETMBranchList& branch) { ProcessBranchList(branch); }); in ProcessRecord() argument
286 ++branch_map[branch_list.addr][branch_list.branch]; in ProcessBranchList()
387 for (const auto& [branch, _] : branch_map) { in Write()
[all …]
DBranchListFile_test.cpp26 std::vector<bool> branch; in TEST() local
28 branch.push_back(i % 2 == 0); in TEST()
29 std::string s = ETMBranchToProtoString(branch); in TEST()
32 ASSERT_EQ(b, branch[j]); in TEST()
34 std::vector<bool> branch2 = ProtoStringToETMBranch(s, branch.size()); in TEST()
35 ASSERT_EQ(branch, branch2); in TEST()
66 for (const auto& [branch, count1] : b_map1) { in IsETMDataEqual()
67 auto it3 = b_map2.find(branch); in IsETMDataEqual()
127 LBRBranch branch = {0, 1, from_addr, to_addr}; in TEST() local
128 LBRSample sample = {0, from_addr, {branch}}; in TEST()
Dcmd_inject_test.cpp101 ASSERT_TRUE(RunInjectCmd({"--output", "branch-list", "-o", tmpfile.path})); in TEST()
114 ASSERT_TRUE(RunInjectCmd({"--output", "branch-list", "-z", "-o", tmpfile.path})); in TEST()
125 {"--binary", "not_exist_binary", "--output", "branch-list", "-o", tmpfile.path})); in TEST()
144 // Inject through etm branch list. in TEST()
147 ASSERT_TRUE(RunInjectCmd({"-i", recording_file, "-o", tmpfile.path, "--output", "branch-list"})); in TEST()
193 ASSERT_TRUE(RunInjectCmd({"--output", "branch-list", "-o", tmpfile.path})); in TEST()
197 "branch-list", "-o", tmpfile2.path})); in TEST()
202 // Accept invalid branch list files. in TEST()
207 "branch-list", "-o", tmpfile2.path})); in TEST()
218 ASSERT_TRUE(RunInjectCmd({"--output", "branch-list", "-o", branch_list_files.back()->path})); in TEST()
[all …]
Dcmd_inject.cpp134 // Base class for reading perf.data and generating AutoFDO or branch list data.
265 // Read perf.data with ETM data and generate AutoFDO or branch list data.
296 [this](const ETMBranchList& branch) { ProcessETMBranchList(branch); }); in ProcessRecord() argument
341 LOG(WARNING) << "--exclude-perf has no effect on perf.data with etm branch list"; in ProcessETMBranchListFeature()
344 LOG(ERROR) << "convert to autofdo format isn't support on perf.data with etm branch list"; in ProcessETMBranchListFeature()
379 ++branch_map[branch_list.addr][branch_list.branch]; in ProcessETMBranchList()
409 // Store etm branch list data.
425 const LBRBranch& branch = sample.branches[i]; in ConvertLBRDataToAutoFDO() local
426 if (branch.from_binary_id == 0) { in ConvertLBRDataToAutoFDO()
429 if (branch.from_binary_id > binaries.size()) { in ConvertLBRDataToAutoFDO()
[all …]
DETMDecoder.cpp344 // Similar to ITrcGenElemIn, but add next instruction info, which is needed to get branch to addr
465 // OpenCSD may cache a list of InstrRange elements, making it inaccurate to get branch to in ProcessElement()
478 // It is based on the assumption that we only do immediate branch inside a binary, in ProcessElement()
540 // 2. Branch to addresses of direct branch instructions across binaries.
548 ETMBranchList branch; member
559 LOG(WARNING) << "branch list collection isn't accurate with non-zero speculation length"; in CheckConfigs()
565 LOG(WARNING) << "branch list collection will lose some data with return stack enabled"; in CheckConfigs()
584 // Flush branch when seeing an Addr packet. Because it isn't correct to concatenate in ProcessPacket()
593 // An atom packet contains a branch list. We may receive one or more atom packets in a row, in ProcessPacket()
599 // Flush branch when seeing a flush or reset operation. in ProcessPacket()
[all …]
Devent_table.json17 ["0x000D", "BR_IMMED_RETIRED", "Branch Instruction architecturally executed, immediate"],
18 …["0x000E", "BR_RETURN_RETIRED", "Branch Instruction architecturally executed, procedure return, ta…
20 …["0x0010", "BR_MIS_PRED", "Branch instruction Speculatively executed, mispredicted or not predicte…
22 ["0x0012", "BR_PRED", "Predictable branch instruction Speculatively executed"],
36 ["0x0021", "BR_RETIRED", "Instruction architecturally executed, branch"],
37 … ["0x0022", "BR_MIS_PRED_RETIRED", "Branch Instruction architecturally executed, mispredicted "],
114 ["0x0078", "BR_IMMED_SPEC", "Branch Speculatively executed, immediate branch"],
115 ["0x0079", "BR_RETURN_SPEC", "Branch Speculatively executed, procedure return"],
116 ["0x007A", "BR_INDIRECT_SPEC", "Branch Speculatively executed, indirect branch"],
383 ["0x8107", "BR_SKIP_RETIRED", "Branch Instruction architecturally executed, not taken"],
[all …]
DREADME.md16 To snap the aosp-simpleperf-release branch to ToT AOSP main and kick off a
19 and choose "aosp-simpleperf-release" from the "Branch" dropdown. Then click
46 Download ndk branch.
Devent_table_generator.py36 "branch-instructions",
37 "branch-misses",
85 ["branch", "PERF_COUNT_HW_CACHE_BPU"],
/system/chre/
Dbundle_chre.sh10 BRANCH=`git rev-parse --abbrev-ref --symbolic-full-name @{u}`
11 HEAD_HASH=`git describe --always --long $BRANCH`
13 git bundle create $FILENAME $BRANCH
16 echo "Created bundle for $BRANCH as $FILENAME"
/system/extras/simpleperf/doc/
Dcollect_lbr_data_for_autofdo.md21 instructions for collecting Last Branch Record (LBR) related profiles on
49 cache performance and reduce branch mispredictions.
80 parameters include instruction cycles, cache hits, cache misses, branch
83 Branch Record (LBR) is indeed a part of Intel's Performance Monitoring
87 The Last Branch Record (LBR) is an advanced CPU feature designed to
89 executed branch instructions. This capability serves as a vital tool for
96 **Branch Statistics**: One of the remarkable applications of LBR is its
97 ability to gather comprehensive branch statistics in C++ programs. This
118 branch instructions, preserving a trail of execution paths.
134 compared to traditional software-based branch recording methods, making
[all …]
Dcollect_etm_data_for_autofdo.md9 Coresight components. ETM data contains branch records, similar to Last Branch Records (LBRs) on
46 # into an intermediate branch-list format.
47 redfin:/data/local/tmp \# simpleperf inject --output branch-list -o branch_list.data
58 # perf_inject.data is a text file, containing branch counts for each library.
73 The generated perf_inject.data may contain branch info for multiple binaries. But AutoFDO only
80 branch with count info for binary1
84 branch with count info for binary2
96 # perf_inject_binary1.data is split from perf_inject.data, and only contains branch info for binary…
99 # perf_inject_kernel.data is split from perf_inject.data, and only contains branch info for [kernel…
132 (device) /data/local/tmp $ simpleperf inject -i perf.data --output branch-list -o branch_list.data
[all …]
/system/extras/simpleperf/runtest/
Dautofdo_addr_test.cpp21 // 1. Generate branch list file on device:
23 // (device) $ simpleperf inject -i perf.data --output branch-list -o branch_user.data
38 // 1. Generate branch list file on device:
40 // (device) $ simpleperf inject -i perf.data --output branch-list -o branch.data
43 // (device) $ simpleperf inject -i branch.data --symdir .
64 // 1. Generate branch list file on device (as for create_llvm_prof)
Dautofdo_inline_test.cpp38 if (code < bound) { // <== This is mispredicted branch (conditional branch) in cond_branch_example_function()
48 } while (symbol < 0x100); // conditional branch in cond_branch_example_function()
57 // Call the conditional branch example function in main()
/system/sepolicy/tools/
Dsepolicy_generate_compat.py73 def fetch_artifact(branch, build, pattern, destination='.'): argument
77 branch: string, branch to pull build artifacts from
84 fetch_artifact_path, '--branch', branch, '--target',
122 def download_img_zip(branch, build, destination='.'): argument
126 branch: string, branch to pull build artifacts from (e.g. "sc-v2-dev")
134 logging.info('Downloading %s mapping file from branch %s build %s...' %
135 (ver, branch, build))
137 fetch_artifact(branch, build, artifact_pattern, temp_dir)
322 '--branch',
323 help='Branch to pull build from. e.g. "sc-v2-dev"')
[all …]
/system/cros-codecs/ci/test-cases/
Drun_tests.py11 URL_RUNS="https://api.github.com/repos/{repo}/actions/runs?head-sha={head_sha}&head-branch={head_br…
27 def retrieve_ccdec_github(sha, branch, repo, token): argument
32 …runs = requests.get(URL_RUNS.format(head_sha=sha, head_branch=branch, repo=repo), headers={"Accept…
71 # Retrieve built sha and branch
74 branch = run['head_branch']
79 if retrieve_ccdec_github(sha, branch, repo, token):
/system/extras/perf2cfg/perf2cfg/
Devents.py30 'branch-instructions',
31 'branch-misses',
/system/cros-codecs/ci/
Dlava_job_generate.py19 argparser.add_argument('--test-branch', help='The branch being tested', default='main')
Dtemplate.yaml48 branch: '{{ test_branch }}'
59 branch: '{{ test_branch }}'
/system/extras/simpleperf/scripts/bin/android/arm/
Dsimpleperf ... function return or system call return ind_call: any indirect branch u: only when the branch target is at the ...
/system/connectivity/wificond/net/kernel-header-latest/
DREADME.txt12 Last update from kernel branch: `android14-linux-6.1-XX`
/system/extras/module_ndk_libs/libnativehelper/
DAndroid.bp16 // platform/libnativehelper project in the ART branch. Any changes here should

123