You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kamailio/modules/malloc_test/doc/malloc_test_rpc.xml

224 lines
6.5 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[ <!-- Include general documentation entities -->
<!ENTITY % docentities SYSTEM "../../../docbook/entities.xml">
%docentities;
]
>
<section id="malloc_test.rpcs" xmlns:xi="http://www.w3.org/2001/XInclude">
<sectioninfo>
</sectioninfo>
<title>malloc_test RPC Functions</title>
<section id="mt.mem_alloc">
<title> <function>mt.mem_alloc size [unit]</function></title>
<para>
Allocates the specified number of bytes.
<varname>unit</varname> is optional and can be one of:
<itemizedlist>
<listitem><para><emphasis>b</emphasis> - bytes </para></listitem>
<listitem><para><emphasis>k</emphasis> - KB </para></listitem>
<listitem><para><emphasis>m</emphasis> - MB </para></listitem>
<listitem><para><emphasis>g</emphasis> - GB </para></listitem>
</itemizedlist>
</para>
<example>
<title><function>mt.mem_alloc</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_alloc 10 k
</programlisting>
</example>
</section>
<section id="mt.mem_free">
<title> <function>mt.mem_free [size] [unit]</function></title>
<para>
Frees at least <varname>size</varname> bytes from the memory
allocated by other malloc_test functions (e.g. mt.mem_alloc).
</para>
<para>
<varname>size</varname> is optional. If missing, everything will
be freed.
</para>
<para>
<varname>unit</varname> is optional and can be one of:
<itemizedlist>
<listitem><para><emphasis>b</emphasis> - bytes </para></listitem>
<listitem><para><emphasis>k</emphasis> - KB </para></listitem>
<listitem><para><emphasis>m</emphasis> - MB </para></listitem>
<listitem><para><emphasis>g</emphasis> - GB </para></listitem>
</itemizedlist>
</para>
<example>
<title><function>mt.mem_free</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_free 1 m
</programlisting>
</example>
</section>
<section id="mt.mem_used">
<title> <function>mt.mem_used [unit]</function></title>
<para>
Returns/displays how many bytes are allocated. The default
unit is bytes (for all the possible units see above).
</para>
<para>
<varname>unit</varname> is optional and can be one of:
<itemizedlist>
<listitem><para><emphasis>b</emphasis> - bytes </para></listitem>
<listitem><para><emphasis>k</emphasis> - KB </para></listitem>
<listitem><para><emphasis>m</emphasis> - MB </para></listitem>
<listitem><para><emphasis>g</emphasis> - GB </para></listitem>
</itemizedlist>
</para>
<example>
<title><function>mt.mem_used</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_used
9221460
</programlisting>
</example>
</section>
<section id="mt.mem_rnd_alloc">
<title><function>mt.mem_rnd_alloc min max total [unit]</function>
</title>
<para>
Allocates <varname>total_size</varname> memory, in pieces of
random size between
<varname>min</varname> .. <varname>max</varname> (inclusive).
<varname>unit</varname> is optional and represents the unit for
all the given sizes (see above).
</para>
<example>
<title><function>mt.mem_rnd_alloc</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_rnd_alloc 1 64 10240 k
</programlisting>
</example>
</section>
<section id="mt.mem_test_start">
<title>
<function>
mt.mem_test_start min max total min_int max_int total_time
[unit]
</function>
</title>
<para>
Starts a malloc test that will take <varname>total_time</varname>
to execute. Memory allocations will be performed at intervals
randomly chosen between <varname>min_int</varname> and
<varname>max_int</varname> (in ms). Each allocation will have a
randomly chosen size between <varname>min</varname> and
<varname>max</varname> <varname>unit</varname> bytes. After
<varname>total</varname> <varname>unit</varname> bytes are
allocated, everything is released/freed again and the allocations
are restarted. All the times are expressed in milliseconds.
<varname>unit</varname> is optional and represents the unit for
all the given sizes (see above).
</para>
<para>
Several tests can be run in parallel.
</para>
<para>
Returns the test id.
</para>
<example>
<title><function>mt.mem_test_start</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_test_start 15 64 25000 128 1500 3600000 k
1
</programlisting>
</example>
</section>
<section id="mt.mem_test_stop">
<title> <function>mt.mem_test_stop id</function></title>
<para>
Stops the test indentified by <varname>id</varname>.
</para>
<example>
<title><function>mt.mem_test_stop</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_test_stop 1
</programlisting>
</example>
</section>
<section id="mt.mem_test_destroy">
<title> <function>mt.mem_test_destroy id</function></title>
<para>
Destroys the test indentified by <varname>id</varname>
(besides stopping it, it also frees all the data, including the
statistics).
</para>
<example>
<title><function>mt.mem_test_destroy</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_test_destroy 1
</programlisting>
</example>
</section>
<section id="mt.mem_test_destroy_all">
<title> <function>mt.mem_test_destroy_all id</function></title>
<para>
Destroys all the running or stopped tests.
</para>
<example>
<title><function>mt.mem_test_destroy_all</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_test_destroy_all
</programlisting>
</example>
</section>
<section id="mt.mem_test_list">
<title> <function>mt.mem_test_list [id] [unit]</function></title>
<para>
Returns/displays data about the test identified by
<varname>id</varname>, or if no <varname>id</varname> is
specified, it lists all the tests (running or stopped).
</para>
<para>
<varname>unit</varname> is optional. The default is
is bytes (for all the possible units see above).
</para>
<example>
<title><function>mt.mem_test_list</function> usage</title>
<programlisting>
$ &sercmd; mt.mem_test_list
{
ID : 2
run time (s) : 1471
remaining (s): 2128
allocations : 1749
errors : 24
overflows : 2
total alloc : 69614530
min : 15360
max : 65536
total : 25600000
}
{
ID : 1
run time (s) : 3600
remaining (s): 0
allocations : 4268
errors : 640
overflows : 4
total alloc : 144220713
min : 15360
max : 65536
total : 29696000
}
</programlisting>
</example>
</section>
</section>