From 7018264d66786eafbe2a185d73e132209d2fc443 Mon Sep 17 00:00:00 2001 From: Ryan Eatmon Date: Tue, 28 Apr 2026 11:16:25 -0500 Subject: [PATCH] meta-ti-test: Import the recipes-benchmark recipes We are moving the meta-arago-test layer to meta-ti-test. This commit imports all of the recipes under recipes-benchmark. Signed-off-by: Ryan Eatmon --- .../licenses/Stream_Benchmark_License | 34 +++++++++++++ .../arm-benchmarks/arm-benchmarks_1.3.bb | 23 +++++++++ .../arm-ddr-bandwidth/arm-ddr-bandwidth.bb | 28 +++++++++++ .../coremark/coremark-ti.inc | 3 ++ ..._main-Remove-printing-compiler-flags.patch | 41 ++++++++++++++++ .../coremark/coremark_%.bbappend | 4 ++ .../nbench-byte/nbench-byte-ti.inc | 1 + .../nbench-byte/nbench-byte_%.bbappend | 4 ++ .../openssl-perf/openssl-perf.bb | 49 +++++++++++++++++++ .../stream/stream_%.bbappend | 13 +++++ .../recipes-benchmark/stream/stream_5.10.bb | 26 ++++++++++ 11 files changed, 226 insertions(+) create mode 100644 meta-ti-test/licenses/Stream_Benchmark_License create mode 100644 meta-ti-test/recipes-benchmark/arm-benchmarks/arm-benchmarks_1.3.bb create mode 100644 meta-ti-test/recipes-benchmark/arm-ddr-bandwidth/arm-ddr-bandwidth.bb create mode 100644 meta-ti-test/recipes-benchmark/coremark/coremark-ti.inc create mode 100644 meta-ti-test/recipes-benchmark/coremark/coremark/0001-core_main-Remove-printing-compiler-flags.patch create mode 100644 meta-ti-test/recipes-benchmark/coremark/coremark_%.bbappend create mode 100644 meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte-ti.inc create mode 100644 meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte_%.bbappend create mode 100644 meta-ti-test/recipes-benchmark/openssl-perf/openssl-perf.bb create mode 100644 meta-ti-test/recipes-benchmark/stream/stream_%.bbappend create mode 100644 meta-ti-test/recipes-benchmark/stream/stream_5.10.bb diff --git a/meta-ti-test/licenses/Stream_Benchmark_License b/meta-ti-test/licenses/Stream_Benchmark_License new file mode 100644 index 00000000..cf1c8e00 --- /dev/null +++ b/meta-ti-test/licenses/Stream_Benchmark_License @@ -0,0 +1,34 @@ +*======================================================================= +*----------------------------------------------------------------------- +* Copyright 1991-2003: John D. McCalpin +*----------------------------------------------------------------------- +* License: +* 1. You are free to use this program and/or to redistribute +* this program. +* 2. You are free to modify this program for your own use, +* including commercial use, subject to the publication +* restrictions in item 3. +* 3. You are free to publish results obtained from running this +* program, or from works that you derive from this program, +* with the following limitations: +* 3a. In order to be referred to as "STREAM benchmark results", +* published results must be in conformance to the STREAM +* Run Rules, (briefly reviewed below) published at +* http://www.cs.virginia.edu/stream/ref.html +* and incorporated herein by reference. +* As the copyright holder, John McCalpin retains the +* right to determine conformity with the Run Rules. +* 3b. Results based on modified source code or on runs not in +* accordance with the STREAM Run Rules must be clearly +* labelled whenever they are published. Examples of +* proper labelling include: +* "tuned STREAM benchmark results" +* "based on a variant of the STREAM benchmark code" +* Other comparable, clear and reasonable labelling is +* acceptable. +* 3c. Submission of results to the STREAM benchmark web site +* is encouraged, but not required. +* 4. Use of this program or creation of derived works based on this +* program constitutes acceptance of these licensing restrictions. +* 5. Absolutely no warranty is expressed or implied. +*----------------------------------------------------------------------- diff --git a/meta-ti-test/recipes-benchmark/arm-benchmarks/arm-benchmarks_1.3.bb b/meta-ti-test/recipes-benchmark/arm-benchmarks/arm-benchmarks_1.3.bb new file mode 100644 index 00000000..8cdd1a6f --- /dev/null +++ b/meta-ti-test/recipes-benchmark/arm-benchmarks/arm-benchmarks_1.3.bb @@ -0,0 +1,23 @@ +SUMMARY = "ARM Benchmarks" +HOMEPAGE = "https://gforge.ti.com/gf/project/am_benchmarks/" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://COPYING;md5=7aefb5e1cffc7b6a3ef18b803f957922" +SECTION = "system" + +PR = "r13" + +BRANCH ?= "master" +SRCREV = "fefaf9bdd6f36ab0cebaab8dbf34e5beb50f471c" + +SRC_URI = "git://git.ti.com/git/apps/arm_benchmarks.git;protocol=https;branch=${BRANCH}" + +do_compile() { + export CROSS_COMPILE=${TARGET_PREFIX} + export CFLAGS='${TARGET_CC_ARCH} -std=gnu11' + # build the release version + oe_runmake release CC="${CC}" +} +do_install() { + + oe_runmake DESTDIR=${D} install +} diff --git a/meta-ti-test/recipes-benchmark/arm-ddr-bandwidth/arm-ddr-bandwidth.bb b/meta-ti-test/recipes-benchmark/arm-ddr-bandwidth/arm-ddr-bandwidth.bb new file mode 100644 index 00000000..29db78c3 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/arm-ddr-bandwidth/arm-ddr-bandwidth.bb @@ -0,0 +1,28 @@ +SUMMARY = "Benchmark for checking DDR bandwidth" +HOMEPAGE = "https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/tree/arm_apps/arm_ddr_bandwidth/runLmDDRBandwidth.sh" +LICENSE = "CC-BY-SA-3.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=6e0ae7214f6c74c149cb25f373057fa9" + +PV = "1.0" + +SRC_URI = " \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/arm_apps/arm_ddr_bandwidth/runLmDDRBandwidth.sh;name=runLmDDRBandwidth \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/LICENSE;name=license \ +" +SRC_URI[runLmDDRBandwidth.sha256sum] = "67997d721b351344d8788200a15bb3640093045bc25f2b5307dd331ebd1556a3" +SRC_URI[license.sha256sum] = "7febd1df714fa4b1e44fe0b0f73ceac7f9b9f97326695a0cc7074bd6c8d263e3" + +S = "${UNPACKDIR}" + +do_install() { + install -d ${D}${datadir}/matrix-gui-2.0/apps + + install -d ${D}${bindir} + install -m 0755 ${S}/runLmDDRBandwidth.sh ${D}${bindir}/runLmDDRBandwidth.sh +} + +FILES:${PN} = " \ + ${datadir}/matrix-gui-2.0/apps \ + ${bindir}/runLmDDRBandwidth.sh \ +" + diff --git a/meta-ti-test/recipes-benchmark/coremark/coremark-ti.inc b/meta-ti-test/recipes-benchmark/coremark/coremark-ti.inc new file mode 100644 index 00000000..9a1d9b89 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/coremark/coremark-ti.inc @@ -0,0 +1,3 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/coremark:" + +SRC_URI += "file://0001-core_main-Remove-printing-compiler-flags.patch" diff --git a/meta-ti-test/recipes-benchmark/coremark/coremark/0001-core_main-Remove-printing-compiler-flags.patch b/meta-ti-test/recipes-benchmark/coremark/coremark/0001-core_main-Remove-printing-compiler-flags.patch new file mode 100644 index 00000000..ef7c78b2 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/coremark/coremark/0001-core_main-Remove-printing-compiler-flags.patch @@ -0,0 +1,41 @@ +From 0af4e2298ccacc8afc0294b7a731f0e866155427 Mon Sep 17 00:00:00 2001 +From: Ryan Eatmon +Date: Mon, 1 Dec 2025 12:21:23 -0600 +Subject: [PATCH] core_main: Remove printing compiler flags + +Reproducible builds do not like including anything that references the +build environment on the host machine. This would include printing out +the COMPILER_FLAGS macro. Substitute it with "". + +Upstream-Status: Inappropriate [OE-Specific] + +Signed-off-by: Ryan Eatmon +--- + core_main.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/core_main.c b/core_main.c +index a4beeb6..f0ab87f 100644 +--- a/core_main.c ++++ b/core_main.c +@@ -380,7 +380,7 @@ for (i = 0; i < MULTITHREAD; i++) + ee_printf("Iterations : %lu\n", + (long unsigned)default_num_contexts * results[0].iterations); + ee_printf("Compiler version : %s\n", COMPILER_VERSION); +- ee_printf("Compiler flags : %s\n", COMPILER_FLAGS); ++ ee_printf("Compiler flags : %s\n", ""); //Reproducible build fix: COMPILER_FLAGS); + #if (MULTITHREAD > 1) + ee_printf("Parallel %s : %d\n", PARALLEL_METHOD, default_num_contexts); + #endif +@@ -410,7 +410,7 @@ for (i = 0; i < MULTITHREAD; i++) + default_num_contexts * results[0].iterations + / time_in_secs(total_time), + COMPILER_VERSION, +- COMPILER_FLAGS); ++ ""); //Reproducible build fix: COMPILER_FLAGS); + #if defined(MEM_LOCATION) && !defined(MEM_LOCATION_UNSPEC) + ee_printf(" / %s", MEM_LOCATION); + #else +-- +2.43.0 + diff --git a/meta-ti-test/recipes-benchmark/coremark/coremark_%.bbappend b/meta-ti-test/recipes-benchmark/coremark/coremark_%.bbappend new file mode 100644 index 00000000..952d6e99 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/coremark/coremark_%.bbappend @@ -0,0 +1,4 @@ +COREMARK_TI = "" +COREMARK_TI:ti-soc = "coremark-ti.inc" + +require ${COREMARK_TI} diff --git a/meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte-ti.inc b/meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte-ti.inc new file mode 100644 index 00000000..f571f368 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte-ti.inc @@ -0,0 +1 @@ +ARM_INSTRUCTION_SET = "arm" diff --git a/meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte_%.bbappend b/meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte_%.bbappend new file mode 100644 index 00000000..dfe5ea96 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/nbench-byte/nbench-byte_%.bbappend @@ -0,0 +1,4 @@ +NBENCH_BYTE_TI = "" +NBENCH_BYTE_TI:ti-soc = "nbench-byte-ti.inc" + +require ${NBENCH_BYTE_TI} diff --git a/meta-ti-test/recipes-benchmark/openssl-perf/openssl-perf.bb b/meta-ti-test/recipes-benchmark/openssl-perf/openssl-perf.bb new file mode 100644 index 00000000..04a3fb79 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/openssl-perf/openssl-perf.bb @@ -0,0 +1,49 @@ +SUMMARY = "Benchmarks for checking various OpenSSL performance functions" +HOMEPAGE = "https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/tree/cryptos_apps_scripts/" +LICENSE = "CC-BY-SA-3.0" +LIC_FILES_CHKSUM = "file://${UNPACKDIR}/LICENSE;md5=6e0ae7214f6c74c149cb25f373057fa9" + +PV = "1.0" + +SRC_URI = " \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_perf_scripts/openssl_perf.sh;name=openssl_perf \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_aes256_encdec_scripts/openssl_aes256_encdec.sh;name=openssl_aes256_encdec \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_display_cert_scripts/openssl_display_cert.sh;name=openssl_display_cert \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_gen_cert_scripts/openssl_gen_cert.sh;name=openssl_gen_cert \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_gen_pubkey_scripts/openssl_gen_pubkey.sh;name=openssl_gen_pubkey \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_gen_sha1hash_scripts/openssl_gen_sha1hash.sh;name=openssl_gen_sha1hash \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/cryptos_apps_scripts/openssl_start_server_scripts/openssl_start_server.sh;name=openssl_start_server \ + https://git.ti.com/cgit/matrix-gui-v2/matrix-gui-v2-apps/plain/LICENSE;name=license \ +" +SRC_URI[openssl_perf.sha256sum] = "5769e841b977d6a858da38826c2cf47c288ed642614c5b6f802409cb3601ab29" +SRC_URI[openssl_aes256_encdec.sha256sum] = "1a488e3ba98f6f2e5f73c14681b0452ba902aecbb174e4e74b524dda4c5eda7a" +SRC_URI[openssl_display_cert.sha256sum] = "fbe80fe1afe29f777e346ecd86d89e1f27cedc1bb745a9a9bc5cd38f2d566a3e" +SRC_URI[openssl_gen_cert.sha256sum] = "47bfc80b88edebcc4d82ee3816bc05b95ca0d42c42e7f3b83e74fa6f9c6c01ef" +SRC_URI[openssl_gen_pubkey.sha256sum] = "4581e2329afeb814602c4874ffa038d95a4bcc8b23df24d7be25822d0dd6c433" +SRC_URI[openssl_gen_sha1hash.sha256sum] = "f338f8c3067ebb1c5710b16b91e8b9e38685b05fcc072060ec0c62bd10cefd97" +SRC_URI[openssl_start_server.sha256sum] = "e23499210f701ef831d39a8c732f34f4b06fb3ba2d069c4a95ef25ae59f3c93e" +SRC_URI[license.sha256sum] = "7febd1df714fa4b1e44fe0b0f73ceac7f9b9f97326695a0cc7074bd6c8d263e3" + +S = "${UNPACKDIR}" + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${S}/openssl_perf.sh ${D}${bindir}/openssl_perf.sh + install -m 0755 ${S}/openssl_aes256_encdec.sh ${D}${bindir}/openssl_aes256_encdec.sh + install -m 0755 ${S}/openssl_display_cert.sh ${D}${bindir}/openssl_display_cert.sh + install -m 0755 ${S}/openssl_gen_cert.sh ${D}${bindir}/openssl_gen_cert.sh + install -m 0755 ${S}/openssl_gen_pubkey.sh ${D}${bindir}/openssl_gen_pubkey.sh + install -m 0755 ${S}/openssl_gen_sha1hash.sh ${D}${bindir}/openssl_gen_sha1hash.sh + install -m 0755 ${S}/openssl_start_server.sh ${D}${bindir}/openssl_start_server.sh +} + +FILES:${PN} = "\ + ${bindir}/openssl_perf.sh \ + ${bindir}/openssl_aes256_encdec.sh \ + ${bindir}/openssl_display_cert.sh \ + ${bindir}/openssl_gen_cert.sh \ + ${bindir}/openssl_gen_pubkey.sh \ + ${bindir}/openssl_gen_sha1hash.sh \ + ${bindir}/openssl_start_server.sh \ +" + diff --git a/meta-ti-test/recipes-benchmark/stream/stream_%.bbappend b/meta-ti-test/recipes-benchmark/stream/stream_%.bbappend new file mode 100644 index 00000000..97e0c6a0 --- /dev/null +++ b/meta-ti-test/recipes-benchmark/stream/stream_%.bbappend @@ -0,0 +1,13 @@ +INSANE_SKIP:${PN} += "ldflags" +INSANE_SKIP:${PN}-openmp += "ldflags" + +PR:append = ".ti1" + +BRANCH = "sdk" +SRCREV = "96156d407d9a4e5fac4513f3d3f60a414b3355cd" + +do_compile:prepend() { + #Explicitly clear some variables to insure no unexpected optimizations are being passed in. + unset CFLAGS + unset LDFLAGS +} diff --git a/meta-ti-test/recipes-benchmark/stream/stream_5.10.bb b/meta-ti-test/recipes-benchmark/stream/stream_5.10.bb new file mode 100644 index 00000000..484be34d --- /dev/null +++ b/meta-ti-test/recipes-benchmark/stream/stream_5.10.bb @@ -0,0 +1,26 @@ +SUMMARY = "Stream Benchmark" +HOMEPAGE = "http://www.cs.virginia.edu/stream/" +LICENSE = "Stream_Benchmark_License" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=bca8cbe07976fe64c8946378d08314b0" +SECTION = "system" + +PR = "r0" + +BRANCH ?= "master" +SRCREV = "b66f2bab5d6d0b35732ef8406ae03873725a3306" + +SRC_URI = "git://git.ti.com/git/arago-project-org/stream.git;protocol=https;branch=${BRANCH}" + +PACKAGES =+ "${PN}-openmp" + +do_compile() { + oe_runmake CC="${CC}" +} + +do_install() { + install -d ${D}/${bindir} + install -m 0755 ${S}/stream_c ${D}/${bindir}/ + install -m 0755 ${S}/stream_c_openmp ${D}/${bindir}/ +} + +FILES:${PN}-openmp = "${bindir}/stream_c_openmp"