WPF CHARTS PERFORMANCE BENCHMARK Page 1 / 16. February 18, 2013

Similar documents
go1984 Performance Optimization

The Hot Dog Factory. Luke Duncan and Kasey Thompson. A 2D DirectX Game designed for the Winter 2009 CIS 487 Game Design class.

Performance Metrics. Computer Architecture. Outline. Objectives. Basic Performance Metrics. Basic Performance Metrics

Setting up a Digital Darkroom A guide

Oculus Rift Getting Started Guide

Mobile Virtual Reality what is that and how it works? Alexey Rybakov, Senior Engineer, Technical Evangelist at DataArt

Car Audio Games Pc Full Version Windows Xp

Mimics inprint 3.0. Release notes Beta

Neat Image. User guide. standalone application (Mac) To make images look better. Document version 8.3, 27-September-2017

GlassSpection User Guide

Release Notes. Windows. v10.2

Ortelia Set Designer User Manual

PHYC 500: Introduction to LabView. Exercise 9 (v 1.1) Spectral content of waveforms. M.P. Hasselbeck, University of New Mexico

Table of Contents HOL ADV

Neat Image. User guide. plug-in for Photoshop (Mac) To make images look better. Document version 8.3, 27-September-2017

AirMagnet Spectrum XT

4/11/ e.solutions GmbH

Tutorials by Steve Kostrey Revision for Cubase LE and Quality Control: Cristina Bachmann, Heiko Bischoff, Sabine Pfeifer The information in this

User Tips For Canon 7d Video Memory Card

Embedding Artificial Intelligence into Our Lives

HMD based VR Service Framework. July Web3D Consortium Kwan-Hee Yoo Chungbuk National University

User Manual. Laser DirectPrint MAC AI Plug-in. Introduction to the. Copyright 2009 GCC,Inc. All Right Reserved.

Using Adobe Photoshop

AutoCAD 2016 Productivity Study

Oculus Rift Getting Started Guide

Scalable Multi-Precision Simulation of Spiking Neural Networks on GPU with OpenCL

BeNoGo Image Volume Acquisition

Particle Size and Shape Analyzer

ArbStudio Triggers. Using Both Input & Output Trigger With ArbStudio APPLICATION BRIEF LAB912

Data Acquisition & Computer Control

Engineering 3821 Fall Pspice TUTORIAL 1. Prepared by: J. Tobin (Class of 2005) B. Jeyasurya E. Gill

UNIONOVO PN I. A2+ professional high-speed book scanner. Less cost, less waste, high-tech environment-friendly product

Welcome to the Early Beta and Thank You for Your Continued Support!

Laboratory 1: Motion in One Dimension

Online Game Quality Assessment Research Paper

Ayonix-APS. World s fastest 3D Face surveillance application. Feb.13 th, 2017

Moving Man - Velocity vs. Time Graphs

Rocksmith PC Configuration and FAQ

Picture Style Editor Ver Instruction Manual

TPADANA 2.0: DRAFT USER S MANUAL OF TPAD DATA ANALYSIS SOFTWARE

Gta Iv Pc Manual Rar Windows 7 Full Game >>>CLICK HERE<<<

Parallelism Across the Curriculum

AR 2 kanoid: Augmented Reality ARkanoid

SECTION GEOGRAPHIC INFORMATION SYSTEM (GIS)

Gta Iv Pc Manual Game Full Version Windows 7

VR Capture & Analysis Guide. FCAT VR Frame Capture Analysis Tools for VR

Matthew Grossman Mentor: Rick Brownrigg

Antenna Creation and Installation Instructions

Through Dynamic Imaging Technology

EF-45 Iris Recognition System

IMAGES OF MOVING SUBJECTS

Chapter 11-Shooting Action

LabVIEW Day 2: Other loops, Other graphs

Comparative Study: hp designjet 5500ps

Picture Style Editor Ver Instruction Manual

AirMagnet Spectrum XT

WMS Benchmarking 2011

OpticsPro 11. Reveal the RAW emotion PRODUCT PRESENTATION. DxO ONE

Final Report: DBmbench

Edge Blender Controller

NexImage Burst USER S MANUAL Model # 95518, # ENGLISH

OLYMPUS Digital Cameras for Materials Science Applications: Get the Best out of Your Microscope

