SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Amdahl’s Law Redux
Alexander Gounares
Concurix Corporation
June 26, 2013
Using Concurix’s Node.js Analytics Tools
Themanycoreeraishere.
Themanycoreeraishere.
Themanycoreeraishere.
The Manycore era is here now
AMD Opteron family 15h
64 cores: 16 per chip x 4 sockets
Streaming SIMD extensions (SSE4)
128 GB RAM—512GB max
8 NUMA Domains with Hypertransport
~$4.7K
~$4.2K
Themanycoreeraishere.
Themanycoreeraishere.
Traditional software does not scale on
manycore
http://pdos.csail.mit.edu/papers/linux:osdi10.p
df
Locks in traditional O-O
languages limit scalability per
Amdahl’s Law
Themanycoreeraishere.
Erlang and NodeJS to the rescue!
Themanycoreeraishere.
Erlang Node.JS
Single assignment
No shared state
Lightweight processes
Message passing
Recursion and pattern matching
Concurrency built in
Supervisor based reliability model
Server side Javascript with Google V8
engine
Single threaded asynchronous callback
model
Multi-core via OS processes (1 or more
per core)
Existing libraries wrapped in closures—
functional programming for the
uninitiated
Message passing via [domain] sockets
Themanycoreeraishere.
Themanycoreeraishere.
NodeJS example
Themanycoreeraishere.
Now something more complex….
Themanycoreeraishere.
Ruby Rails Erlang Style!
Themanycoreeraishere.
Real world Chicago Boss application (concurix.com)
December 2012
No performance difference between 1 and 64 cores!!!!!
Themanycoreeraishere.
Pic of dark day
Themanycoreeraishere.
Back to Amdahl's Law—it’s all about the locks
Themanycoreeraishere.
Where we are now… 45x+!!!
*: A different load tester was used in the December 2012 numbers, this is rough approximation of the December numbers in the new tool.
Themanycoreeraishere.
We are not alone…
Concurix has over 1.5 million (and growing!) profile
data sets.
100% of these profiles show at least 1 bottleneck
candidate
Themanycoreeraishere.
How we did it…
Themanycoreeraishere.
Profiling with Real Time
Visualizations and Big Data
Themanycoreeraishere.
Gprof!
Source: http://linuxforengineers.blogspot.com/2012/07/its-time-to-speed-up-your-code-with.html
Themanycoreeraishere.
Can we do better…?
Themanycoreeraishere.
Yes!
Too much data—2Gz+ * 64 cores
Not enough insight (“it’s slow”)Depthofinstrumentation
Themanycoreeraishere.
Automatically detect and instrument a semantic
“middle”
Too much data—2Gz+ * 64 cores
Not enough insight (“it’s slow”)Depthofinstrumentation
Semantic level (e.g.
code modules)
Big Data Analytics
Themanycoreeraishere.
Measuring Similarity
If we line up the data in an ordered vector, treat the vector as a point in
N dimensional space, then similarity between data sets can be
measured by distance between the points
One implementation is the cosine similarity
Application example
Identify transitions
Data = the number of messages sent between any pair of sender-receiver, during
a time window
Vector = line up the data along all possible pairs, , like "mochiweb-to-poolboy”, in
fixed order
Data for each time window is a vector of length of NxN (N = number of processes)
Big change in similarity between the data vectors means big shift in message
passing activity
Benchmark repeatability
1.000 0.999 0.923 0.999 benchrun-399
----- 1.000 0.917 0.999 benchrun-403
----- ----- 1.000 0.910 benchrun-404
----- ----- ----- 1.000 benchrun-406
Themanycoreeraishere.
Clustering
Grouping data points by similarity on some metric
Algorithm: repeat until converge
Assignment to clusters:
Update cluster centers
Applications
Often used for discovery tasks when there are little prior
knowledge about data
Example: Bucket the many
processes to a few types
according to their activities over
time
Themanycoreeraishere.
Diff DTW
INSERT Shift time out
DELETE Shift time in
Time series analysis
Use “dynamic time warping” distance to measure how well two time
series match
Themanycoreeraishere.
Network analysis: centrality
Centrality: relative importance of a vertex in the
network
Computation
Degree centrality
Closeness centrality
Eigenvector centrality
Betweenness centrality
Application
Detecting most important process in message passing network
Bottleneck detection
Themanycoreeraishere.
Predictive Bottleneck Detection
Build a statistical model of how an application performs, and try to predict when
bottlenecks can occur *before* they occur.
We accomplish this by watching the relationship between events and time over
time…or:
fit a line time = a + b * task to points {(task1, time1), (task2, time2), …, (taskN, timeN)}
stask =
1
(N -1)
taski -task( )
2
i=1
N
å
rtask,time =
taski - task( ) timei - time( )i=1
N
å
(N -1)staskstime
stime =
1
N -1
timei - time( )
2
i=1
N
å
b = rtask,time
stime
stask
a = time- b*task
Themanycoreeraishere.
Bottleneck detection (simplified)
Order cars by arrival
Later cars are delayed more
Themanycoreeraishere.
Python MapReduce Bottleneck
Pipe synchronization
Works cross-language: C and Erlang implemented, NodeJS soon
Themanycoreeraishere.
The Bet
Themanycoreeraishere.
Code for the bet…
ONTARGETONTARGET
DEMO
Themanycoreeraishere.
Message passing between processes
Inets
Mochiweb
Socket
ChicagoBoss
Tiny MQ
Mochiweb
Acceptor
Themanycoreeraishere.
Excessive Memory Usage
Themanycoreeraishere.
Uneven CPU Core utilization
Use the +sbt nnts flag to lock threads to schedulers!
Themanycoreeraishere.
Try it yourself--Erlang!
1. Add concurix_runtime to your rebar.config file:
{concurix_runtime, ".*",
{git, "https://github.com/Concurix/cx_runtime.git"}}
2. Start the concurix_runtime system:
concurix_runtime:start()
3. Navigate to http://concurix.com/main/bench
Themanycoreeraishere.
Try it yourself--NodeJS! (Just launched!)
1. Install the Concurix NodeJS runtime:
>npm install concurixjs
2. Start the concurix_runtime system:
var cx = require(‘concurixjs’).cx.start();
>node –enable-debug-as=v8debug app.js
1. Navigate to http://concurix.com/main/bench
Visit us at
www.concurix.com!
Q&A
Themanycoreeraishere.
Almost…even very parallelizable workloads had
trouble scaling
Themanycoreeraishere.
After a bit of work….

