/docs/HDDocs

To get this branch, use:
bzr branch http://darksoft.org/webbzr/docs/HDDocs

« back to all changes in this revision

Viewing changes to planning/projects.txt

  • Committer: Suren A. Chilingaryan
  • Date: 2016-08-01 09:39:25 UTC
  • Revision ID: csa@suren.me-20160801093925-gmn6dgr4rv6m55m1
Initial import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Tasks
 
2
-----
 
3
 - Infrastructure
 
4
    - Suren/Marco: Fully-functional backup server. Move katrin.kit.edu name to virtual machine
 
5
    which will perform packet forwarding only. Or just VIP. Gluster vs. Master-Master MySQL replication
 
6
    - Suren: How to proceed with student cluster computers? [ Enable Advanced/System Agent/iGPU. Find a 
 
7
    way to make snapshots (LFS vs BTRFs). User VMs using integrated video: KVM vs. OpenVZ/Docker/LXC ]
 
8
    OpenSUSE 13.1 vs 13.3? Configuring the nodes, packages (remote boot? git? ...) 
 
9
 - UFO paper
 
10
    - Roman: Fix DFI (and ensure proper scallability)
 
11
    - Matthias: Graph with bandwidth and latency of DirectGMA approach, DirectGMA vs. FPGA->CPU->GPU pathh
 
12
    - Andrey: UFO-clustering benchmarks, scalability of ART methods on the cluster (Dresden cluster)
 
13
    - Andrey: Why SBTV are performing badly on AMD platform? Scallability of SBTV
 
14
    - Tomas: Laminography scallability on new AMD platform
 
15
    - Timo: KIRO performance figures
 
16
 - Camera paper
 
17
    - Suren: see details in bechmarking description
 
18
 - uPiV paper
 
19
    - Chuan: Performance on AMD, NVIDIA, Intel
 
20
        * Why is not working on AMD/Intel? Use standard FFT instead of a full convolution. Or optimize it as in FBP?
 
21
    - Chuan: Multi-GPU support, scallability
 
22
 - ART paper
 
23
    - Andrey: Implement Split-Bregman with framelets & framelets+tv in UFO.
 
24
    - Andrey: Add DFI-based projectors (sinc)
 
25
    - Andrey: Ensure scalling is working well on the cluster (Dresden)
 
26
    - Andrey: More data sets (phase-contrast vs. absorbtion), simulation of Tomas (measure quality of algorithm)
 
27
    - Andrey: Find if ART-reconstruction help for segmentation
 
28
 - Visualization
 
29
    - Nicholas: Stable version
 
30
    - Nicholas: Zooming support
 
31
    - Nicholas: Show high quality cuts when no user-interaction
 
32
    - Nicholas: Full histogram as in version of Felix
 
33
    - Nicholas: 4D visualization
 
34
    - Andrey: Automatic background segmentation
 
35
    - Student?: Advanced rendering: Data compression? DCT? Use texture tree's to optimize preloading.
 
36
 - ASTOR
 
37
    - Andrey: Integration with slicer: show in low resolution / segment in high resolution.
 
38
 
 
39
 
 
40
Students
 
41
--------
 
42
 - For the start in Jan we need proposals in July / August.
 
43
 - For the start in May we need proposals in November.
 
44
 
 
45
ART-proposal
 
46
------------
 
47
 - Ralf Hofmann
 
48
    * Skeptical about DFG
 
49
        + We need reasons why Helmholtz will no pay this (science, not engineering)
 
50
        + Thinks best Engineering/Informatics
 
51
    * Additional scientific stuff
 
52
        + Define metrics to compare quality, etc.
 
53
        + For phase-contrast, first perform FBP (ART), then, phase retrieval
 
54
    * TV may be good, we only interested in the cell-countours in the embryo development
 
55
    * Interested to see the example DFG-proposal we have applied
 
56
    * Interested to participate in the PhD hiring process
 
57
 - Tomas / Baumbach?
 
58
 - Andreas proposed Felix (GKSS) 
 
59
 
 
60
 
 
61
Infrastructure
 
62
--------------
 
63
 - Nagios + Munin on ipepdvcompute* and cluster comoputers
 
64
 - Add ipebessadei to Nagios. Failed KATRIN redirects are not detected
 
65
 - Hardware: 2x 2.5'' to 3.5'' is taken by Danniel. Where is Raidsonic 2.5'' USB3 gehause + HDD (Chuan, Timo - order more)? HDD to WiFi was ordered? MiniPC complete (memory for Atom?)
 
