© Electric Cloud | electric-cloud.com
Accelerating Continuous Integration with ElectricAccelerator
Better software faster
© Electric Cloud | electric-cloud.com
SLOW BUILDS AND TESTS
SUCK.
© Electric Cloud | electric-cloud.com
xkcd
© Electric Cloud | electric-cloud.com
Build & Test: The Tip of the Agile Spear
More LOC slows down
builds/tests
Platform
proliferation means
more build targets
and test environments
More frequent
builds/tests amplifies
business impact,
reduces agility
Distributed build/test
infrastructure allows
local control, but no
economies of scale
Speed is essential for
Agile teams and
Continuous Integration.
Slow cycles means devs
don’t get the fast
feedback necessary to
iterate quickly and hit
scheduled release dates.
© Electric Cloud | electric-cloud.com
What is your path to production?
Build
Compile,
Package
Test
Functional,
non-functional
Release
Provision,
Configure, Deploy
weeks
+ automation
+ acceleration
How long does it take to get a release candidate through your production pipeline?
days
minutes
© Electric Cloud | electric-cloud.com
So how can you go faster, safely?
Parallelization Dependency Management Eliminate Re-work
© Electric Cloud | electric-cloud.com
ElectricAccelerator
Build and Test Acceleration
ElectricAccelerator dramatically accelerates software builds
and tests by automatically parallelizing jobs across shared
clusters of physical or cloud CPU’s.
© Electric Cloud | electric-cloud.com
What is ElectricAccelerator?
ElectricAccelerator
• Dependency-aware
• Priority-aware
• Workload-aware
• Infrastructure-aware
Cluster/Cloud
Multicore
Servers
Multi-core
desktops
Distributed tasks
Dramatically accelerated jobs
© Electric Cloud | electric-cloud.com
ElectricAccelerator
Continuous Delivery Acceleration
Massive
parallelization and
distribution for fast
builds and tests
Actionable
visualization and
reports for optimal
builds
Automatic
dependency
detection for faster,
more accurate builds
Efficient resource
utilization. Create
build/test clouds to
lower costs
-j8 vs. ea64 core
© Electric Cloud | electric-cloud.com
Slight detour
© Electric Cloud | electric-cloud.com
ElectricAccelerator: Core Value
FASTER THROUGH
PARALLELIZATION
100% CORRECT THROUGH
DEPENDENCY DETECTION
EFFICIENT USE OF SHARED
INFRASTRUCTURE
© Electric Cloud | electric-cloud.com
ElectricAccelerator JobCache: MORE Value
FASTER! THROUGH
ELIMINATION OF RE-WORK
APPLIES 100% CORRECTNESS
TO CACHING TECHNOLOGY
FLEXIBILITY TO GO FASTER OR
SPEND LESS ON HARDWARE
FASTER THROUGH
PARALLELIZATION
100% CORRECT THROUGH
DEPENDENCY DETECTION
EFFICIENT USE OF SHARED
INFRASTRUCTURE
© Electric Cloud | electric-cloud.com
ElectricAccelerator: Speed Benefits
Simulator Report (per build)
Without JobCache
With JobCache
Faster and 1/4 of the
hardware.
© Electric Cloud | electric-cloud.com
Use Case: Boost, MS Code Coverage, Bullseye
• Tools: Boost, MS Code Coverage, Bullseye
• Need to reduce cycle time to 10 minutes to
enable gated check-ins and continuous delivery
• Sticklers for test-driven development, suites will
grow over time
• Time to run tests & coverage:
 Before: 7m30s
 After: 3m11s on 2 machines & 39s best case
2.4x2 Hosts
11.5xBest Case
© Electric Cloud | electric-cloud.com
Use Case: Selenium
• Browser tests not previously run during CI
because they take too long
• Time to run test suite (~100 tests):
 Before: 27m30s
 After: 3m49s on 2 machines & 27s best case
