fast watermarking for digital content protecting using gpus
DESCRIPTION
TRANSCRIPT
![Page 1: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/1.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Fast Watermarking for Digital Content Protectingusing GPUs
Amirali Sharifian
Isfahan University of Technology
February 19, 2014
1 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 2: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/2.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
1 Digital WatermarkingIntroductionDCT
2 Parallel Programming ModelHardwareProgramming Model
3 OptimizationBlock SizeTiled algorithm
4 ImplementationResultsFuture implementation
2 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 3: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/3.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Questions
What is watermarking and why we use it?
How we model our programs on GPUs and what is CUDA C?
What is the role and importance of GPUs in watermarking?
3 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 4: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/4.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Watermark
Def: A watermark is a recognizableimage or pattern in paper that appearsas various shades of lightness/darkness
4 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 5: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/5.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Digital Watermarking
Def: The procedure of embedding copyright information in adigital content such as image, video or audio.
5 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 6: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/6.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Watermarking system methods and properties
Spatial domain
Frequency domain
- DFT- DCT- DWT
Spatial domain Frequency domainComputation complexity Low High
Robustness Fragile More robust
Capacity High Low
Application Authentication Copyright
6 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 7: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/7.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Watermarking method
Image(Cover)
Partitioning DCT Embeding
IDCT ReconstructingI ′
Watermarked Image
Bi DCT (Bi)
DCT ′(Bi)
B′i
7 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 8: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/8.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Discrete Cosine TransformDefinition method
Definition method
C(U,V ) = α(u)α(v)∑N−1
x=0
∑N−1y=0 f (x , y) cos
[π(2x+1)u
1N
]cos
[π(2y+1)v
2N
]
8 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 9: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/9.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Discrete Cosine TransformEfficient method
Efficient method
2-D DCT(x) = 1-D DCT((1-D DCT(X ))t)
9 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 10: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/10.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Embedding method
λ = |Ck(L)− Ck(S)|
10 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 11: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/11.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Architecture
CPU and GPU are designed very differently
CPUs: Latency oriented design
Powerful ALU
Large caches
Sophisticated control
GPUs: Throughput oriented design
Small Chaches
Simple control
Energy efficient ALUs
11 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 12: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/12.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
CUDA / OpenCL - Execution model
Heterogeneous host+device application C program- Serial parts in host C code- Parallel parts in device SPMD kernel C code
12 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 13: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/13.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
A Multi-Dimensional Grid Example
13 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 14: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/14.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
CUDA memory model
14 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 15: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/15.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
” Parallel programming is easy as long as you don’t care aboutperformance.”
15 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 16: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/16.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Executing thread blocks
Threads are assigned to StreamingMultiprocessors (SM) in blockgranularity
Up to 8 Blocks to each SM asresource allowsFermi SM can take up to 1536threads
Could be 256 (threads/block) * 6blocksOr 512 (threads/block) * 3blocks, etc.
Each block is executed as 32-threadWarps
16 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 17: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/17.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
The Von-NeumannModel
The Von-NeumannModel with SIMD
units
17 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 18: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/18.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Importance of memory access efficiently
Compute to Global Memory Access (CGMA)- Memory bandwidth = 200GB/s → 50(200/4) giga
single-percision → 50 GFLOPS- The peak single-precision performance: 1,500 GFLOPS !!
18 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 19: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/19.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Tiled matrix multiplication
Global memory access pattern of the base matrix multiplicationkernel
19 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 20: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/20.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Tiled matrix multiplicationOptimized
For 150GB/s global memory bandwidth⇒ (150/4)× 16 = 600 GFLOPS !!
20 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 21: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/21.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Other Optimization
Dram bandwidth
Memory coalescing
Tiled Convolution
Data transfer and Virtual Memory
Pinned memory and DMA data transfer
21 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 22: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/22.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Speedup
Implementation results on a system with Core i7 - 3.40 GHZ CPUand GTX570 GPU:
Speedup = GPUTimeCPUTime
22 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 23: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/23.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Comparing two different systems
System 1 System 2
CPU Core i7 - 3.40 GHZ Core i3 - 3.10 GHZ
GPU GTX 570 GTX 460
23 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 24: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/24.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Implementing the algorithm on mobile phones
Using watermarking algorithms in multimedia streaming
24 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
![Page 25: Fast watermarking for digital content protecting using GPUs](https://reader038.vdocument.in/reader038/viewer/2022103014/548056675906b51c298b4732/html5/thumbnails/25.jpg)
Digital WatermarkingParallel Programming Model
OptimizationImplementation
Question ?
25 / 25
Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs