Home | History | Annotate | only in /external/ltp/testcases/kernel/numa
Up to higher level directory
NameDateSize
.gitignore05-Oct-201730
Makefile05-Oct-20171K
numa01.sh05-Oct-201723.9K
numa_node_size.c05-Oct-20173.5K
README05-Oct-20173.4K
support_numa.c05-Oct-20175K
test.sh05-Oct-20172K

README

      1 Introduction:
      2 
      3 ====================================================================================================================
      4 
      5 NUMA ( Non-Uniform Memory Access ) is topology in which, time taken in accessing a memory dependes upon
      6 the local node or remote node memory. With the help of numa libraries or numactl command we could able
      7 to use the numa topology such that we can run an application on a specified node ( node affinity ) and
      8 also, we can apply memory policies such that an application running on a node can get memory alloctaion
      9 from any specified nodes memory. So, we can use the policies offered by numa libraries or numactl command
     10 to either decrease the memory latencies or increase the memory bandwidth by properly applying polcies.
     11 
     12 Please refer http://lse.sourceforge.net/numa/ to know the basics of numa and refer
     13 http://www.novell.com/collateral/4621437/4621437.pdf to understand the usage of numactl and numa libraries.
     14 
     15 We can always get the latest package from ftp://ftp.suse.com/pub/people/ak/numa.
     16 
     17 Testcase Description:
     18 ====================================================================================================================
     19 numa01.sh shell script holds all the numa testcases and support_numa.c will help numa01.sh as and when needed.
     20 
     21 Testcase1:
     22 Verifies the node affinity and memory affinity by running the support_numa process which will allocate 1MB of memory.
     23 
     24 TestCase2:
     25 Verifies the preferred node memory policy which will allocate memory from the node we specify. This
     26 testcase will use the support_numa process for the verfication.
     27 
     28 TestCase3:
     29 Verifies the memory interleaving policy which will distribute the memory evenly among all nodes. This
     30 testcase will use the support_numa process for the verfication.
     31 
     32 TestCase4:
     33 Verifies the physical cpu affinity which runs the process support_numa on the specified physical cpu number.
     34 
     35 TestCase5:
     36 Verifies the local allocation policy which always allocates memory from the local node. This testcase
     37 will use the support_numa process for the verfication.
     38 
     39 TestCase6:
     40 Verifies the memory interleaving policy on the shared memory which will interleave the shared memory on
     41 all nodes equally. Here, the testcase use touch command instead of running a seperate process to verify
     42 the policy applied.
     43 
     44 Pre-requisites
     45 ====================================================================================================================
     46  * libnuma should be installed on the NUMA machine before executing theses testcases
     47  * Testcases can also be executed on non-numa machines, but they will fail,
     48 
     49 Building the Tescases
     50 ====================================================================================================================
     51 From LTP-Root, use <make> to build the testcases
     52 ltp-full-20070731]$ make
     53 or, from
     54 ltp-full-20070731_numa/testcases/kernel/numa]# make
     55 
     56 Installing the Testcases
     57 ====================================================================================================================
     58 From LTP-Root, use <make> to install the testcases
     59 ltp-full-20070731]$ make install
     60 or, from
     61 ltp-full-20070731_numa/testcases/kernel/numa]# make install
     62 
     63 Running the Tescases
     64 ====================================================================================================================
     65 From LTP-Root, invoke ./runltp
     66 ltp-full-20070731]$ ./runltp -p -l <logfile> -f numa
     67 
     68  * NUMA testcases will not run by default in LTP-runall
     69