7.2x2 Hosts
61xBest Case
© Electric Cloud | electric-cloud.com
How can I try it?
© Electric Cloud | electric-cloud.com
Grow your huddle
and parallelize and
distribute builds and
tests using others’
CPU capacity
Plugs right in to
existing tools and
scripts, allowing
push-button preflight
and production builds
and tests.
ElectricAccelerator Huddle
FREE Continuous Integration Acceleration for Teams – electric-cloud.com/huddle
FREEfor small teams
Pay as you go
subscription pricing.
Guaranteed accurate
build results with
dependency
management
© Electric Cloud | electric-cloud.com
Build ProgressTeam Engagement
ElectricAccelerator Huddle
Usage Metrics
© Electric Cloud | electric-cloud.com
ElectricAccelerator: Summary
Deliver better software, faster
• Safely parallelizes jobs to accelerate
builds and tests
• Learning system optimizes builds and
tests to ensure 100% correctness
• Leverages peer-to-peer multi-core
desktops or scalable cloud resources
• Increases developer productivity and
Agile throughput
75%better infrastructure utilization
61X
faster builds & tests
100%accurate builds
Builds
Make-based C,
C++, C#
ClearMake
nMake
Visual Studio
And more!
Tests
Selenium
Cpptest
Coverity
Klockwork
Parasoft
Boost
Code Coverage
And more!
© Electric Cloud | electric-cloud.com
The Value
10X
faster TTM
90%
higher quality
100%
cross-team
visibility
74%
reduced costs
75%
improved
utilization
© Electric Cloud | electric-cloud.com
DevOps != Tools.
(Keep the conversation going)
© Electric Cloud | electric-cloud.com
© Electric Cloud | electric-cloud.com
Thank You
Networking
Other Systems
ISV, Internet
& Entertainment
Heavy Industry
Financial
Services
Automotive Medical Devices
Semiconductor
Aerospace /
Defense
Mobile Devices
Q&A

Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccelerator

  • 1.
    © Electric Cloud| electric-cloud.com Accelerating Continuous Integration with ElectricAccelerator Better software faster
  • 2.
    © Electric Cloud| electric-cloud.com SLOW BUILDS AND TESTS SUCK.
  • 3.
    © Electric Cloud| electric-cloud.com xkcd
  • 4.
    © Electric Cloud| electric-cloud.com Build & Test: The Tip of the Agile Spear More LOC slows down builds/tests Platform proliferation means more build targets and test environments More frequent builds/tests amplifies business impact, reduces agility Distributed build/test infrastructure allows local control, but no economies of scale Speed is essential for Agile teams and Continuous Integration. Slow cycles means devs don’t get the fast feedback necessary to iterate quickly and hit scheduled release dates.
  • 5.
    © Electric Cloud| electric-cloud.com What is your path to production? Build Compile, Package Test Functional, non-functional Release Provision, Configure, Deploy weeks + automation + acceleration How long does it take to get a release candidate through your production pipeline? days minutes
  • 6.
    © Electric Cloud| electric-cloud.com So how can you go faster, safely? Parallelization Dependency Management Eliminate Re-work
  • 7.
    © Electric Cloud| electric-cloud.com ElectricAccelerator Build and Test Acceleration ElectricAccelerator dramatically accelerates software builds and tests by automatically parallelizing jobs across shared clusters of physical or cloud CPU’s.
  • 8.
    © Electric Cloud| electric-cloud.com What is ElectricAccelerator? ElectricAccelerator • Dependency-aware • Priority-aware • Workload-aware • Infrastructure-aware Cluster/Cloud Multicore Servers Multi-core desktops Distributed tasks Dramatically accelerated jobs
  • 9.
    © Electric Cloud| electric-cloud.com ElectricAccelerator Continuous Delivery Acceleration Massive parallelization and distribution for fast builds and tests Actionable visualization and reports for optimal builds Automatic dependency detection for faster, more accurate builds Efficient resource utilization. Create build/test clouds to lower costs -j8 vs. ea64 core
  • 10.
    © Electric Cloud| electric-cloud.com Slight detour
  • 11.
    © Electric Cloud| electric-cloud.com ElectricAccelerator: Core Value FASTER THROUGH PARALLELIZATION 100% CORRECT THROUGH DEPENDENCY DETECTION EFFICIENT USE OF SHARED INFRASTRUCTURE
  • 12.
    © Electric Cloud| electric-cloud.com ElectricAccelerator JobCache: MORE Value FASTER! THROUGH ELIMINATION OF RE-WORK APPLIES 100% CORRECTNESS TO CACHING TECHNOLOGY FLEXIBILITY TO GO FASTER OR SPEND LESS ON HARDWARE FASTER THROUGH PARALLELIZATION 100% CORRECT THROUGH DEPENDENCY DETECTION EFFICIENT USE OF SHARED INFRASTRUCTURE
  • 13.
    © Electric Cloud| electric-cloud.com ElectricAccelerator: Speed Benefits Simulator Report (per build) Without JobCache With JobCache Faster and 1/4 of the hardware.
  • 14.
    © Electric Cloud| electric-cloud.com Use Case: Boost, MS Code Coverage, Bullseye • Tools: Boost, MS Code Coverage, Bullseye • Need to reduce cycle time to 10 minutes to enable gated check-ins and continuous delivery • Sticklers for test-driven development, suites will grow over time • Time to run tests & coverage:  Before: 7m30s  After: 3m11s on 2 machines & 39s best case 2.4x2 Hosts 11.5xBest Case
  • 15.
    © Electric Cloud| electric-cloud.com Use Case: Selenium • Browser tests not previously run during CI because they take too long • Time to run test suite (~100 tests):  Before: 27m30s  After: 3m49s on 2 machines & 27s best case 7.2x2 Hosts 61xBest Case
  • 16.
    © Electric Cloud| electric-cloud.com How can I try it?
  • 17.
    © Electric Cloud| electric-cloud.com Grow your huddle and parallelize and distribute builds and tests using others’ CPU capacity Plugs right in to existing tools and scripts, allowing push-button preflight and production builds and tests. ElectricAccelerator Huddle FREE Continuous Integration Acceleration for Teams – electric-cloud.com/huddle FREEfor small teams Pay as you go subscription pricing. Guaranteed accurate build results with dependency management
  • 18.
    © Electric Cloud| electric-cloud.com Build ProgressTeam Engagement ElectricAccelerator Huddle Usage Metrics
  • 19.
    © Electric Cloud| electric-cloud.com ElectricAccelerator: Summary Deliver better software, faster • Safely parallelizes jobs to accelerate builds and tests • Learning system optimizes builds and tests to ensure 100% correctness • Leverages peer-to-peer multi-core desktops or scalable cloud resources • Increases developer productivity and Agile throughput 75%better infrastructure utilization 61X faster builds & tests 100%accurate builds Builds Make-based C, C++, C# ClearMake nMake Visual Studio And more! Tests Selenium Cpptest Coverity Klockwork Parasoft Boost Code Coverage And more!
  • 20.
    © Electric Cloud| electric-cloud.com The Value 10X faster TTM 90% higher quality 100% cross-team visibility 74% reduced costs 75% improved utilization
  • 21.
    © Electric Cloud| electric-cloud.com DevOps != Tools. (Keep the conversation going)
  • 22.
    © Electric Cloud| electric-cloud.com
  • 23.
    © Electric Cloud| electric-cloud.com Thank You Networking Other Systems ISV, Internet & Entertainment Heavy Industry Financial Services Automotive Medical Devices Semiconductor Aerospace / Defense Mobile Devices Q&A

Editor's Notes

  • #2 Presentationstitle | Date
  • #5 Slow agile builds. Slow unit testing. Slow static analysis testing. Loss of productivity/high headcount costs to deliver products on time Expensive under-utilized build infrastructure and every new project needs more Releases missing critical functionality leads to dissatisfied customers
  • #10 Massively parallel, safe software builds Delivers up to 20x acceleration Fast, accurate incremental builds Boosts engineering productivity Non-intrusive and high performance Reduces manual maintenance significantly Tool agnostic
  • #14 These are the projected build times of Android Lollipop. Remember, it takes gmake 80 minutes to build this on an 8-core machine, and 20 minutes on a 64-core machine. Key take-aways JobCache dramatically reduces build time – Compare the blue bars against the green bars Corollary – JobCache can achieve the same speed with less hardware. JobCache with 16 cores can complete the build in under 12 minutes!! With more hardware – JobCache can reduce the build time to never-before levels all the while not compromising the correctness.
  • #15 Let’s talk about a couple of success cases using EA to speed up testing