66
    Lost GPUBox IPs: ipepdvcompute1 
 
67
        192.168.26.161 just re-saved (IP is missing)
 
68
        192.168.1.99 renamed to 192.168.26.162 (both IPs missing)
 
69
 
 
70
DarkServ
 
71
--------
 
72
 - darksoft.org expires on June 23, 2015
 
73
 - On serv1, if glibc upgraded to 2.17 or 2.19, all applications linked with libm are
 
74
 segfaulting. However, if we copy libm (only libm) from stage3-i486-20141209.tar.bz2, 
 
75
 everything seems to work. I have tried to configure and build myself disabling part 
 
76
 of optimizations, but to no avail (gcc 4.8.3 and latest kernel-headers). 
 
77
 Googling mention problem (or similar), but no solutions.
 
78
 All stuff for future evaluation in /home/csa/glibc
 
79
 
 
80
UFO
 
81
---
 
82
 - Infrastructure
 
83
    - I'm waiting for info from Meik and David on the ankaimage-mnt configuration
 
84
 - Visualization
 
85
    - Check sterescopic view provided by ThreeJS
 
86
    - Integrate automatic background removal
 
87
    - Support segmented volumes
 
88
    - Define multiple cache levels
 
89
    - Define optimal storage format and storage engine
 
90
    - Easy measurements of objects using pixel size on the web interface (voxel size is in meta-data)
 
91
    - Point some specific function areas and export it as CSV file from web interface.
 
92
 - UFO Architecture
 
93
    * Support ART in the cluster environment (transfer of object properties)
 
94
    * RDMA based clustering
 
95
    * On NVIDIA, common context for 9 GPUs significantly slow downs kernel execution penalty (from 20us to 150us).
 
96
    We may look into using per-device contexts. Or spawn multiple UFO severs?
 
97
    * UFO operations are either compiled on each invocation (very slow) or cached (only a single thread may use).
 
98
    Have to be fixed.
 
99
    * Aysnchronous buffer API + overlapping.
 
100
    * UFO/CUDA interoperability: OpenCL kernels can be compiled to PTX and further to nvidia cubins.
 
101
    Support code should dublicated for CUDA and OpenCL.
 
102
 - Better profilling
 
103
    * Currently there is no clFinish in the end if profilling is off. App will exit before GPUs are done
 
104
    * In profilling charts show kernels and tasks using the same time scale (better interleave in single chart)
 
105
    * Show per-gpu usage
 
106
    * Show transfer time in the kernels
 
107
    * per-GPU usage
 
108
 - Optimizations and requirements of secondary filters
 
109
    * ROI: Is currently always executed on CPU. For DFI this will increase the amount of
 
110
    data transfered over PCIe significantly. We need hybrid version.
 
111
    * FFT: Can we fix AMD library to fix performance on NVIDIA hardware and improve 
 
112
    R2C/C2R performance?
 
113
 - FBP
 
114
    * Optimize PyHST for Xeon Phi & GK110
 
115
        * Check  https://ispc.github.io/
 
116
    * UFO: Migrate part of optimizations from PyHST (At least Kepler and GCN versions)
 
117
 - DFI
 
118
    * UFO: Compute redundant coefficients using Hermetian symmetry
 
119
    * Eliminate swapping quadrants stage before iFFT (just recompute coefficients in interpolation kernel) 
 
120
    * PyHST: Eleminate quandrant swapping and crop after iFFT (integrate it into the cudaMemcpy call splitting it 
 
121
    in 4 parts)
 
122
    * In-place vs. out-of-place FFT? Currently, UFO is o-o-p, PyHST R2C is i-p and C2R is o-o-p.
 
123
 - ART
 
124
     - Compare quality and performance with Shao Lie application. Check our reconstruction with data
 
125
     from Shao Lie and check Shao Lie reconstruction with data from Andrey's Article.
 
126
     - Check if low-pass filtering may improve results on real-data.
 
127
     - Provide projectors and back-projector in Matlab. Can we accelerate it like that? Multi-GPU.
 
128
     - Number of kernel lauches takes significant time (2 launches per iteration per projection in SART) and
 
129
     harms scallability on NVIDIA platform
 
130
     - Fix running on clusters
 
131
     - Split-bregmann (linearized-bregman), wavelets, overcomplete dictionaries
 
132
     - TV-regularization on GPU
 
133
     - Phase contrast and absorption contrast reconstruction and segmentation differs.
 
134
    In phase contrast there are sharp edges. Find good dataset.
 