Weitere ähnliche Inhalte

Was ist angesagt?

A Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized DeduplicationA Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized Deduplication
1crore projects
 
ITNW 2164 ResearchPaper
ITNW 2164 ResearchPaperITNW 2164 ResearchPaper
ITNW 2164 ResearchPaper
Manuel Garza
 
Narrow bicliques cryptanalysisoffullidea
Narrow bicliques cryptanalysisoffullideaNarrow bicliques cryptanalysisoffullidea
Narrow bicliques cryptanalysisoffullidea
Rifad Mohamed
 

Was ist angesagt? (20)

Post Quantum Cryptography: Technical Overview
Post Quantum Cryptography: Technical OverviewPost Quantum Cryptography: Technical Overview
Post Quantum Cryptography: Technical Overview
 
Plenzogan technology
Plenzogan technologyPlenzogan technology
Plenzogan technology
 
Thesis Background
Thesis BackgroundThesis Background
Thesis Background
 
01337277
0133727701337277
01337277
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
Os
OsOs
Os
 
Efficient algorithm for rsa text encryption using cuda c
Efficient algorithm for rsa text encryption using cuda cEfficient algorithm for rsa text encryption using cuda c
Efficient algorithm for rsa text encryption using cuda c
 
Spanner (may 19)
Spanner (may 19)Spanner (may 19)
Spanner (may 19)
 
Homomorphic Encryption
Homomorphic EncryptionHomomorphic Encryption
Homomorphic Encryption
 
SecuPAN: A Security Scheme to Mitigate Fragmentation-Based Network Attacks in...
SecuPAN: A Security Scheme to Mitigate Fragmentation-Based Network Attacks in...SecuPAN: A Security Scheme to Mitigate Fragmentation-Based Network Attacks in...
SecuPAN: A Security Scheme to Mitigate Fragmentation-Based Network Attacks in...
 
Securing Privacy of User’s Data on Cloud Using Back Propagation Neural Networks
Securing Privacy of User’s Data on Cloud Using Back Propagation Neural NetworksSecuring Privacy of User’s Data on Cloud Using Back Propagation Neural Networks
Securing Privacy of User’s Data on Cloud Using Back Propagation Neural Networks
 
State of the art time-series analysis with deep learning by Javier Ordóñez at...
State of the art time-series analysis with deep learning by Javier Ordóñez at...State of the art time-series analysis with deep learning by Javier Ordóñez at...
State of the art time-series analysis with deep learning by Javier Ordóñez at...
 
A Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized DeduplicationA Hybrid Cloud Approach for Secure Authorized Deduplication
A Hybrid Cloud Approach for Secure Authorized Deduplication
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
ITNW 2164 ResearchPaper
ITNW 2164 ResearchPaperITNW 2164 ResearchPaper
ITNW 2164 ResearchPaper
 
Homomorphic encryption in cloud computing final
Homomorphic encryption  in cloud computing finalHomomorphic encryption  in cloud computing final
Homomorphic encryption in cloud computing final
 
A hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplicationA hybrid cloud approach for secure authorized deduplication
A hybrid cloud approach for secure authorized deduplication
 
Sha3
Sha3Sha3
Sha3
 
Gnocchi v3
Gnocchi v3Gnocchi v3
Gnocchi v3
 
Narrow bicliques cryptanalysisoffullidea
Narrow bicliques cryptanalysisoffullideaNarrow bicliques cryptanalysisoffullidea
Narrow bicliques cryptanalysisoffullidea
 

Ähnlich wie Seattle Scalability Meetup 6-26-13

cis97003
cis97003cis97003
cis97003
perfj
 
Distribute Key Value Store
Distribute Key Value StoreDistribute Key Value Store
Distribute Key Value Store
Santal Li
 
Distribute key value_store
Distribute key value_storeDistribute key value_store
Distribute key value_store
drewz lin
 
Operating System 4 1193308760782240 2
Operating System 4 1193308760782240 2Operating System 4 1193308760782240 2
Operating System 4 1193308760782240 2
mona_hakmy
 
Operating System 4
Operating System 4Operating System 4
Operating System 4
tech2click
 

Ähnlich wie Seattle Scalability Meetup 6-26-13 (20)

cis97003
cis97003cis97003
cis97003
 
Implementation on Data Security Approach in Dynamic Multi Hop Communication
 Implementation on Data Security Approach in Dynamic Multi Hop Communication Implementation on Data Security Approach in Dynamic Multi Hop Communication
Implementation on Data Security Approach in Dynamic Multi Hop Communication
 
The Case for a Signal Oriented Data Stream Management System
The Case for a Signal Oriented Data Stream Management SystemThe Case for a Signal Oriented Data Stream Management System
The Case for a Signal Oriented Data Stream Management System
 
A Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in Parallel
 
Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos Fully fault tolerant real time data pipeline with docker and mesos
Fully fault tolerant real time data pipeline with docker and mesos
 
Data Grids with Oracle Coherence
Data Grids with Oracle CoherenceData Grids with Oracle Coherence
Data Grids with Oracle Coherence
 
Apache Beam: A unified model for batch and stream processing data
Apache Beam: A unified model for batch and stream processing dataApache Beam: A unified model for batch and stream processing data
Apache Beam: A unified model for batch and stream processing data
 
Real-Time Big Data with Storm, Kafka and GigaSpaces
Real-Time Big Data with Storm, Kafka and GigaSpacesReal-Time Big Data with Storm, Kafka and GigaSpaces
Real-Time Big Data with Storm, Kafka and GigaSpaces
 
Semantics in Sensor Networks
Semantics in Sensor NetworksSemantics in Sensor Networks
Semantics in Sensor Networks
 
Query optimization for_sensor_networks
Query optimization for_sensor_networksQuery optimization for_sensor_networks
Query optimization for_sensor_networks
 
And Then There Are Algorithms
And Then There Are AlgorithmsAnd Then There Are Algorithms
And Then There Are Algorithms
 
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large SystemsCyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
Cyclone DDS Unleashed: Scalability in DDS and Dealing with Large Systems
 
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in GridsINC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
 
Distribute Key Value Store
Distribute Key Value StoreDistribute Key Value Store
Distribute Key Value Store
 
Distribute key value_store
Distribute key value_storeDistribute key value_store
Distribute key value_store
 
Log Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine LearningLog Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine Learning
 
Log Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine LearningLog Analytics in Datacenter with Apache Spark and Machine Learning
Log Analytics in Datacenter with Apache Spark and Machine Learning
 
Big data serving: Processing and inference at scale in real time
Big data serving: Processing and inference at scale in real timeBig data serving: Processing and inference at scale in real time
Big data serving: Processing and inference at scale in real time
 
Operating System 4 1193308760782240 2
Operating System 4 1193308760782240 2Operating System 4 1193308760782240 2
Operating System 4 1193308760782240 2
 
Operating System 4
Operating System 4Operating System 4
Operating System 4
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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...
 
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
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Seattle Scalability Meetup 6-26-13