nuttx-apps/system/cachespeed/Kconfig
chenrun1 f3b1ac089b system/cachespeed:Redesign of the overall test tool.
Compared to the previous version, the following factors have been taken into account in the new version of cachespeed:
1. the user needs to care about getting a piece of available memory (even if this piece of memory may memory stomp during use)
2. High repetition of test code, poor readability, and overall high test coupling
3. Not taking into account the alignment cache line situation
4. When comparing values between different test tools, there is a little error because of the different ways to get the values (different fine reading)
Therefore, in the new version according to the above problems have been improved:
1. Provide a "test_skeleton", which contains the overall testing process
2. The user only needs to execute, not to care about how to get the available memory address, and the memory allocated by the program also ensures the memory security and data accuracy
3. The system to obtain the data required for the test reduces the difficulty of use and the possibility of inaccurate results due to data errors.
4. Provide two kinds of precision data results, which can be configured through Kconfig
5. Optimize the output log, now more intuitive and concise, to help the subsequent data organization and observation
6. New test items for aligned/unaligned cache line
7. Better readability and extensibility, making it easier to add/remove test items

Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
2023-07-20 01:42:38 +08:00

45 lines
1.4 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
config SYSTEM_CACHESPEED
bool "CACHE Speed Test"
depends on (ARCH_ICACHE && ARCH_DCACHE) || (ARMV7M_ICACHE && ARMV7M_DCACHE) || (ARMV8M_ICACHE && ARMV8M_DCACHE)
default n
---help---
Enable a simple CACHE speed test.
if SYSTEM_CACHESPEED
config SYSTEM_CACHESPEED_PROGNAME
string "Program name"
default "cachespeed"
---help---
This is the name of the program that will be used when the NSH ELF
program is installed.
config SYSTEM_CACHESPEED_PRIORITY
int "CACHE speed test task priority"
default 100
config SYSTEM_CACHESPEED_STACKSIZE
int "CACHE speed test stack size"
default DEFAULT_TASK_STACKSIZE
config CACHESPEED_MONOTONIC_TIME
bool "Using Clock Gettime"
default n
---help---
When you turn on this option, your test loop will go from 10000 -> 1000 times
Please consider the following scenario:
1. By default (PERFTIME) will have a relatively high precision, but this also
tends to cause failure in getting values on some smaller bytes, so reducing
the precision with this option can make it easier to get data values.
2. whether to compare data with the content of other tools (using CLOCK
GETTIME method), if so, it is recommended to turn on, so as to ensure that
the data precision of both consistent.
endif