SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Fast Watermarking for Digital Content Protecting
using GPUs
Amirali Sharifian
Isfahan University of Technology

February 19, 2014

1 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

1

Digital Watermarking
Introduction
DCT

2

Parallel Programming Model
Hardware
Programming Model

3

Optimization
Block Size
Tiled algorithm

4

Implementation
Results
Future implementation
2 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

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
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Watermark

Def: A watermark is a recognizable
image or pattern in paper that appears
as various shades of lightness/darkness

4 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Digital Watermarking
Def: The procedure of embedding copyright information in a
digital content such as image, video or audio.

5 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Watermarking system methods and properties
Spatial domain
Frequency domain
- DFT
- DCT
- DWT

Computation complexity
Robustness
Capacity
Application

Spatial domain
Low
Fragile
High
Authentication

Frequency domain
High
More robust
Low
Copyright
6 / 25

Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Watermarking method

Image
(Cover)

Partitioning

Bi

DCT

DCT (Bi )

Embeding

DCT (Bi )

IDCT

Bi

Reconstructing

I
Watermarked Image

7 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Discrete Cosine Transform
Definition method

Definition method
C (U, V ) = α(u)α(v )

N−1
x=0

N−1
y =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
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Discrete Cosine Transform
Efficient 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
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Embedding method

λ = |Ck (L) − Ck (S)|

10 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Architecture
CPU and GPU are designed very differently
CPUs: Latency oriented design

GPUs: Throughput oriented design

Powerful ALU

Small Chaches

Large caches

Simple control

Sophisticated control

Energy efficient ALUs

11 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

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
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

A Multi-Dimensional Grid Example

13 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

CUDA memory model

14 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

” Parallel programming is easy as long as you don’t care about
performance.”

15 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Executing thread blocks
Threads are assigned to Streaming
Multiprocessors (SM) in block
granularity
Up to 8 Blocks to each SM as
resource allows
Fermi SM can take up to 1536
threads
Could be 256 (threads/block) * 6
blocks
Or 512 (threads/block) * 3
blocks, etc.

Each block is executed as 32-thread
Warps
16 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

The Von-Neumann
Model

The Von-Neumann
Model with SIMD
units

17 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

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
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Tiled matrix multiplication

Global memory access pattern of the base matrix multiplication
kernel

19 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Tiled matrix multiplication
Optimized

For 150GB/s global memory bandwidth
⇒ (150/4) × 16 = 600 GFLOPS !!
20 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

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
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Speedup
Implementation results on a system with Core i7 - 3.40 GHZ CPU
and GTX570 GPU:

Speedup =

GPUTime
CPUTime

22 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Comparing two different systems
System 1
CPU
GPU

System 2

Core i7 - 3.40 GHZ

Core i3 - 3.10 GHZ

GTX 570

GTX 460

23 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Implementing the algorithm on mobile phones
Using watermarking algorithms in multimedia streaming

24 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs
Digital Watermarking
Parallel Programming Model
Optimization
Implementation

Question ?

25 / 25
Amirali Sharifian

Fast Watermarking for Digital Content Protecting using GPUs

Más contenido relacionado

Similar a Fast watermarking for digital content protecting using GPUs

"Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20...
"Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20..."Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20...
"Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20...AWS Chicago
 
Implementation of Rotation and Vectoring-Mode Reconfigurable CORDIC
Implementation of Rotation and Vectoring-Mode Reconfigurable CORDICImplementation of Rotation and Vectoring-Mode Reconfigurable CORDIC
Implementation of Rotation and Vectoring-Mode Reconfigurable CORDICijtsrd
 
Real-time processing of large amounts of data
Real-time processing of large amounts of dataReal-time processing of large amounts of data
Real-time processing of large amounts of dataconfluent
 
"The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta...
"The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta..."The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta...
"The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta...Edge AI and Vision Alliance
 
"Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr...
"Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr..."Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr...
"Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr...Edge AI and Vision Alliance
 
Get the most out of mobile with Vulkan in Unity
Get the most out of mobile with Vulkan in UnityGet the most out of mobile with Vulkan in Unity
Get the most out of mobile with Vulkan in UnityDevGAMM Conference
 
DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018Scilab
 
Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018
Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018
Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018Cloudify Community
 
Ravi Chakervarti - Paper on Modular Construction
Ravi Chakervarti - Paper on Modular ConstructionRavi Chakervarti - Paper on Modular Construction
Ravi Chakervarti - Paper on Modular ConstructionRAVI CHAKERVARTI
 
Are your ready for in memory applications?
Are your ready for in memory applications?Are your ready for in memory applications?
Are your ready for in memory applications?G2MCommunications
 
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...Intel® Software
 
CAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementCAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementGanesan Narayanasamy
 
Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019
Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019
Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019VMware Tanzu
 
Are you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkAre you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkMegan O'Keefe
 
Exploring Phantom Traffic Jams in Your Data Flows
Exploring Phantom Traffic Jams in Your Data Flows Exploring Phantom Traffic Jams in Your Data Flows
Exploring Phantom Traffic Jams in Your Data Flows ScyllaDB
 
Arm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based MultiprocessingArm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based MultiprocessingArm
 

Similar a Fast watermarking for digital content protecting using GPUs (20)

"Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20...
"Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20..."Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20...
"Cars.com Journey to AWS Cloud" by Naresh Chintalcheru at Cars.com July 11 20...
 
Cars.com Journey to AWS Cloud
Cars.com Journey to AWS CloudCars.com Journey to AWS Cloud
Cars.com Journey to AWS Cloud
 
Implementation of Rotation and Vectoring-Mode Reconfigurable CORDIC
Implementation of Rotation and Vectoring-Mode Reconfigurable CORDICImplementation of Rotation and Vectoring-Mode Reconfigurable CORDIC
Implementation of Rotation and Vectoring-Mode Reconfigurable CORDIC
 
Real-time processing of large amounts of data
Real-time processing of large amounts of dataReal-time processing of large amounts of data
Real-time processing of large amounts of data
 
CFD on Power
CFD on Power CFD on Power
CFD on Power
 
"The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta...
"The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta..."The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta...
"The Xilinx AI Engine: High Performance with Future-proof Architecture Adapta...
 
"Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr...
"Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr..."Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr...
"Dynamically Reconfigurable Processor Technology for Vision Processing," a Pr...
 
Get the most out of mobile with Vulkan in Unity
Get the most out of mobile with Vulkan in UnityGet the most out of mobile with Vulkan in Unity
Get the most out of mobile with Vulkan in Unity
 
DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018
 
Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018
Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018
Edge Orchestration & Federated Kubernetes Clusters - Open Networking Summit 2018
 
Ravi Chakervarti - Paper on Modular Construction
Ravi Chakervarti - Paper on Modular ConstructionRavi Chakervarti - Paper on Modular Construction
Ravi Chakervarti - Paper on Modular Construction
 
Are your ready for in memory applications?
Are your ready for in memory applications?Are your ready for in memory applications?
Are your ready for in memory applications?
 
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
Fast Insights to Optimized Vectorization and Memory Using Cache-aware Rooflin...
 
CAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementCAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablement
 
IBM Cloud to the Edge
IBM Cloud to the EdgeIBM Cloud to the Edge
IBM Cloud to the Edge
 
Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019
Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019
Operationalizing AI at scale using MADlib Flow - Greenplum Summit 2019
 
2014 cf summit_clustering
2014 cf summit_clustering2014 cf summit_clustering
2014 cf summit_clustering
 
Are you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkAre you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the network
 
Exploring Phantom Traffic Jams in Your Data Flows
Exploring Phantom Traffic Jams in Your Data Flows Exploring Phantom Traffic Jams in Your Data Flows
Exploring Phantom Traffic Jams in Your Data Flows
 
Arm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based MultiprocessingArm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
 

Último

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Último (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Fast watermarking for digital content protecting using GPUs

  • 1. Digital Watermarking Parallel Programming Model Optimization Implementation Fast Watermarking for Digital Content Protecting using GPUs Amirali Sharifian Isfahan University of Technology February 19, 2014 1 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 2. Digital Watermarking Parallel Programming Model Optimization Implementation 1 Digital Watermarking Introduction DCT 2 Parallel Programming Model Hardware Programming Model 3 Optimization Block Size Tiled algorithm 4 Implementation Results Future implementation 2 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 3. Digital Watermarking Parallel Programming Model Optimization Implementation 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
  • 4. Digital Watermarking Parallel Programming Model Optimization Implementation Watermark Def: A watermark is a recognizable image or pattern in paper that appears as various shades of lightness/darkness 4 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 5. Digital Watermarking Parallel Programming Model Optimization Implementation Digital Watermarking Def: The procedure of embedding copyright information in a digital content such as image, video or audio. 5 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 6. Digital Watermarking Parallel Programming Model Optimization Implementation Watermarking system methods and properties Spatial domain Frequency domain - DFT - DCT - DWT Computation complexity Robustness Capacity Application Spatial domain Low Fragile High Authentication Frequency domain High More robust Low Copyright 6 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 7. Digital Watermarking Parallel Programming Model Optimization Implementation Watermarking method Image (Cover) Partitioning Bi DCT DCT (Bi ) Embeding DCT (Bi ) IDCT Bi Reconstructing I Watermarked Image 7 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 8. Digital Watermarking Parallel Programming Model Optimization Implementation Discrete Cosine Transform Definition method Definition method C (U, V ) = α(u)α(v ) N−1 x=0 N−1 y =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
  • 9. Digital Watermarking Parallel Programming Model Optimization Implementation Discrete Cosine Transform Efficient 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
  • 10. Digital Watermarking Parallel Programming Model Optimization Implementation Embedding method λ = |Ck (L) − Ck (S)| 10 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 11. Digital Watermarking Parallel Programming Model Optimization Implementation Architecture CPU and GPU are designed very differently CPUs: Latency oriented design GPUs: Throughput oriented design Powerful ALU Small Chaches Large caches Simple control Sophisticated control Energy efficient ALUs 11 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 12. Digital Watermarking Parallel Programming Model Optimization Implementation 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
  • 13. Digital Watermarking Parallel Programming Model Optimization Implementation A Multi-Dimensional Grid Example 13 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 14. Digital Watermarking Parallel Programming Model Optimization Implementation CUDA memory model 14 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 15. Digital Watermarking Parallel Programming Model Optimization Implementation ” Parallel programming is easy as long as you don’t care about performance.” 15 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 16. Digital Watermarking Parallel Programming Model Optimization Implementation Executing thread blocks Threads are assigned to Streaming Multiprocessors (SM) in block granularity Up to 8 Blocks to each SM as resource allows Fermi SM can take up to 1536 threads Could be 256 (threads/block) * 6 blocks Or 512 (threads/block) * 3 blocks, etc. Each block is executed as 32-thread Warps 16 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 17. Digital Watermarking Parallel Programming Model Optimization Implementation The Von-Neumann Model The Von-Neumann Model with SIMD units 17 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 18. Digital Watermarking Parallel Programming Model Optimization Implementation 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
  • 19. Digital Watermarking Parallel Programming Model Optimization Implementation Tiled matrix multiplication Global memory access pattern of the base matrix multiplication kernel 19 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 20. Digital Watermarking Parallel Programming Model Optimization Implementation Tiled matrix multiplication Optimized For 150GB/s global memory bandwidth ⇒ (150/4) × 16 = 600 GFLOPS !! 20 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 21. Digital Watermarking Parallel Programming Model Optimization Implementation 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
  • 22. Digital Watermarking Parallel Programming Model Optimization Implementation Speedup Implementation results on a system with Core i7 - 3.40 GHZ CPU and GTX570 GPU: Speedup = GPUTime CPUTime 22 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 23. Digital Watermarking Parallel Programming Model Optimization Implementation Comparing two different systems System 1 CPU GPU System 2 Core i7 - 3.40 GHZ Core i3 - 3.10 GHZ GTX 570 GTX 460 23 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 24. Digital Watermarking Parallel Programming Model Optimization Implementation Implementing the algorithm on mobile phones Using watermarking algorithms in multimedia streaming 24 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs
  • 25. Digital Watermarking Parallel Programming Model Optimization Implementation Question ? 25 / 25 Amirali Sharifian Fast Watermarking for Digital Content Protecting using GPUs