Книга: Microsoft Windows Embedded CE 6.0 Exam Preparation Kit

Operating System Benchmark (OSBench)

Operating System Benchmark (OSBench)

The OSBench tool can help you measure system performance by identifying the time that the kernel spends managing kernel objects. Based on the scheduler, OSBench collects timing measurements by means of scheduler performance-timing tests. A scheduler performance-timing test measures how much time basic kernel operations, such as thread synchronization, require.

OSBench enables you to track timing information for the following kernel operations:

? Acquiring or releasing a critical section.

? Waiting for or signaling an event.

? Creating a semaphore or mutex.

? Yielding a thread.

? Calling system APIs.

NOTE

OSBench test

To identify performance issues in different system configurations, use OSBench in conjunction with a stress test suite, such as the Microsoft Windows CE Test Kit (CETK).

The OSBench tool supports several command-line parameters that you can use according to the following syntax to collect timing samples for kernel operations:

osbench [-all] [-t test_case] [-list] [-v] [-n number] [-m address] [-o file_name] [-h]

Table 3-2 describes the individual OSBench command-line parameters in more detail.

Table 3-2 OSBench parameters

Command-Line Parameter Description
-all Run all tests (default: run only those specified by -t option):
TestId 0: CriticalSections.
TestId 1: Event set-wakeup.
TestId 2: Semaphore release-acquire.
TestId 3: Mutex.
TestId 4: Voluntary yield.
TestId 5: PSL API call overhead.
TestId 6: Interlocked API's (decrement, increment, testexchange, exchange).
-t test_case ID of test to run (need separate -t for each test).
-list List test ID's with descriptions.
-v Verbose: show extra measurement details.
-n number Number of samples per test (default=100).
-m address Virtual address to write marker values to (default=<none>).
-o file_name Output to comma-separated values (CSV) file (default: output only to debug).

Check out the OSBench source code to identify the test content. You can find the source code at the following locations:

? %_WINCEROOT%PublicCommonOakUtilsOsbench

? %_WINCEROOT%PublicCommonOakUtilsOb_load

Test results are by default sent to the debug output, but can be redirected to a CSV file.

NOTE

OSBench requirements

The OSBench tool uses system timers. The OAL must therefore support the QueryPerformanceCounter and QueryPerformanceFrequency functions initialized in the OEMInit function.

Оглавление книги


Генерация: 1.584. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз