11
2- ====================================
2+ #################################
33 Linux 12.00.00 Performance Guide
4- ====================================
4+ #################################
55
6- .. rubric :: **Read This First**
7- :name: read-this-first-kernel-perf-guide
6+ ***************
7+ Read This First
8+ ***************
89
910**All performance numbers provided in this document are gathered using
1011following Evaluation Modules unless otherwise specified. **
@@ -18,26 +19,30 @@ following Evaluation Modules unless otherwise specified.**
1819
1920Table: Evaluation Modules
2021
21- .. rubric :: About This Manual
22- :name: about-this-manual-kernel-perf-guide
22+ *****************
23+ About This Manual
24+ *****************
2325
2426This document provides performance data for each of the device drivers
2527which are part of the Processor SDK Linux package. This document should be
2628used in conjunction with release notes and user guides provided with the
2729Processor SDK Linux package for information on specific issues present
2830with drivers included in a particular release.
2931
30- .. rubric :: If You Need Assistance
31- :name: if-you-need-assistance-kernel-perf-guide
32-
3332For further information or to report any problems, contact
3433https://e2e.ti.com/ or https://support.ti.com/
3534
35+ |
36+
37+ *****************
3638System Benchmarks
37- -----------------
39+ *****************
40+
41+ |
3842
3943LMBench
40- ^^^^^^^
44+ =======
45+
4146LMBench is a collection of microbenchmarks of which the memory bandwidth
4247and latency related ones are typically used to estimate processor
4348memory system performance. More information about lmbench at
@@ -181,7 +186,8 @@ Execute the LMBench with the following:
181186 "tcp_latency_using_localhost (microsec)","0.89 (min 0.76, max 1.02)"
182187
183188Dhrystone
184- ^^^^^^^^^
189+ =========
190+
185191Dhrystone is a core only benchmark that runs from warm L1 caches in all
186192modern processors. It scales linearly with clock speed.
187193
@@ -203,7 +209,8 @@ Execute the benchmark with the following:
203209 "dhrystone_per_second (dhrystonep)","6789289.58 (min 6451613.00, max 7142857.00)"
204210
205211Whetstone
206- ^^^^^^^^^
212+ =========
213+
207214Whetstone is a benchmark primarily measuring floating-point arithmetic performance.
208215
209216Execute the benchmark with the following:
@@ -218,7 +225,8 @@ Execute the benchmark with the following:
218225 "whetstone (mips)","5833.33 (min 5000.00, max 10000.00)"
219226
220227Linpack
221- ^^^^^^^
228+ =======
229+
222230Linpack measures peak double precision (64 bit) floating point performance in
223231solving a dense linear system.
224232
@@ -228,7 +236,8 @@ solving a dense linear system.
228236 "linpack (kflops)","580360.75 (min 579515.00, max 581724.00)"
229237
230238Stream
231- ^^^^^^
239+ ======
240+
232241STREAM is a microbenchmark for measuring data memory system performance without
233242any data reuse. It is designed to miss on caches and exercise data prefetcher
234243and speculative accesses.
@@ -254,7 +263,8 @@ Execute the benchmark with the following:
254263 "triad (mb/s)","2384.27 (min 2377.90, max 2393.60)"
255264
256265CoreMarkPro
257- ^^^^^^^^^^^
266+ ===========
267+
258268CoreMark®-Pro is a comprehensive, advanced processor benchmark that works with
259269and enhances the market-proven industry-standard EEMBC CoreMark® benchmark.
260270While CoreMark stresses the CPU pipeline, CoreMark-Pro tests the entire processor,
@@ -291,7 +301,8 @@ and floating-point workloads, and data sets for utilizing larger memory subsyste
291301 "zip-test (workloads/)","78.74 (min 74.07, max 83.33)"
292302
293303MultiBench
294- ^^^^^^^^^^
304+ ==========
305+
295306MultiBench™ is a suite of benchmarks that allows processor and system designers to
296307analyze, test, and improve multicore processors. It uses three forms of concurrency:
297308Data decomposition: multiple threads cooperating on achieving a unified goal and
@@ -338,11 +349,13 @@ thread-enabled workloads to be tested.
338349 "x264-4mq (workloads/)","0.58"
339350 "x264-4mqw1 (workloads/)","0.58"
340351
352+ |
353+
341354Boot-time Measurement
342- ---------------------
355+ =====================
343356
344357Boot media: MMCSD
345- ^^^^^^^^^^^^^^^^^
358+ -----------------
346359
347360.. csv-table :: Linux boot time MMCSD
348361 :header: "Boot Configuration","am62dxx_evm-fs: Boot time in seconds: avg(min,max)"
@@ -354,7 +367,8 @@ Boot time numbers [avg, min, max] are measured from "Starting kernel" to Linux p
354367|
355368
356369Ethernet
357- --------
370+ ========
371+
358372Ethernet performance benchmarks were measured using :command: `netperf ` 2.7.1 https://hewlettpackard.github.io/netperf/doc/netperf.html
359373Test procedures were modeled after those defined in RFC-2544:
360374https://tools.ietf.org/html/rfc2544, where the DUT is the TI device
@@ -420,11 +434,11 @@ Running the following commands will trigger :command:`netperf` clients to measur
420434 netperf -H <DUT ip> -j -C -l 60 -t UDP_STREAM -b <burst_size> -w <wait_time> -- -m <UDP datagram size>
421435 -k DIRECTION,THROUGHPUT,MEAN_LATENCY,LOCAL_CPU_UTIL,REMOTE_CPU_UTIL,LOCAL_BYTES_SENT,REMOTE_BYTES_RECVD,LOCAL_SEND_SIZE
422436
423- CPSW/CPSW2g/CPSW3g Ethernet Driver
424- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
437+ CPSW/CPSW2g/CPSW3g Ethernet
438+ ---------------------------
425439
426- .. rubric :: UDP Throughput
427- :name: CPSW2g-udp-throughput-0-loss
440+ UDP Throughput
441+ ^^^^^^^^^^^^^^
428442
429443.. csv-table :: CPSW2g UDP Egress Throughput 0 loss
430444 :header: "Frame Size(bytes)","am62dxx_evm-fs: UDP Datagram Size(bytes) (LOCAL_SEND_SIZE)","am62dxx_evm-fs: THROUGHPUT (Mbits/sec)","am62dxx_evm-fs: Packets Per Second (kPPS)","am62dxx_evm-fs: CPU Load % (LOCAL_CPU_UTIL)"
@@ -452,11 +466,11 @@ CPSW/CPSW2g/CPSW3g Ethernet Driver
452466
453467|
454468
455- USB Driver
456- ----------
469+ USB
470+ ===
457471
458472USB Device Controller
459- ^^^^^^^^^^^^^^^^^^^^^
473+ ---------------------
460474
461475.. csv-table :: USBDEVICE HIGHSPEED SLAVE_READ_THROUGHPUT
462476 :header: "Number of Blocks","am62dxx_evm-fs: Throughput (MB/sec)"
@@ -470,11 +484,11 @@ USB Device Controller
470484
471485|
472486
473- CRYPTO Driver
474- -------------
487+ CRYPTO
488+ ======
475489
476490OpenSSL Performance
477- ^^^^^^^^^^^^^^^^^^^
491+ -------------------
478492
479493.. csv-table :: OpenSSL Performance
480494 :header: "Algorithm","Buffer Size (in bytes)","am62dxx_evm-fs: throughput (KBytes/Sec)"
@@ -546,3 +560,5 @@ Listed for each algorithm are the code snippets used to run each
546560::
547561
548562 time -v openssl speed -elapsed -evp aes-128-cbc
563+
564+ |
0 commit comments