Project

General

Profile

Fosphor » History » Version 38

sylvain, 02/19/2016 10:50 PM

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