truepixa Chromantis Operating Guide

Why soft proofing may not always work

UKFields Help by Petroleum Solutions Ltd, all rights reserved

Overview of current developments in haptic APIs

A Study for Choosing The Best Pixel Surveying Method by Using Pixel Decision Structures in Satellite Images

SUPER-COLLOSAL TITAN WARFARE

Operation Guide: Using the 86100C DCA-J Jitter Spectrum and Phase Noise Application Revision 1.0

Gta San Andreas Game Manual Pc Full Version For Windows Xp

Datasheet: AirMagnet Spectrum XT

Overview of Design Methodology. A Few Points Before We Start 11/4/2012. All About Handling The Complexity. Lecture 1. Put things into perspective

Diving into VR World with Oculus. Homin Lee Software Engineer at Oculus

NexImage USER S MANUAL. Model # 93708, # # 95518, # ENGLISH

Retina 400 THE SIMPLE AND FLEXIBLE SOLUTION FOR HIGH DEFINITION RETINAL IMAGERY NON-MYDRIATIC RETINAL CAMERA C/D AUTO 60 H X 45 V LED. 2,2 mm.

Performance Metrics, Amdahl s Law

Surfing on a Sine Wave

Antenna Creation and Installation Instructions

Introduction to XNA; Game Loops. Prof. Aaron Lanterman School of Electrical and Computer Engineering Georgia Institute of Technology

CHM 109 Excel Refresher Exercise adapted from Dr. C. Bender s exercise

Manually Save Gta Iv Pc Game Location Windows

INTRODUCTION TO GAME AI

Gta Iv Manual Full Version Game Pc Windows 7

British Esports Championships. October /2019

Explanation, Benefits, and Comparison to Traditional Proofing Systems

Moving Man Introduction Motion in 1 Direction

ZJUDancer Team Description Paper Humanoid Kid-Size League of Robocup 2014

System Requirements...2. Installation...2. Main Menu...3. New Features...4. Game Controls...8. WARRANTY...inside front cover

AT 3300 INTRODUCTION. Scope Application

Arduino STEAM Academy Arduino STEM Academy Art without Engineering is dreaming. Engineering without Art is calculating. - Steven K.

My Earnings from PeoplePerHour:

Picture Style Editor Ver Instruction Manual

AT 3000 INTRODUCTION. Scope Application

PC System Requirement For Dual Microscope

GPU-accelerated SDR Implementation of Multi-User Detector for Satellite Return Links

REFERENCE CARD. Welcome to the Early Beta and Thank You for Your Continued Support!

Instruction Manual for the Software of ASSAN V2 Series Receiver

Image Processing. 2. Point Processes. Computer Engineering, Sejong University Dongil Han. Spatial domain processing

Laboratory Experiment #1 Introduction to Spectral Analysis

Lec 24: Parallel Processors. Announcements

Transcription:

WPF CHARTS PERFORMANCE BENCHMARK Page 1 / 16 Test setup In this benchmark test, LightningChartUltimate for WPF s performance is compared to other WPF chart controls, which are marketed as high-performance charting products. Benchmark application was developed and test performed February 2013, with newest available chart versions. The chart controls participating in the test are in random order: Arction LightningChart Ultimate for WPF v.5.0.2 Visifire v. 5.0.6.0 Visiblox Ultimate v. 3.0.6.44716 Infragistics xamdatachart, v.12.2 The benchmark is divided in two parts: - Opening large data set and rendering in the graph (Data binding) o Line o Area - Real-time monitoring as a scrolling graphs o Line o Area Computer hardware and operating system The benchmarks were run with mid-performance class desktop computer, at the date of the test. System information: - Intel i5 Quad core CPU, 3.3 GHz - 8 GB RAM, - AMD Radeon HD 6750 1GB display adapter, Full HD (1920 x 1080) resolution through the test - Windows 7 64-bit OS. Benchmark application: - WPF application, target.net framework 4.0 Client Profile, compiled to Any CPU configuration, runs in 64-bit mode in this test machine.

WPF CHARTS PERFORMANCE BENCHMARK Page 2 / 16 Benchmark 1 Rendering large data set A data array is generated and passed to each chart and rendering delay is measured programmatically from event handler that should notify when rendering is done. Some chart components use non-synchronous updating and raise these events much before it is actually rendered, and with those, a video camera has been used (Canon Firewire DV camera, PAL, 25 frames / sec). The video is then analyzed frame-by-frame and delay is calculated (1000 ms * frame count / 25). Synchronous charts are also checked with video camera, to verify it that it really is synchronous. All charts are set to equal size, and simplest possible appearance. The fastest rendering series types from each chart component are used, component manufacturers online examples are made use of and technical support have been contacted to make it run in optimal performance and to provide equal odds for every manufacturer. The test is performed with various point counts. The data is random numbers progressing in X axis. Test will be aborted if the chart is not able to render specified data amount in 1 minute. In line test, the best and only actually correct output is a polyline, going from data point to another. Some charts failed to do this, and rendering output was totally something else than a polyline.

WPF CHARTS PERFORMANCE BENCHMARK Page 3 / 16 Test type Line series Series count Points/series Competitor A Competitor B Competitor C LightningChart Ultimate Rendering delay, ms LightningChart Times faster (A/B/C) 1 1 000 1760 1880 80 (B 3 586/626/26 1 10 000 5080 3960 120 (B 3 1693/1320/40 1 100 000 640 (A >60000 840 (B 6 106/ /140 1 1 000 000 480 (A >60000 9400 (B 21 22/ /447 1 10 000 000 3960 (A >60000 >60000 182 21/ / 1 100 000 000 >60000 >60000 >60000 1813 / / 4 1 000 1760 1960 120 (B 3 586/653/40 4 10 000 5320 4480 400 (B 4 1330/1120/100 4 100 000 840 (A >60000 3360 (B 8 105/ /420 4 1 000 000 1600 (A >60000 >60000 37 43/ / 4 10 000 000 15680 (A >60000 >60000 315 49/ / 4 100 000 000 >60000 >60000 >60000 4713 / / Area series 40 1 000 2040 2240 960 (B 8 255/280/120 40 10 000 6320 7120 4360 (B 16 395/445/272 40 100 000 2200 (A >60000 >60000 45 48/ / 40 1 000 000 15360 (A >60000 >60000 329 46/ / 40 10 000 000 >60000 >60000 >60000 3472 / / A) Not a polyline, but some kind of high-low area trick. B) Not a continuous polyline Rendering delay, ms 1 1 000 760 2640 1080 3 253/880/360 1 10 000 2880 19920 16280 4 720/4980/4070 1 100 000 360 >60000 37360 10 36/ /37360 1 1 000 000 480 >60000 >60000 58 8/ / 1 10 000 000 4040 >60000 >60000 503 8/ / 4 1 000 800 2560 920 5 160/512/184 4 10 000 2920 20720 16600 9 324/2302/1844 4 100 000 520 >60000 47000 23 22/ /2043 4 1 000 000 1560 >60000 >60000 148 10/ / 4 10 000 000 15680 >60000 >60000 1478 10/ / 40 1 000 880 3160 2680 36 24/87/74 40 10 000 3520 23680 27920 86 40/275/324 40 100 000 2040 >60000 >60000 221 9/ / 40 1 000 000 15400 >60000 >60000 1384 11/ /

WPF CHARTS PERFORMANCE BENCHMARK Page 4 / 16 Benchmark 2 Real-time monitoring Appending of data points in a scrolling view. X Axis represents time, length is 10 seconds. Data points have fixed X step. When chart is full (X axis maximum is reached), the scrolling starts. The chart appearance is defined as fast as possible (simplest possible). The test continues until 1 minute is reached, or chart does not updated at least once per second. Feeding data with specified series count / sec, at point count /sec for each series, as waveform (progressing time data). Waveform types: - Sine - Spike data, flat 0 line, a peak value generated every second. This is used to check that the chart does not remove any details of the data (down-sample it by just observing a fraction of values). Series types in the test are: Line and Area. Refresh rate of the chart is observed, with the charts that have a synchronous updating, or accurate event that reports when the chart has been rendered on the screen, a FPS calculator is used. With non-synchronous charts, a visual interpretation is made

WPF CHARTS PERFORMANCE BENCHMARK Page 5 / 16 Test type Series count New points /sec/series Competitor A Competitor B Competitor C LightningChart Ultimate, Average FPS Line series Sine 1 100 OK OK Not possible 100,60 1 1 000 OK Not possible Not possible 99,60 1 10 000 Not possible Not possible Not possible 100,60 1 100 000 Not possible Not possible Not possible 100,40 1 1 000 000 Not possible Not possible Not possible 96,80 1 10 000 000 Not possible Not possible Not possible 27,40 1 20 000 000 Not possible Not possible Not possible Not possible 4 1 000 Not possible Not possible Not possible 99,00 4 10 000 Not possible Not possible Not possible 98,90 4 100 000 Not possible Not possible Not possible 99,30 4 1 000 000 Not possible Not possible Not possible 93,30 4 10 000 000 Not possible Not possible Not possible Not possible 40 1 000 Not possible Not possible Not possible 69,10 40 10 000 Not possible Not possible Not possible 70,20 40 100 000 Not possible Not possible Not possible 43,40 40 1 000 000 Not possible Not possible Not possible Not possible Spikes 1 100 OK OK Not possible 100,70 1 1 000 OK Not possible Not possible 99,60 1 10 000 Not possible Not possible Not possible 100,70 1 100 000 Not possible Not possible Not possible 100,40 1 1 000 000 Not possible Not possible Not possible 98,70 1 10 000 000 Not possible Not possible Not possible 77,10 1 20 000 000 Not possible Not possible Not possible Not possible 4 1 000 Not possible Not possible Not possible 99,70 4 10 000 Not possible Not possible Not possible 100,30 4 100 000 Not possible Not possible Not possible 98,70 4 1 000 000 Not possible Not possible Not possible 95,20 4 10 000 000 Not possible Not possible Not possible Not possible 40 1 000 Not possible Not possible Not possible 89,90 40 10 000 Not possible Not possible Not possible 92,60 40 100 000 Not possible Not possible Not possible 88,90 40 1 000 000 Not possible Not possible Not possible Not possible

WPF CHARTS PERFORMANCE BENCHMARK Page 6 / 16 Test type Series count New points /sec/series Competitor A Competitor B Competitor C LightningChart Ultimate, Average FPS Area series Sine 1 100 OK OK Not possible 101,80 1 1 000 OK Not possible Not possible 100,10 1 10 000 Not possible Not possible Not possible 101,80 1 100 000 Not possible Not possible Not possible 49,30 1 1 000 000 Not possible Not possible Not possible 80,60 1 10 000 000 Not possible Not possible Not possible Not possible 4 1 000 Not possible Not possible Not possible 100,30 4 10 000 Not possible Not possible Not possible 61,20 4 100 000 Not possible Not possible Not possible 28,50 4 1 000 000 Not possible Not possible Not possible 4,30 4 10 000 000 Not possible Not possible Not possible Not possible 40 1 000 Not possible Not possible Not possible 16,80 40 10 000 Not possible Not possible Not possible 6,30 40 100 000 Not possible Not possible Not possible 4,20 40 1 000 000 Not possible Not possible Not possible Not possible Spikes 1 100 OK OK Not possible 102,10 1 1 000 OK Not possible Not possible 102,10 1 10 000 Not possible Not possible Not possible 101,70 1 100 000 Not possible Not possible Not possible 49,60 1 1 000 000 Not possible Not possible Not possible 64,90 1 10 000 000 Not possible Not possible Not possible Not possible 4 1 000 Not possible Not possible Not possible 100,50 4 10 000 Not possible Not possible Not possible 59,70 4 100 000 Not possible Not possible Not possible 27,60 4 1 000 000 Not possible Not possible Not possible 45,20 4 10 000 000 Not possible Not possible Not possible Not possible 40 1 000 Not possible Not possible Not possible 18,20 40 10 000 Not possible Not possible Not possible 7,50 40 100 000 Not possible Not possible Not possible 5,60 40 1 000 000 Not possible Not possible Not possible Not possible

WPF CHARTS PERFORMANCE BENCHMARK Page 7 / 16 Conclusion In the world of WPF, it is a common delusion to assume that WPF rendering routines would make graphics render fast. The benchmark results here indicate, that they are not practically any faster than GDI+ rendered WinForms chart controls. Rendering of 100,000 in a WPF chart can take longer than 1,000,000 points in a GDI+ chart (refer to Benchmark of LightningChart Pro/Ultimate for WinForms vs. other WinForms charts, http://www.arction.com/benchmark, in 2010). Many WPF chart manufacturers that advertise their charts as a high-performance products, can be set under a big question mark based on their real performance. Some manufacturers also try to trick with techniques that don t produce correct rendering output, such as down-sampling and high-low fill rendering. Even if WPF rendering is distantly based on DirectX, it falls way behind of real DirectX rendering in performance aspects. LightningChart Ultimate for WPF uses low-level DirectX rendering, not WPF s graphics routines. And it really stands out of the competitors, let it be real-time monitoring or rendering a large data set. Eventually the difference is like setting a dragster with bunch of bicycles into quarter-mile drag race. Rendering large data set, Line series rendering of 10,000 data points LightningChart is 40 1693 times faster than competitors, while Competitor C renders it wrong. Shorter bar is better

WPF CHARTS PERFORMANCE BENCHMARK Page 8 / 16 Rendering large data set, line series rendering of 1,000,000 data points LightningChart is 22 447 times faster than competitors, while competitor A cheats with highlow fill rendering, and competitor B is unable to render it, and competitor C renders it wrong. Shorter bar is better Rendering large data set, Area series rendering of 10,000 data points LightningChart is 720 4980 times faster than competitors. Shorter bar is better

WPF CHARTS PERFORMANCE BENCHMARK Page 9 / 16 Real-time monitoring, Line series, appending of capacity of new data points / sec, 1 series LightningChart Ultimate: 10,000,000 Competitor A: 1,000 Competitor B: 100 Competitor C: - LightningChart is 1000 10000 times faster, while Competitor C couldn t provide any result. Longer bar is better Real-time monitoring, Line series, appending of capacity of new data points / sec, 40 series LightningChart Ultimate: 100,000 Competitor A: - Competitor B: - Competitor C: - LightningChart is the only one that could provide result with 40 series, and also with that, provides 1000 times better capacity than Competor B with only 1 series.

WPF CHARTS PERFORMANCE BENCHMARK Page 10 / 16 Power-to-cost ratio This is completely beyond of the test, but it s interesting to compare power-to-cost ratio, in the similar way than with sports cars. The list prices with priority support included: o LightningChart Ultimate: USD 2,470.00, comes with both WPF and WinForms chart and other controls o Competitor A: USD 2,395.00, comes with a lot of other components o Competitor B: USD 1,000.00 o Competitor C: USD 499.00 Max point count in line series, that gets rendered before 2 seconds. LightningChart: 100,000,000 points in 1813 ms Competitor A: 1,000,000 points in 480 ms Competitor B: 1,000 points in 1880 ms Competitor C: 100,000 points in 840 ms Longer bar is better LightningChart is slightly the most expensive, but provides unmatched power-to-cost ratio.

WPF CHARTS PERFORMANCE BENCHMARK Page 11 / 16 Some screenshots during the testing, a couple of problems noted too LightningChart, Real-time 4 series, sine waveform, 100,000 new points /sec/series.

WPF CHARTS PERFORMANCE BENCHMARK Page 12 / 16 Competitor A, rendering large data set, random waveform, areas, 4 series, 10,000 data points/series LightningChart, Real-time 40 series, sine waveform, 100,000 new points/sec / series.

WPF CHARTS PERFORMANCE BENCHMARK Page 13 / 16 LightningChart, Real-time 4 series, spike waveform, 1,000,000 new points/sec / series. LightningChart, Rendering large data set, random waveform, 40 series, 1,000,000 data points/series

WPF CHARTS PERFORMANCE BENCHMARK Page 14 / 16 Competitor A, rendering large dataset, 4 series, 1000 points /series. Rendering OK. Competitor A, rendering large dataset, 4 series, 10,000 points /series. Not a polyline, but High-low fill trick instead.

WPF CHARTS PERFORMANCE BENCHMARK Page 15 / 16 LightningChart Ultimate, correct polyline rendering, with random data + spikes every second.

WPF CHARTS PERFORMANCE BENCHMARK Page 16 / 16 Competitor C polyline rendering problems. Pixels missing in line segment joints.