SlideShare a Scribd company logo
1 of 23
Download to read offline
Ole Wegen, Matthias Trapp, Jürgen Döllner
Hasso Plattner Institute, Faculty of Digital Engineering,
University of Potsdam, Germany
Sebastian Pasewaldt
Digital Masterpieces GmbH
Germany
In Cooperation with:
Funded by:
Image processing is a common task
Observations:
1. Increased usage of mobile hardware
2. Increase in cloud-processing capabilities and infrastructure
3. Increase of network throughput
Service-based provisioning of image processing functionality
for web-based or mobile applications:
▪ Accessible from anywhere
▪ Useable with any device (hardware independent)
Important aspects to account for:
1. Processing implementations often rely on hardware-acceleration (e.g. GPUs)
2. Scalability as a crucial factor when using a service-based approach
These requirements are often accompanied with high financial costs:
• Dedicated server hardware w.r.t. specs
• Limited availability
Software rendering (SWR) can reduce these costs:
• Rendering performed entirely on the CPU (affordable)
• Enables execution of GPU-based programs on hosts without GPU support
SWR was investigated for:
▪ Ma and Parker, 2001:
Visualizing large-scale datasets
▪ Mileff and Dudra, 2013:
Texture rendering
▪ Hayashi et al., 2018:
In-situ visualization for volume rendering system
Contribution A: SWR for Service-based image processing
Contribution B: Performance comparison between dedicated GPU server vs. SWR server:
▪ Main classes of image processing techniques
(point and neighbourhood, single vs. multipass)
▪ Different image resolutions
▪ Various server configurations
Input
Output
Mesa3D:
▪ 3D Graphics Library implementing
graphics API specifications
▪ Supports OpenGL, Vulkan and others
▪ Commonly used for SWR
Gallium3D:
▪ API to support driver development
▪ Abstracting from graphics API
▪ Abstracting from operating system
Available Gallium3D Driver:
▪ softpipe
▪ LLVMpipe
▪ openSWR
https://en.wikipedia.org/wiki/Mesa_(computer_graphics)
Test machine:
▪ Intel Core i5-8400
▪ 6 Cores at 2.8 GHz
▪ 16 GB DDR4 RAM
Operation: Morphological Closing (Kernel size 3)
Two Docker Containers:
▪ The instance of image processor
▪ A NodeJS server exposing a REST [Winkler and Schlesiger, 2013] interface for communication
▪ Communication between these containers through WebSockets
▪ Processing Techniques:
• Color Invert (A)
• Point-based
• Single Pass
• Morphological Closing (B)
• Neighbourhood-based
• Separated Passes
• Tested kernel sizes: 3, 14, 90
• Oilpaint (C)
• Multipass, Neighbourhood-based
• # Passes: 18
▪ Tested spatial resolutions:
• 1280 x 720 (HD)
• 1920 x 1080 (FHD)
• 2560 x 1440 (QHD)
• 3840 x 2160 (4K)
A
B C
“[…] each vCPU in an Amazon EC2 instance is a hyperthread of an Intel Xeon CPU core.”
Demystifying the Number of vCPUs for Optimal Workload Performance, Amazon, Sept. 2018
https://d1.awsstatic.com/whitepapers/Demystifying_vCPUs.pdf
GPU Server
EC2 t2.large
Amazon Elastic Cloud
EC2 c4.4xlarge EC2 c5.18xlarge
CPU Intel Xeon
3.5 GHz
Intel Xeon
3.0 GHz
Intel Xeon
2.9 GHz
Intel Xeon Platinum
3.0 GHz
# Cores/vCPUs 8 Cores 2 vCPUs 16 vCPUs 72 vCPUs
RAM 64 GB RAM 8 GB RAM 30 GB RAM 144 GB RAM
GPU NVIDIA Quadro M6000
24 GB
None None None
Test Procedure:
1. Six measurements for each combination of resolution and processing technique
2. Discarding the first measurement (setup costs of image processor)
3. Averaging the remaining five
GPU Server
EC2 t2.large
Amazon Elastic Cloud
EC2 c4.4xlarge EC2 c5.18xlarge
CPU Intel Xeon
3.5 GHz
Intel Xeon
3.0 GHz
Intel Xeon
2.9 GHz
Intel Xeon Platinum
3.0 GHz
# Cores/vCPUs 8 Cores 2 vCPUs 16 vCPUs 72 vCPUs
RAM 64 GB RAM 8 GB RAM 30 GB RAM 144 GB RAM
GPU NVIDIA Quadro M6000
24 GB
None None None
▪ GPU-based rendering
is significant faster
▪ Same relations between
processing techniques
▪ For Invert, software
rendering is faster
(maybe due to no
RAM-VRAM bus
transfer costs)
▪ For complex techniques:
the greater the resolution
the faster is GPU-based
rendering compared to
software rendering
▪ For simple techniques:
stable speed factor
▪ Bend in the curve for FHD
Speed factor = duration SWR / duration GPU
▪t2.large instance:
• 2 vCPUs
• 8 GB RAM
c4.large instance:
• 16 vCPUs
• 30 GB RAM
More vCPUs reduce
processing time
t2.large instance:
▪ 2 vCPUs
▪ 8 GB RAM
c4.large instance:
▪ 16 vCPUs
▪ 30 GB RAM
There probably exists
an upper bound but
none could be observed
Without GPU:
With GPU:
Instance type t2.large c4.4xlarge c5.18xlarge
Number of vCPUs 2 16 (x8) 72 (x36)
USD per hour 0.1008 0.905 (x9) 3.456 (x34)
Instance type g3.4xlarge
GPU Nvidia Tesla M60
8 GB
USD per hour 1.21
Run-time performance cost are mainly determined by:
1. Complexity of the processing technique
2. Resolution of the input image
3. Number of virtual CPUs
The performance penalty can be attenuated
by increasing the number of vCPUs/Threads
Software rendering is a suitable approach for
reducing the financial costs for a scalable web-based provisioning of
image processing, but it comes with costs regarding performance
Contact:
▪ ole.wegen@student.hpi.de | trapp@hpi.de | doellner@hpi.de
▪ sebastian.pasewaldt@digitalmasterpieces.de
Funded by (01IS15041):
In Cooperation with:

