Blame test/README

Packit Service 724aca
MEMKIND TESTS
Packit Service 724aca
=============
Packit Service 724aca
Packit Service 724aca
Packit Service 724aca
DISCLAIMER
Packit Service 724aca
==========
Packit Service 724aca
SEE COPYING FILE FOR LICENSE INFORMATION.
Packit Service 724aca
Packit Service 724aca
THIS SOFTWARE IS PROVIDED AS A DEVELOPMENT SNAPSHOT TO AID
Packit Service 724aca
COLLABORATION AND WAS NOT ISSUED AS A RELEASED PRODUCT BY INTEL.
Packit Service 724aca
Packit Service 724aca
LAST UPDATE
Packit Service 724aca
===========
Packit Service 724aca
Agata Wozniak <agata.wozniak@intel.com>
Packit Service 724aca
Wednesday May 11 2016
Packit Service 724aca
Packit Service 724aca
TESTS SCENARIOS
Packit Service 724aca
===============
Packit Service 724aca
Packit Service 724aca
memkind-afts
Packit Service 724aca
------------
Packit Service 724aca
This is scenario for basic functional tests. Maximum number of allocations per numa node:
Packit Service 724aca
- 512 x 4KB pages (summary: 2GB)
Packit Service 724aca
- 16 x 2MB pages
Packit Service 724aca
Packit Service 724aca
memkind-afts-ext
Packit Service 724aca
----------------
Packit Service 724aca
The same tests as in memkind-afts, however this tests are more ravenous and needs more memory
Packit Service 724aca
available. Special test cases prepared only for this scenario are described as ravenous
Packit Service 724aca
and needs at least:
Packit Service 724aca
- 512 x 4KB pages (summary: 2GB)
Packit Service 724aca
- 16 x 2MB pages
Packit Service 724aca
memory available per numa node.
Packit Service 724aca
Packit Service 724aca
memkind-perf
Packit Service 724aca
------------
Packit Service 724aca
This is scenario for performance tests, excluding tests that allocate more than:
Packit Service 724aca
- 512 x 4KB pages (summary: 2GB)
Packit Service 724aca
- 16 x 2MB pages
Packit Service 724aca
Packit Service 724aca
memkind-perf-ext
Packit Service 724aca
----------------
Packit Service 724aca
This test scenario extend memkind-perf for tests that allocate more than:
Packit Service 724aca
- 512 x 4KB pages (summary: 2GB)
Packit Service 724aca
- 16 x 2MB pages
Packit Service 724aca
AllocPerformanceTest is a group of performance tests for *alloc() execution. TC properties:
Packit Service 724aca
- 6 kinds (MEMKIND_DEFAULT, MEMKIND_HBW, MEMKIND_INTERLEAVE, MEMKIND_HBW_INTERLEAVE, MEMKIND_HBW_PREFERRED, PMEM kind)
Packit Service 724aca
- 3 calls (malloc, calloc, realloc)
Packit Service 724aca
- 5 allocation sizes (100bytes, 4096bytes, 1000bytes, 1001bytes, 1.5MB - 1572864bytes)
Packit Service 724aca
- single thread and multithreaded (10threads and 72threads)
Packit Service 724aca
All tests record three values:
Packit Service 724aca
- total_time_spend_on_alloc (total time spend on *alloc() call during the test - less is better)
Packit Service 724aca
- alloc_operations_per_thread (number of done allocations per thread - this value is constant)
Packit Service 724aca
- ref_delta_time_percent (percent delta between standard allocator and current tested kind - less is better)
Packit Service 724aca
Packit Service 724aca
memkind-slts
Packit Service 724aca
------------
Packit Service 724aca
This is scenario for all stress and longevity tests.
Packit Service 724aca
Packit Service 724aca
BENCHMARKS
Packit Service 724aca
===============
Packit Service 724aca
Packit Service 724aca
fragmentation_benchmark_pmem
Packit Service 724aca
------------
Packit Service 724aca
The program logging memory fragmentation of specific workload in file
Packit Service 724aca
with date and timestamps ("bench_single_thread_yyyymmdd-hhmm_mem_<pmem_memory_usage_policy>.log").
Packit Service 724aca
Packit Service 724aca
The program takes, as arguments:
Packit Service 724aca
* pmem_path - path where file-backed memory kind should be created
Packit Service 724aca
* pmem_size - file-backed memory kind size limit, given in megabytes
Packit Service 724aca
* pmem_memory_usage_policy - 0 - MEMKIND_MEM_USAGE_POLICY_DEFAULT, 1 - MEMKIND_MEM_USAGE_POLICY_CONSERVATIVE
Packit Service 724aca
* test_time - time how long program runs, given in seconds
Packit Service 724aca
Packit Service 724aca
For example:
Packit Service 724aca
Packit Service 724aca
    ./fragmentation_benchmark_pmem /mnt/pmem 17 0 60
Packit Service 724aca
Packit Service 724aca
This will create PMEM kind limited with 17 MB in /mnt/pmem/ with default memory usage policy
Packit Service 724aca
and save results in log file after 60 seconds.
Packit Service 724aca
Packit Service 724aca
MANUAL TESTING
Packit Service 724aca
==============
Packit Service 724aca
In order to run tests on local machine, test.sh should be executed.
Packit Service 724aca
When test.sh is run, all tests are executed as long as -d (skip MCDRAM nodes detection), -m (skip
Packit Service 724aca
tests that require 2MB pages) parameters are not used.