135
 - FFT Benchmark
 
136
    * C2R/R2C speed 
 
137
    * in-place vs. out-of-place
 
138
 - ASTOR segmentation
 
139
    - Background removal is most important now. Fighting ring artefacts, etc. Philipp algorithms.
 
140
    - Positioning of object: where is head, where is tail, etc...
 
141
    - There is inperfect ring-removal code fixing small artifacts (Tomas)
 
142
 - PyHST
 
143
    * Provide PyHST/OpenCL to deal with 8001 projections [Shall we?]
 
144
    * Fix preprocessing SSE code of PyHST (alignment causes segmentations in some cases)
 
145
 - Scripts
 
146
    - Get update reconstruct script supporting reduced DFI output.
 
147
    - Integrate DFI roi options to reconstruct script
 
148
    
 
149
 
 
150
Visualization
 
151
-------------
 
152
 - Histogram (Felix)
 
153
 - State recovery or storage of the current view (Felix)
 
154
 - Settings storage (Transferfunction, Grayvalue selection) to apply on different volumes, maybe per user setting (Felix)
 
155
 - Multiple time frames in zooming mode (Felix)
 
156
 - Those orthogonal layers, which can be slid through the unvisible volume and on which the volume values are visible (Felix)
 
157
 - Background removal (Philipp, Andrey)
 
158
 - MapReduce with database
 
159
 
 
160
    
 
161
Articles
 
162
--------
 
163
 - UFO (with ASTOR) status and perspectives
 
164
 - Reconstruction stack of UFO framework
 
165
    * We might include phase contrast and grating interferometry (and possibly
 
166
    other interesting preprocessing filters)
 
167
    * We need to compare FBP and DFI quality. Noisy data? Undersampled data?
 
168
    Is there cases when the FBP quality is superior?
 
169
    * We need a better explanation why interpolation is limited to R (this is
 
170
    not completely losseless) and that consequences it have for different types
 
171
    of data (small details? Phantom used by Andrey?)
 
172
    * UFO scalability issues. DFI is only add 50% performance with each GPU.
 
173
    ART performance fully stops after 6th device.
 
174
    * Thorsten Hopp have some expirience in defining metrics to compare reconstructed images
 
175
 - Optimizing FBP for parallel architectures
 
176
 - DFI
 
177
    * Verify FFT performance. Why iFFT 3 times slwoer when where is no significant difference
 
178
    in FFT benchmark. Verify cuFFT C2R/R2C is no faster than C2C. Can we add it on the FFT chart
 
179
    otherwise? Seems, cuFFT value for 2D FFT benchmark is wrong. Or is it due to C2C vs. C2R difference?
 
