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:
- readline (4.0 should be fine)
- termcap
- (optional) To use the soundcard converters you'll need jack libraries
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.