-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathINSTALL.txt
94 lines (59 loc) · 4.04 KB
/
INSTALL.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
I made these notes mostly for myself before I forget all the cruft that had to be done
to get this working.
=========================================================================================
Instalation steps that have to be taken on a new Linux system:
1) Install the latest AMD's GPU driver (named fglrx) if you do not have one yet.
To check this, type `fglrxinfo` in a terminal, you should see output like this:
display: :0.0 screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Mobility Radeon HD 5000 Series
OpenGL version string: 4.2.12173 Compatibility Profile Context 12.10.17
2) Install OpenCL SDK:
1.1) Goto to AMD's website http://developer.amd.com/tools/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/downloads/
1.2) Unpack the downloaded archive and run the installation script:
sudo ./Install-AMD-APP.sh
1.3) Now you have to reboot, for the environment to adapt to changes:
sudo reboot
3) Install cmake:
sudo apt-get install cmake
4) Install libxml2:
sudo apt-get install libxml2-dev
5) Install SDL libraries:
sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev
=========================================================================================
Testing installation:
1) Try out program from command line with one of the command line argument combinations
from file `cmd_line_params.txt` to see that is works
=========================================================================================
Converting generated object waves (holograms) to images, which can then be manufactured (printed)
1) This is done via DFtoHologram and HoloPropagLarge utilities from Holography Toolkit developed
at `University of West Bohemia` (download link: http://www.kiv.zcu.cz/en/research/downloads/product-detail-en.html?produkt_id=31)
2) Install Holography Toolkit dependancies:
sudo apt-get install libxerces-c-dev libfftw3-dev
3) Compile Holography Toolkit (there may be a few compilation errors but they are easy to fix).
3.1) In source directory go to folder `holoClibs` and run `make`
3.2) In source directory go to folder `DFtoHologram` and run `make`
3.2) In source directory go to folder `HoloPropagLarge` and run `make`
4) In folder `df` in script `post_process_and_verify.sh` you will have to adjust
the `holo_toolkit_path` variable to reflect the current location of compiled
Holography Toolkit binaries.
=========================================================================================
Optional installation steps:
1) Install CodeXL for kernel debugging:
- the driver should be installed as long as the OpenCL SDK is installed
so just go to http://developer.amd.com/tools/heterogeneous-computing/codexl/
and dowload the approriate version
- CodeXL does not reguire installation, just run the CodeXL script from bin
directory inside the downloaded release
=========================================================================================
Compilation options
to tweak the program at compilation time you can use the following macros:
HOLOREN_DEBUG ... if defined turns on debugging mode (will print a lot of additional diagonstic messages)
HOLOREN_HEAVY_DEBUG ... define this macro to enable operations that display a considerable amount of debug information
or significantly hinder the application with debug processing
HOLOREN_DEBUG_KERNEL ... define this macro when debugging kernel code. This macro makes the application pass additional
compilation flags to OpenCL compiler
HOLOREN_NO_WARNINGS ... if defined, then turns off warning messages (these may be emited when programs winds up in an
unexpected code path and may reveal the source of crash or of a weird behaviour)
NDEBUG ... standard macro to turn of asserts (on Unix see `man 3 assert`)
HOLOREN_DEBUG_PERF ... if defined, then enables the use of high precision timer to allow simple application profiling