Project

General

Profile

Fosphor » History » Version 46

sylvain, 02/19/2016 10:50 PM

1 1 sylvain
= gr-fosphor
2
3
GNU Radio block for RTSA-like spectrum visualization using GPU
4
5
http://git.osmocom.org/gr-fosphor/
6 2 sylvain
7 21 horiz0n
== Building
8
9 40 sylvain
Warning: Mixed prefix install is not supported. You need to install gr-fosphor in the same prefix as your GNU Radio install. If you used build-gnuradio this will be /usr/local and this is what's used in the instructions below. If you use a packaged version of GNU Radio, it's most likely /usr and the best way is then to make a package for gr-fosphor for your distribution.
10
11 21 horiz0n
=== GLFW3
12
13
Install dependencies
14
15
{{{
16 24 horiz0n
sudo apt-get install cmake xorg-dev libglu1-mesa-dev
17
}}}
18
19 21 horiz0n
Build GLFW
20
21
{{{
22
git clone https://github.com/glfw/glfw
23
cd glfw
24
mkdir build
25
cd build
26
cmake ../ -DBUILD_SHARED_LIBS=true
27
make
28 1 sylvain
sudo make install
29
sudo ldconfig
30 21 horiz0n
}}}
31 1 sylvain
32
=== gr-fosphor
33
34 25 horiz0n
Install dependencies
35
36 26 horiz0n
==== For NVidia
37 25 horiz0n
38
 * install [http://www.nvidia.com/object/unix.html NVidia drivers]
39 1 sylvain
40 25 horiz0n
{{{
41
sudo apt-get install nvidia-opencl-dev opencl-headers
42
}}}
43
44 26 horiz0n
==== For AMD
45 25 horiz0n
46 45 horiz0n
 * install [http://support.amd.com/en-us/download AMD drivers] (13.4, 13.11 beta6 and 13.12 drivers are known to work on linux)
47 25 horiz0n
 * install [http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/ AMD APP SDK]
48
49 33 horiz0n
==== For Intel
50
51 42 horiz0n
 * No OpenCL support on Linux for HD and Iris Graphics (Wake up, Intel!). Fosphor has been confirmed to work with Iris graphics on OSX.
52 33 horiz0n
53 25 horiz0n
Build gr-fosphor
54
55
{{{
56 21 horiz0n
git clone git://git.osmocom.org/gr-fosphor
57
cd gr-fosphor
58
mkdir build
59
cd build
60 37 sylvain
cmake ..
61 21 horiz0n
make
62
sudo make install
63
sudo ldconfig
64
}}}
65
66 1 sylvain
Build benchmark tool
67
68 21 horiz0n
{{{
69
cd gr-fosphor/lib/fosphor
70
make
71
}}}
72 25 horiz0n
73
Fosphor is known to build successfully on Linux, OSX and Windows.
74 21 horiz0n
75 46 sylvain
==== Known issues
76
77
 * Some version of ubuntu (like 13.10) have screwed up OpenCL dev files setup and it might be required to manually specify a path to the actual OpenCL library during the cmake step ( like {{{-DOPENCL_LIBRARY=/usr/lib/nvidia-304/libOpenCL.so}}} )
78
79 2 sylvain
== Screenshots
80
81 15 sylvain
=== Short video examples
82
83
http://www.youtube.com/watch?v=mjD-l3GAghU
84
85
{{{
86
#!html
87
<iframe width="960" height="720" src="http://www.youtube.com/embed/mjD-l3GAghU" frameborder="0" allowfullscreen></iframe>
88
}}}
89
90
91 2 sylvain
=== osmocom_fft in fosphor mode
92
[[Image(GrOsmoSDR:fosphor.png)]]
93
94
[[Image(GrOsmoSDR:fosphor2.png)]]
95 3 horiz0n
96
== Bandwidth figures
97
98
There's a benchmark program available which allows to estimate the maximal bandwidth that can be processed with a specific GPU.
99
100
To build it:
101
102
{{{
103
cd gr-fosphor/lib/fosphor
104
make
105
}}}
106
107
Then execute it by providing a prerecorded complex float file (a couple of 100MB should be fine) in gnuradio format.
108
109
{{{
110
./main some.cfile
111
}}}
112
113 14 horiz0n
Try to leave the window to its default size if possible and watch out for the Msps numbers printed out to the console.
114
115
Submit your numbers & help us to create a GPU survey. We are especially interested in the top end and mobile graphics figures.
116 3 horiz0n
117 8 sylvain
||'''CPU'''||'''GPU'''||'''Msps'''||
118 31 horiz0n
||?||AMD R290(X)||WANTED||
119 8 sylvain
||?||NVidia Titan||WANTED||
120 42 horiz0n
||i7-4770K 3.5 GHz||NVidia !GeForce GTX 760||~228||
121 1 sylvain
||?||AMD Radeon HD 7970 (Tahiti)||~220||
122 41 horiz0n
||i5-3570K 3.4 GHz||AMD Radeon HD 7870 (Tahiti)||~220||
123 40 sylvain
||i7-3770K 3.4 GHz||Nvidia GTX 660||~202||
124
||i7-3770K 3.4 Ghz||Nvidia GTX 760||~191||
125 39 ttsou
||i7-4770K 3.5 GHz||Nvidia GTX 650 Ti Boost||~188||
126 28 horiz0n
||i5-3570K 3.4GHz||AMD Radeon HD 7870 (Pitcairn)||~112||
127 29 horiz0n
||i5-2500 3.3GHz||NVidia GTX 550 Ti||~110||
128 28 horiz0n
||i5-2500k 3.8GHz||AMD Radeon HD 6850||~100||
129 1 sylvain
||?||NVidia GTX 550 Ti||~97||
130 28 horiz0n
||QC Xeon 2 GHz||Nvidia !GeForce 560 Ti||~73||
131 42 horiz0n
||C2D 2.66 GHz||NVidia !GeForce GT 640 (GK107)||~67||
132 44 sylvain
||i5 2.4 GHz||Intel Iris Pro 5100||~65||
133 42 horiz0n
||i7-950 3.06 GHz||NVidia GT9800||~61||
134
||i5-2500K 4.2 GHz||AMD Radeon HD 6570||~58||
135 30 horiz0n
||C2D 3.00GHz||NVidia !GeForce 9800 GT||~47||
136 43 sylvain
||i5-2520M 2.5 GHz||NVidia GF119M||~46||
137 28 horiz0n
||C2D 2.4GHz||NVidia 9600M GT||~31||
138
||?||NVidia GT330M||~22||
139
||?||NVidia 8600GT||~15||
140
||C2D 2.2GHz||NVidia NVS 140M||~14||
141 1 sylvain
||AMD E350 Fusion APU||AMD Radeon 6310||~12||
142 37 sylvain
||C2Q Q9650 3.00GHz||!GeForce 9300 GE||~11||
143 28 horiz0n
||Atom 330||NVidia ION||~10||
Add picture from clipboard (Maximum size: 48.8 MB)