180
    * In the stages benchmark, we have included H2D, but not D2H timing (in the null-task we doesn't 
 
181
    copy anything from device to host (we can force to copy, but it requires to set 'force-download' 
 
182
    property). Cropping is excluded from UFO-chain due to lack of GPU version. Cropping is
 
183
    artificially excluded from PyHST numbers as well. It would be nice to include both
 
184
    cropping stage and D2H transfer time in memory operations. The qundrant swapping should be 
 
185
    split in 2 (is it actually joined or more is skipped from post iFFT stages?): pre-iFFT
 
186
    and post-iFFT.
 
187
     Actually what is included and excluded from performance chart?
 
188
 
 
189
 
 
190
    
 
191
    
 
192
Algorithms
 
193
-----------
 
194
 - DFI
 
195
    - In OpenCL interpolate only half the volume by performing mirroring before 2D ifft
 
196
    - Move zero-padding optimiztions to CUDA version
 
197
    
 
198
 
 
199
 
 
200
ADEI
 
201
----
 
202
 - Top priority
 
203
    - Artur: Finish CRD modification and integrate in my version
 
204
    - Suren: Return data from caches.
 
205
    - Suren: Cache ADEI metadata in disconnected configurations
 
206
    - Nicholas: Run-time interface with export of Raw Files (NetCDF for KITCube, free-format in general).
 
207
  - PhD idea:
 
208
    * Automatic data quality montiroing. Find trends and check if some sensors measurements
 
209
    are fall out of the trends. Correlations, auto-correlations, etc. Also, introduce models,
 
210
    etc.
 
211
 - KIT Cube:
 
212
    We need to integrate more views from Weisser and provide them as secondary graphs
 
213
    in ADEI (HATPRO, Lidar, Radar). 
 
214
 - Students:
 
215
    * ADEI: Filter 850 values among KATRIN temperatures
 
216
    * ADEI: Support filter= parameter in get_data service
 
217
    * ADEI: Provide access to the cached data instead of real (cache=3600) and use cache in
 
218
    get_data.php by default
 
219
    * ADEI: Handle ADEI archives with missing active database
 
220
    * ADEI/Control: cache DB configuration and accept retries parameter (check for timeout error)
 
221
    * ADEI: Check alternative D3 rendering engine
 
222
    * ADEI: Temperature profile, etc. visualization in main graph
 
223
    * ADEI: Download Manager for multi-purpose configurations
 
224
    * ADEI: Download is failing for databases which source was cut, but cache stayed. No real data.
 
225
    * ADEI: Database sorting as in configuration
 
226
    * ADEI: JpGraph log axis are always starting from 1. Update jpgraph or configure manually
 
227
    * ADEI: Notify in status that there is too many axes
 
228
 - Matveev
 
229
    * We may reconsider database selection. Mozilla is important. Just think about more clever way
 
230
    to use indexedDb API.Also, something strange is happening with parsing data from cache (it stored
 
231
    as JSON now?)
 
232
    * Web sockets or HTTP Get? 
 
233
    * Workers in web threads
 
234
        https://bugzilla.mozilla.org/show_bug.cgi?id=504553
 
235
 
 
236
 - CRD: Prevent SELECT based aggregation for views (resolution should boldly define the results)
 
237
 - Haag: Slow export (CSV) performance
 
238
 - Haag: Joining of historical databases
 
239
 - Andreas: Run/Subrun architecture (!)
 
240
 - Andreas: Raw file exporter (!)
 
241
 - Andreas: Mixed X & Y axes for Scatter plot, Problems with Log-scale labeling, Add cross-correlation plot
 
242
 - ADEI autokiller to prevent hanged ADEI processes
 
243
 
 
244
 
 
245
 
 
246
ALPS
 
247
====
 
248
 - Fixes
 
249
    - In pci cli while writting to files prevent telling (writted xx bytes) - quite mode
 
250
 - HEB
 
251
     - Event Engine for HEB (clearing the padding), Payload Patch, Support for multiple devices
 
252
 - Better camera locking
 
253
    - We should have locking for the register access and camera start/stop/stream
 
254
    operations. The DMA IP should remain for complete time of streaming.
 
255
    However, after start we are unlocking camera and would like to allow
 
256
    multiple threads to request frames. The stop should be called by the same
 
257
    thread who executed start.
 
258
    - Driver may report on process controlling DMA?
 
259
 - Alps2
 
260
    - Optimize buffer access, use hash-tables?
 
261
    - Disconnect DMA and Event plugins...
 
262
    - Support XML register models...
 
263
    - Simplify driver, check VFIO...
 
264
    - Allow DMA mapping of user-supplied memory...
 
265
    - Support internal auto-triggering
 
266
    - Properly use bus addresses
 
267
 - GPUDirect
 
268
    - Can we stabilize IB on ARM? Ask Pedraforca for help...
 
269
        http://www.bsc.es/about-bsc/staff-directory/puzovic-nikola
 
270
        http://www.bsc.es/computer-sciences/computer-architecture
 
271
        http://webcache.googleusercontent.com/search?q=cache:NjZnHfkNqJ0J:on-demand.gputechconf.com/gtc/2013/presentations/S3064-Pedraforca-ARM-GPU-Cluster-HPC.pdf+&cd=1&hl=en&ct=clnk
 
272
     - Can we do GPUDirect without Tesla?
 
273
     - Play with remote GPUs (IB): manual and with MPI stack. 
 
274
        - Will Titan work?
 
275
     - Can we do direct Camera->IB transfers?
 
276
     - GPUDirect for RDMA vs. GPUDirect for Video
 
277
     - AMD DirectGMA? HSA specifications?
 
278
 - Clustering
 
279
    - Rewrite UCA driver efficiently
 
280
    - Try to provide general rDMA based interface (?)
 
281
    - GPI-2 replacement for MPI?
 
282
 - Streaming to storage
 
283
     - IO: Check Linus idea to use mmap I/O and page faults instead of O_DIRECT
 
284
 
 
285
 
 
286
UPiV
 
287
----
 
288
 - MultiGPU issues. Are we fine now?
 
289
 
 
290
ZEUS
 
291
----
 
292
 - Control system (cFP interface with shared variable and DB, PVSS-based system, Direct cFP protocol)
 
293
    EPICS?