More Related Content

Similar to Performance Evaluation and Comparison of Service-based Image Processing based on Software Rendering

GPU Computing: A brief overview
GPU Computing: A brief overviewGPU Computing: A brief overview
GPU Computing: A brief overview
Rajiv Kumar
 
Superworkflow of Graph Neural Networks with K8S and Fugue
Superworkflow of Graph Neural Networks with K8S and FugueSuperworkflow of Graph Neural Networks with K8S and Fugue
Superworkflow of Graph Neural Networks with K8S and Fugue
Databricks
 

Similar to Performance Evaluation and Comparison of Service-based Image Processing based on Software Rendering (20)

"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese..."Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
 
Mod 2 hardware_graphics.pdf
Mod 2 hardware_graphics.pdfMod 2 hardware_graphics.pdf
Mod 2 hardware_graphics.pdf
 
A Dataflow Processing Chip for Training Deep Neural Networks
A Dataflow Processing Chip for Training Deep Neural NetworksA Dataflow Processing Chip for Training Deep Neural Networks
A Dataflow Processing Chip for Training Deep Neural Networks
 
Ac922 cdac webinar
Ac922 cdac webinarAc922 cdac webinar
Ac922 cdac webinar
 
Graphics processing unit ppt
Graphics processing unit pptGraphics processing unit ppt
Graphics processing unit ppt
 
The state of SQL-on-Hadoop in the Cloud
The state of SQL-on-Hadoop in the CloudThe state of SQL-on-Hadoop in the Cloud
The state of SQL-on-Hadoop in the Cloud
 
VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...
VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...
VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...
 
Zero Downtime JEE Architectures
Zero Downtime JEE ArchitecturesZero Downtime JEE Architectures
Zero Downtime JEE Architectures
 
GPU Computing: A brief overview
GPU Computing: A brief overviewGPU Computing: A brief overview
GPU Computing: A brief overview
 
The Rise of Parallel Computing
The Rise of Parallel ComputingThe Rise of Parallel Computing
The Rise of Parallel Computing
 
(CMP202) Engineering Simulation and Analysis in the Cloud
(CMP202) Engineering Simulation and Analysis in the Cloud(CMP202) Engineering Simulation and Analysis in the Cloud
(CMP202) Engineering Simulation and Analysis in the Cloud
 
Superworkflow of Graph Neural Networks with K8S and Fugue
Superworkflow of Graph Neural Networks with K8S and FugueSuperworkflow of Graph Neural Networks with K8S and Fugue
Superworkflow of Graph Neural Networks with K8S and Fugue
 
Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)
 
