Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
85 lines (41 sloc) 2.24 KB
This is a simple tutorial on compiling libHornetQLibAIO.so
DEPENDENCIES
Make sure you install these packages:
- G++ (yum install gcc-c++ or aptitude install g++)
- Gcc (yum insall gcc or aptitude install gcc)
- autotools-dev (including libtool, automake, autoconf) (yum install autoconf libtool or aptitude install autotools-dev autoconf libtool)
- Make (yum install make or aptitude install make)
- libaio (0.3.106) (yum install libaio or aptitude install libaio)
- libaio-dev (yum install libaio-devel or aptitude install libaio-dev)
- JDK (full JDK)
LIBAIO INFORMATION
libaio is part of the kernel project. The library makes system calls on the kernel layer.
This is the project information:
Git Repository: git://git.kernel.org/pub/scm/libs/libaio/libaio.git
Mailing List: linux-aio@kvack.org
STEPS TO BUILD
1. Make sure you have JAVA_HOME defined, and pointing to the root of your JDK:
Example:
$> export JAVA_HOME=/usr/share/jdk1.5.0_13
2. Call bootstrap. Bootstrap will call all the initial scripts you need
$> ./bootstrap
if you are missing any dependencies, autoconf would tell you what you're missing.
COMPILED FILE
The produced file will be under ./src/.libs/libHornetQLibAIO.so
PERF-DISK
There is a script on this directory called perf-disk. This script will tell you how many bytes per second your disk is capable of.
If you interrupt this script, you will see a file (/tmp/foo.dat) created on your disk, which is used to measure the performance.
DISKTEST
There is also an executable that performs direct libaio write emulating the same behaviour you should see on the Journal.
To verify what is your maximum disk throughput execute disktest
Usage: disktest<Platform> <directory> <number-of-files>
example:
chmod +x disktest
./disktest32 /tmp 20
At the end of the execution you will see something like:
Total time on write files = 198, Bytes/millisecond = 105916
disktest is also compiled by our build scripts. disktest.cpp is also a sample of how to make calls into libaio.
DOCUMENTATION
The User Manual, chapter 38 (Libaio Native Libraries) will provide more details about our native libraries on libaio.
README IS A REQUIRED FILE
This file exists here as required by autoconf, or else we would have a compilation error.
Something went wrong with that request. Please try again.