Building osperf requires pipes and hpwork, which are disabled
by default. These features should be enabled before osperf is
built. The select directive could cause issues and should be
avoided, so we use the depends on directive.
Signed-off-by: Fukui Daichi <a.dog.will.talk@akane.waseda.jp>
1.Add more print logs
ramspeed -w 0x61ba15c0 -s 524288 -n 10000 -i
RAM Speed: Write address: 0x0x61ba15c0
RAM Speed: Read address: 0x0
RAM Speed: Size: 524288 bytes
RAM Speed: Value: 0x00
RAM Speed: Repeat number: 10000
RAM Speed: Interrupts disabled: true
2.Improve test accuracy, now print in double type in us time unit
______Perform 32 Bytes access______
RAM Speed: system memset(): Rate = 625000.000 KB/s [cost: 0.500 ms]
RAM Speed: internal memset(): Rate = 240384.615 KB/s [cost: 1.300 ms]
3. Optional test item, if we do not pass in the src address, only memset will be executed
Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
The function implementation does not specify a return type, and is treated as a void return value function during use, so it is ignored.
CC: icmpv6_ping.c dhrystone/v2.1/dhry_2.c:30:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
30 | Proc_6 (Enum_Val_Par, Enum_Ref_Par)
| ^~~~~~
2. The implementation of some functions is opposite to the calling position, and the processing can be ignored
dhrystone/v2.1/dhry_2.c:39:9: warning: implicit declaration of function ‘Func_3’ [-Wimplicit-function-declaration]
39 | if (! Func_3 (Enum_Val_Par))
3. This function is called from dhry_2.c and void behavior is expected.
dhrystone/v2.1/dhry_2.c:30:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]
30 | Proc_6 (Enum_Val_Par, Enum_Ref_Par)
4. In the old version of C language, if the function declaration return value is not set, the default is void; in the new version, it is int, but in dhrystone, these functions are called as void type functions by default.
dhrystone/v2.2/dry.c:738:1: warning: control reaches end of non-void function [-Wreturn-type]
738 | }
| ^
dhrystone/v2.2/dry.c: In function ‘Proc_1’:
dhrystone/v2.2/dry.c:772:1: warning: control reaches end of non-void function [-Wreturn-type]
772 | } /* Proc_1 */
| ^
dhrystone/v2.2/dry.c: In function ‘Proc_2’:
dhrystone/v2.2/dry.c:795:1: warning: control reaches end of non-void function [-Wreturn-type]
795 | } /* Proc_2 */
| ^
dhrystone/v2.2/dry.c: In function ‘Proc_3’:
dhrystone/v2.2/dry.c:810:1: warning: control reaches end of non-void function [-Wreturn-type]
810 | } /* Proc_3 */
| ^
dhrystone/v2.2/dry.c: In function ‘Proc_4’:
dhrystone/v2.2/dry.c:822:1: warning: control reaches end of non-void function [-Wreturn-type]
822 | } /* Proc_4 */
| ^
dhrystone/v2.2/dry.c: In function ‘Proc_5’:
dhrystone/v2.2/dry.c:831:1: warning: control reaches end of non-void function [-Wreturn-type]
831 | } /* Proc_5 */
| ^
Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
Summary:
Avoiding warnings caused by source code implementation leads to build failure. Most warnings are undef and the value is 0. We think it is not enabled.
Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
configuration.
enter_critical_section and leave_critical_section aren't reliable
interfaces to expose in usermode, as they aren't available if
CONFIG_IRQCOUNT is enabled.
This patch changes the enable options of coremark,
coremark-pro and cachespeed from bool to tristate.
This allows the user to select the benchmark to be built
as a elf module, which can be loaded and executed on the
target dynamically.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
Use multi-threads to measure spinlock.
You can get related setting with make menuconfig.
Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
Co-authored-by: Xiang Xiao <xiaoxiang781216@gmail.com>