Computing using GPUs
Computing using GPUsComputing using GPUs
Computing using GPUs
 
Intro to GPGPU with CUDA (DevLink)
Intro to GPGPU with CUDA (DevLink)Intro to GPGPU with CUDA (DevLink)
Intro to GPGPU with CUDA (DevLink)
 
Cuda
CudaCuda
Cuda
 
Backend.AI Technical Introduction (19.09 / 2019 Autumn)
Backend.AI Technical Introduction (19.09 / 2019 Autumn)Backend.AI Technical Introduction (19.09 / 2019 Autumn)
Backend.AI Technical Introduction (19.09 / 2019 Autumn)
 
The Convergence of HPC and Deep Learning
The Convergence of HPC and Deep LearningThe Convergence of HPC and Deep Learning
The Convergence of HPC and Deep Learning
 
IoT consideration selection
IoT consideration selectionIoT consideration selection
IoT consideration selection
 
Computer Graphics - Lecture 01 - 3D Programming I
Computer Graphics - Lecture 01 - 3D Programming IComputer Graphics - Lecture 01 - 3D Programming I
Computer Graphics - Lecture 01 - 3D Programming I
 

More from Matthias Trapp

More from Matthias Trapp (20)

Interactive Control over Temporal Consistency while Stylizing Video Streams
Interactive Control over Temporal Consistency while Stylizing Video StreamsInteractive Control over Temporal Consistency while Stylizing Video Streams
Interactive Control over Temporal Consistency while Stylizing Video Streams
 
A Framework for Art-directed Augmentation of Human Motion in Videos on Mobile...
A Framework for Art-directed Augmentation of Human Motion in Videos on Mobile...A Framework for Art-directed Augmentation of Human Motion in Videos on Mobile...
A Framework for Art-directed Augmentation of Human Motion in Videos on Mobile...
 
A Framework for Interactive 3D Photo Stylization Techniques on Mobile Devices
A Framework for Interactive 3D Photo Stylization Techniques on Mobile DevicesA Framework for Interactive 3D Photo Stylization Techniques on Mobile Devices
A Framework for Interactive 3D Photo Stylization Techniques on Mobile Devices
 
ALIVE-Adaptive Chromaticity for Interactive Low-light Image and Video Enhance...
ALIVE-Adaptive Chromaticity for Interactive Low-light Image and Video Enhance...ALIVE-Adaptive Chromaticity for Interactive Low-light Image and Video Enhance...
ALIVE-Adaptive Chromaticity for Interactive Low-light Image and Video Enhance...
 
A Service-based Preset Recommendation System for Image Stylization Applications
A Service-based Preset Recommendation System for Image Stylization ApplicationsA Service-based Preset Recommendation System for Image Stylization Applications
A Service-based Preset Recommendation System for Image Stylization Applications
 
Design Space of Geometry-based Image Abstraction Techniques with Vectorizatio...
Design Space of Geometry-based Image Abstraction Techniques with Vectorizatio...Design Space of Geometry-based Image Abstraction Techniques with Vectorizatio...
Design Space of Geometry-based Image Abstraction Techniques with Vectorizatio...
 
A Benchmark for the Use of Topic Models for Text Visualization Tasks - Online...
A Benchmark for the Use of Topic Models for Text Visualization Tasks - Online...A Benchmark for the Use of Topic Models for Text Visualization Tasks - Online...
A Benchmark for the Use of Topic Models for Text Visualization Tasks - Online...
 
Efficient GitHub Crawling using the GraphQL API
Efficient GitHub Crawling using the GraphQL APIEfficient GitHub Crawling using the GraphQL API
Efficient GitHub Crawling using the GraphQL API
 
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdfCodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
 
Non-Photorealistic Rendering of 3D Point Clouds for Cartographic Visualization
Non-Photorealistic Rendering of 3D Point Clouds for Cartographic VisualizationNon-Photorealistic Rendering of 3D Point Clouds for Cartographic Visualization
Non-Photorealistic Rendering of 3D Point Clouds for Cartographic Visualization
 
TWIN4ROAD - Erfassung Analyse und Auswertung mobiler Multi Sensorik im Strass...
TWIN4ROAD - Erfassung Analyse und Auswertung mobiler Multi Sensorik im Strass...TWIN4ROAD - Erfassung Analyse und Auswertung mobiler Multi Sensorik im Strass...
TWIN4ROAD - Erfassung Analyse und Auswertung mobiler Multi Sensorik im Strass...
 
