A new ALOE unstable version has been relased!. Features: improved performance, reduced overhead, USRP support, improved GUI signal visualization, OFDM demo application 2-20 MHz bandwidth (128-2048 FFT size) and many more.

ALOE Quick Start Guide

This page describes how to download, install and run an example waveform for ALOE for Linux OS.

Supported processors are:

  • x86_32
  • x86_64
  • ARM (tested in MARVELL processors from SheevaPlug)
  • PPC440 comming soon...

Downloading & Installing

Download the latest ALOE version from http://flexnets.upc.edu/svn/phal/tags/aloe-1.4.5.tar.gz

Older versions are available at http://flexnets.upc.edu/downloads/source/

Before installing, make sure you have the following libraries in your system:

For debian users, just type:

sudo apt-get install libreadline5-dev

and download jack libraries typing:

sudo apt-get install libjack-dev qjackctl libjack0 jack jackd jack-tools

If libraries are not detected during the configure script, the converter won't be accessible.

Untar, compile and install:

tar xzvf aloe-1.4.5.tar.gz
cd aloe-1.4.5
./configure
make
sudo make install

Before running ALOE, we must tune some kernel parameters to enable large messages buffers. You can use sysctl to make changes permanently, add the following lines to /etc/sysctl.conf

kernel.msgmnb=1048576
kernel.msgmax=10485760
kernel.msgmni=128

And run sysctl with root permissions:

sudo /sbin/sysctl -p

Running an example

From the same directory where the source is (aloe-1.4.5):

runph

To run ALOE in real-time you must launch it with root permissions:

sudo runph

Note that since ALOE executables are installed in /usr/local/bin, make sure this path is accessible from sudo (visudo command).

And in the runph prompt:

runph$: phload modem
runph$: phinit modem
runph$: phrun modem

And the waveform is running!

You can now view information about execution time:

runph$: execinfo modem

You can list available statistics and view/modify them:

runph$: statlist modem
runph$: statget modem turbodecoder max_iterations
runph$: statset example turbodecoder max_iterations 12

Remember to kill background ALOE processes when you finish. After closing the GUI, type:

sudo killph

aloeUI

To run the aloeUI start runph as a daemon and then run the GUI:

sudo runph --daemon
runph -gui

ALOE performance test

ALOE now includes a simple application to test the system performance. Since the application signal processing load is very low, the maximum performance is limited by the middleware overhead. To test the performance on your system, reduce the time slot duration until you experience real time failures. Load and run the waveform and check the computing resource utilization:

runph$: phload bpsktest
runph$: phinit bpsktest
runph$: phrun bpsktest
runph$: execinfo bpsktest

Observe the relinquish time of the last component (the first row in the execinfo output table). Theoretically, you could achieve a time slot duration as low as that time. To do so, stop the aloe session, edit the file at /usr/local/etc/platform.conf, set the 'tslot' field to a lower value and start runph again.



[Back to ALOE]