Project

General

Profile

Fosphor » History » Version 35

horiz0n, 02/19/2016 10:50 PM

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