Interactive Close-Up Rendering for Detail+Overview Visualization of 3D Digita...
Interactive Close-Up Rendering for Detail+Overview Visualization of 3D Digita...Interactive Close-Up Rendering for Detail+Overview Visualization of 3D Digita...
Interactive Close-Up Rendering for Detail+Overview Visualization of 3D Digita...
 
Web-based and Mobile Provisioning of Virtual 3D Reconstructions
Web-based and Mobile Provisioning of Virtual 3D ReconstructionsWeb-based and Mobile Provisioning of Virtual 3D Reconstructions
Web-based and Mobile Provisioning of Virtual 3D Reconstructions
 
Visualization of Knowledge Distribution across Development Teams using 2.5D S...
Visualization of Knowledge Distribution across Development Teams using 2.5D S...Visualization of Knowledge Distribution across Development Teams using 2.5D S...
Visualization of Knowledge Distribution across Development Teams using 2.5D S...
 
Real-time Screen-space Geometry Draping for 3D Digital Terrain Models
Real-time Screen-space Geometry Draping for 3D Digital Terrain ModelsReal-time Screen-space Geometry Draping for 3D Digital Terrain Models
Real-time Screen-space Geometry Draping for 3D Digital Terrain Models
 
FERMIUM - A Framework for Real-time Procedural Point Cloud Animation & Morphing
FERMIUM - A Framework for Real-time Procedural Point Cloud Animation & MorphingFERMIUM - A Framework for Real-time Procedural Point Cloud Animation & Morphing
FERMIUM - A Framework for Real-time Procedural Point Cloud Animation & Morphing
 
Interactive Editing of Signed Distance Fields
Interactive Editing of Signed Distance FieldsInteractive Editing of Signed Distance Fields
Interactive Editing of Signed Distance Fields
 
Integration of Image Processing Techniques into the Unity Game Engine
Integration of Image Processing Techniques into the Unity Game EngineIntegration of Image Processing Techniques into the Unity Game Engine
Integration of Image Processing Techniques into the Unity Game Engine
 
Interactive GPU-based Image Deformation for Mobile Devices
Interactive GPU-based Image Deformation for Mobile DevicesInteractive GPU-based Image Deformation for Mobile Devices
Interactive GPU-based Image Deformation for Mobile Devices
 
Interactive Photo Editing on Smartphones via Intrinsic Decomposition
Interactive Photo Editing on Smartphones via Intrinsic DecompositionInteractive Photo Editing on Smartphones via Intrinsic Decomposition
Interactive Photo Editing on Smartphones via Intrinsic Decomposition
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

Performance Evaluation and Comparison of Service-based Image Processing based on Software Rendering

  • 1. Ole Wegen, Matthias Trapp, Jürgen Döllner Hasso Plattner Institute, Faculty of Digital Engineering, University of Potsdam, Germany Sebastian Pasewaldt Digital Masterpieces GmbH Germany In Cooperation with: Funded by:
  • 2.
  • 3.
  • 4. Image processing is a common task Observations: 1. Increased usage of mobile hardware 2. Increase in cloud-processing capabilities and infrastructure 3. Increase of network throughput Service-based provisioning of image processing functionality for web-based or mobile applications: ▪ Accessible from anywhere ▪ Useable with any device (hardware independent)
  • 5. Important aspects to account for: 1. Processing implementations often rely on hardware-acceleration (e.g. GPUs) 2. Scalability as a crucial factor when using a service-based approach These requirements are often accompanied with high financial costs: • Dedicated server hardware w.r.t. specs • Limited availability Software rendering (SWR) can reduce these costs: • Rendering performed entirely on the CPU (affordable) • Enables execution of GPU-based programs on hosts without GPU support
  • 6. SWR was investigated for: ▪ Ma and Parker, 2001: Visualizing large-scale datasets ▪ Mileff and Dudra, 2013: Texture rendering ▪ Hayashi et al., 2018: In-situ visualization for volume rendering system Contribution A: SWR for Service-based image processing Contribution B: Performance comparison between dedicated GPU server vs. SWR server: ▪ Main classes of image processing techniques (point and neighbourhood, single vs. multipass) ▪ Different image resolutions ▪ Various server configurations
  • 8. Mesa3D: ▪ 3D Graphics Library implementing graphics API specifications ▪ Supports OpenGL, Vulkan and others ▪ Commonly used for SWR Gallium3D: ▪ API to support driver development ▪ Abstracting from graphics API ▪ Abstracting from operating system Available Gallium3D Driver: ▪ softpipe ▪ LLVMpipe ▪ openSWR https://en.wikipedia.org/wiki/Mesa_(computer_graphics)
  • 9. Test machine: ▪ Intel Core i5-8400 ▪ 6 Cores at 2.8 GHz ▪ 16 GB DDR4 RAM Operation: Morphological Closing (Kernel size 3)
  • 10. Two Docker Containers: ▪ The instance of image processor ▪ A NodeJS server exposing a REST [Winkler and Schlesiger, 2013] interface for communication ▪ Communication between these containers through WebSockets
  • 11. ▪ Processing Techniques: • Color Invert (A) • Point-based • Single Pass • Morphological Closing (B) • Neighbourhood-based • Separated Passes • Tested kernel sizes: 3, 14, 90 • Oilpaint (C) • Multipass, Neighbourhood-based • # Passes: 18 ▪ Tested spatial resolutions: • 1280 x 720 (HD) • 1920 x 1080 (FHD) • 2560 x 1440 (QHD) • 3840 x 2160 (4K) A B C
  • 12. “[…] each vCPU in an Amazon EC2 instance is a hyperthread of an Intel Xeon CPU core.” Demystifying the Number of vCPUs for Optimal Workload Performance, Amazon, Sept. 2018 https://d1.awsstatic.com/whitepapers/Demystifying_vCPUs.pdf GPU Server EC2 t2.large Amazon Elastic Cloud EC2 c4.4xlarge EC2 c5.18xlarge CPU Intel Xeon 3.5 GHz Intel Xeon 3.0 GHz Intel Xeon 2.9 GHz Intel Xeon Platinum 3.0 GHz # Cores/vCPUs 8 Cores 2 vCPUs 16 vCPUs 72 vCPUs RAM 64 GB RAM 8 GB RAM 30 GB RAM 144 GB RAM GPU NVIDIA Quadro M6000 24 GB None None None
  • 13. Test Procedure: 1. Six measurements for each combination of resolution and processing technique 2. Discarding the first measurement (setup costs of image processor) 3. Averaging the remaining five GPU Server EC2 t2.large Amazon Elastic Cloud EC2 c4.4xlarge EC2 c5.18xlarge CPU Intel Xeon 3.5 GHz Intel Xeon 3.0 GHz Intel Xeon 2.9 GHz Intel Xeon Platinum 3.0 GHz # Cores/vCPUs 8 Cores 2 vCPUs 16 vCPUs 72 vCPUs RAM 64 GB RAM 8 GB RAM 30 GB RAM 144 GB RAM GPU NVIDIA Quadro M6000 24 GB None None None
  • 14.
  • 15. ▪ GPU-based rendering is significant faster ▪ Same relations between processing techniques ▪ For Invert, software rendering is faster (maybe due to no RAM-VRAM bus transfer costs)
  • 16. ▪ For complex techniques: the greater the resolution the faster is GPU-based rendering compared to software rendering ▪ For simple techniques: stable speed factor ▪ Bend in the curve for FHD Speed factor = duration SWR / duration GPU
  • 17. ▪t2.large instance: • 2 vCPUs • 8 GB RAM c4.large instance: • 16 vCPUs • 30 GB RAM
  • 18. More vCPUs reduce processing time t2.large instance: ▪ 2 vCPUs ▪ 8 GB RAM c4.large instance: ▪ 16 vCPUs ▪ 30 GB RAM
  • 19.
  • 20. There probably exists an upper bound but none could be observed
  • 21. Without GPU: With GPU: Instance type t2.large c4.4xlarge c5.18xlarge Number of vCPUs 2 16 (x8) 72 (x36) USD per hour 0.1008 0.905 (x9) 3.456 (x34) Instance type g3.4xlarge GPU Nvidia Tesla M60 8 GB USD per hour 1.21
  • 22. Run-time performance cost are mainly determined by: 1. Complexity of the processing technique 2. Resolution of the input image 3. Number of virtual CPUs The performance penalty can be attenuated by increasing the number of vCPUs/Threads Software rendering is a suitable approach for reducing the financial costs for a scalable web-based provisioning of image processing, but it comes with costs regarding performance
  • 23. Contact: ▪ ole.wegen@student.hpi.de | trapp@hpi.de | doellner@hpi.de ▪ sebastian.pasewaldt@digitalmasterpieces.de Funded by (01IS15041): In Cooperation with: