SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
Kick-R: Get your own R instance with
36 cores on AWS
Kick-R: Get your own R instance with
36 cores on AWS
Kick-R: Get your own R instance with
36 cores on AWS
Kick-R: Get your own R instance with
36 cores on AWS
Kick-R: Get your own R instance with
36 cores on AWS
Kiwamu Okabe @ Centillion Japan
Co.,Ltd.
Kiwamu Okabe @ Centillion Japan
Co.,Ltd.
Kiwamu Okabe @ Centillion Japan
Co.,Ltd.
Kiwamu Okabe @ Centillion Japan
Co.,Ltd.
Kiwamu Okabe @ Centillion Japan
Co.,Ltd.
One day, my boss said...One day, my boss said...One day, my boss said...One day, my boss said...One day, my boss said...
☆ Boss: "Hey, my R script needs much time
to run..."
☆ Boss: "Hey, my R script needs much time
to run..."
☆ Boss: "Hey, my R script needs much time
to run..."
☆ Boss: "Hey, my R script needs much time
to run..."
☆ Boss: "Hey, my R script needs much time
to run..."
☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"
My solution named "Kick-R"My solution named "Kick-R"My solution named "Kick-R"My solution named "Kick-R"My solution named "Kick-R"
DemonstrationDemonstrationDemonstrationDemonstrationDemonstration
data(spam)
cores�<-�detectCores()
cl�<-�makeCluster(cores)
registerDoParallel(cl)
system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine,
������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{
��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree)
})
stopCluster(cl)
data(spam)
cores�<-�detectCores()
cl�<-�makeCluster(cores)
registerDoParallel(cl)
system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine,
������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{
��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree)
})
stopCluster(cl)
data(spam)
cores�<-�detectCores()
cl�<-�makeCluster(cores)
registerDoParallel(cl)
system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine,
������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{
��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree)
})
stopCluster(cl)
data(spam)
cores�<-�detectCores()
cl�<-�makeCluster(cores)
registerDoParallel(cl)
system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine,
������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{
��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree)
})
stopCluster(cl)
data(spam)
cores�<- detectCores()
cl�<- makeCluster(cores)
registerDoParallel(cl)
system.time(fit.rf�<- foreach(ntree�= rep(40,�36),�.combine�=�combine,
.export�= "spam",�.packages�= "randomForest")�%dopar% {
randomForest(type�~ .,�data�=�spam,�ntree�=�ntree)
})
stopCluster(cl)
☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220
☆ 10.5 sec on AWS☆ 10.5 sec on AWS☆ 10.5 sec on AWS☆ 10.5 sec on AWS☆ 10.5 sec on AWS
How to build?How to build?How to build?How to build?How to build?
$�sudo�apt-get�install�git�make�bundler�unzip
$�cd�/usr/local/bin
$�wget�https://releases.hashicorp.com/packer/0.8.6/
packer_0.8.6_linux_amd64.zip
$�wget�https://releases.hashicorp.com/terraform/0.6.7/
terraform_0.6.7_linux_amd64.zip
$�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip
$�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip
$�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX
$�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
$�cd�~/src
$�git�clone�https://github.com/centillion-tech/kick-r.git
$�cd�kick-r
$�make�setup
$�sudo�apt-get�install�git�make�bundler�unzip
$�cd�/usr/local/bin
$�wget�https://releases.hashicorp.com/packer/0.8.6/
packer_0.8.6_linux_amd64.zip
$�wget�https://releases.hashicorp.com/terraform/0.6.7/
terraform_0.6.7_linux_amd64.zip
$�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip
$�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip
$�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX
$�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
$�cd�~/src
$�git�clone�https://github.com/centillion-tech/kick-r.git
$�cd�kick-r
$�make�setup
$�sudo�apt-get�install�git�make�bundler�unzip
$�cd�/usr/local/bin
$�wget�https://releases.hashicorp.com/packer/0.8.6/
packer_0.8.6_linux_amd64.zip
$�wget�https://releases.hashicorp.com/terraform/0.6.7/
terraform_0.6.7_linux_amd64.zip
$�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip
$�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip
$�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX
$�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
$�cd�~/src
$�git�clone�https://github.com/centillion-tech/kick-r.git
$�cd�kick-r
$�make�setup
$�sudo�apt-get�install�git�make�bundler�unzip
$�cd�/usr/local/bin
$�wget�https://releases.hashicorp.com/packer/0.8.6/
packer_0.8.6_linux_amd64.zip
$�wget�https://releases.hashicorp.com/terraform/0.6.7/
terraform_0.6.7_linux_amd64.zip
$�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip
$�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip
$�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX
$�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
$�cd�~/src
$�git�clone�https://github.com/centillion-tech/kick-r.git
$�cd�kick-r
$�make�setup
$�sudo�apt-get�install�git�make�bundler�unzip
$�cd�/usr/local/bin
$�wget�https://releases.hashicorp.com/packer/0.8.6/
packer_0.8.6_linux_amd64.zip
$�wget�https://releases.hashicorp.com/terraform/0.6.7/
terraform_0.6.7_linux_amd64.zip
$�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip
$�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip
$�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX
$�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
$�cd�~/src
$�git�clone�https://github.com/centillion-tech/kick-r.git
$�cd�kick-r
$�make�setup
How to run?How to run?How to run?How to run?How to run?
$�make
$�make�ssh-config�>�~/.ssh/config
$�ssh�kick-r
ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1
R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing"
$�make
$�make�ssh-config�>�~/.ssh/config
$�ssh�kick-r
ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1
R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing"
$�make
$�make�ssh-config�>�~/.ssh/config
$�ssh�kick-r
ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1
R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing"
$�make
$�make�ssh-config�>�~/.ssh/config
$�ssh�kick-r
ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1
R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing"
$�make
$�make�ssh-config�>�~/.ssh/config
$�ssh�kick-r
ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1
R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing"
How to use on Emacs?How to use on Emacs?How to use on Emacs?How to use on Emacs?How to use on Emacs?
M-x�R
/ssh:kick-r:
M-x�R
/ssh:kick-r:
M-x�R
/ssh:kick-r:
M-x�R
/ssh:kick-r:
M-x�R
/ssh:kick-r:
X forwarding is available.X forwarding is available.X forwarding is available.X forwarding is available.X forwarding is available.
How to cleanup all of environment?How to cleanup all of environment?How to cleanup all of environment?How to cleanup all of environment?How to cleanup all of environment?
make�distcleanmake�distcleanmake�distcleanmake�distcleanmake�distclean
Try it!Try it!Try it!Try it!Try it!
https://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-r
License of photos #1License of photos #1License of photos #1License of photos #1License of photos #1
*�Side�Kick�Cara�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/davishaw/442139414/
��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0
*�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/chrishimself/3490002460/
��Copyright:�Christian�H.�/�License:�CC�BY�2.0
*�Kicking�scooters�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/amira_a/10597007134/
��Copyright:�amira_a�/�License:�CC�BY�2.0
*�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/mujitra/2527994700/
��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0
*�Dive�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/joeshlabotnik/516341295/
��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0
*�Side�Kick�Cara�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/davishaw/442139414/
��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0
*�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/chrishimself/3490002460/
��Copyright:�Christian�H.�/�License:�CC�BY�2.0
*�Kicking�scooters�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/amira_a/10597007134/
��Copyright:�amira_a�/�License:�CC�BY�2.0
*�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/mujitra/2527994700/
��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0
*�Dive�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/joeshlabotnik/516341295/
��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0
*�Side�Kick�Cara�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/davishaw/442139414/
��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0
*�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/chrishimself/3490002460/
��Copyright:�Christian�H.�/�License:�CC�BY�2.0
*�Kicking�scooters�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/amira_a/10597007134/
��Copyright:�amira_a�/�License:�CC�BY�2.0
*�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/mujitra/2527994700/
��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0
*�Dive�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/joeshlabotnik/516341295/
��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0
*�Side�Kick�Cara�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/davishaw/442139414/
��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0
*�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/chrishimself/3490002460/
��Copyright:�Christian�H.�/�License:�CC�BY�2.0
*�Kicking�scooters�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/amira_a/10597007134/
��Copyright:�amira_a�/�License:�CC�BY�2.0
*�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/mujitra/2527994700/
��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0
*�Dive�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/joeshlabotnik/516341295/
��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0
*�Side�Kick�Cara�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/davishaw/442139414/
��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0
*�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/chrishimself/3490002460/
��Copyright:�Christian�H.�/�License:�CC�BY�2.0
*�Kicking�scooters�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/amira_a/10597007134/
��Copyright:�amira_a�/�License:�CC�BY�2.0
*�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/mujitra/2527994700/
��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0
*�Dive�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/joeshlabotnik/516341295/
��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0
License of photos #2License of photos #2License of photos #2License of photos #2License of photos #2
*�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/steren/2732488224/
��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0
*�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/steren/2732488224/
��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0
*�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/steren/2732488224/
��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0
*�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/steren/2732488224/
��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0
*�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing!
��https://www.flickr.com/photos/steren/2732488224/
��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0

Contenu connexe

Similaire à Kick-R: Get your own R instance with 36 cores on AWS

Apache Spark for Library Developers with William Benton and Erik Erlandson
 Apache Spark for Library Developers with William Benton and Erik Erlandson Apache Spark for Library Developers with William Benton and Erik Erlandson
Apache Spark for Library Developers with William Benton and Erik Erlandson
Databricks
 

Similaire à Kick-R: Get your own R instance with 36 cores on AWS (20)

Kite: efficient and available release consistency for the datacenter
Kite: efficient and available release consistency for the datacenterKite: efficient and available release consistency for the datacenter
Kite: efficient and available release consistency for the datacenter
 
AWS re:Invent 2019 - DAT328 Deep Dive on Amazon Aurora PostgreSQL
AWS re:Invent 2019 - DAT328 Deep Dive on Amazon Aurora PostgreSQLAWS re:Invent 2019 - DAT328 Deep Dive on Amazon Aurora PostgreSQL
AWS re:Invent 2019 - DAT328 Deep Dive on Amazon Aurora PostgreSQL
 
Deep Dive on the Amazon Aurora PostgreSQL-compatible Edition - DAT402 - re:In...
Deep Dive on the Amazon Aurora PostgreSQL-compatible Edition - DAT402 - re:In...Deep Dive on the Amazon Aurora PostgreSQL-compatible Edition - DAT402 - re:In...
Deep Dive on the Amazon Aurora PostgreSQL-compatible Edition - DAT402 - re:In...
 
Let's Get to the Rapids
Let's Get to the RapidsLet's Get to the Rapids
Let's Get to the Rapids
 
DAT305_Amazon ElastiCache Deep Dive
DAT305_Amazon ElastiCache Deep DiveDAT305_Amazon ElastiCache Deep Dive
DAT305_Amazon ElastiCache Deep Dive
 
Node.js - Advanced Basics
Node.js - Advanced BasicsNode.js - Advanced Basics
Node.js - Advanced Basics
 
(ARC311) Extreme Availability for Mission-Critical Applications | AWS re:Inve...
(ARC311) Extreme Availability for Mission-Critical Applications | AWS re:Inve...(ARC311) Extreme Availability for Mission-Critical Applications | AWS re:Inve...
(ARC311) Extreme Availability for Mission-Critical Applications | AWS re:Inve...
 
(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS
 
Podlove Podcast Validator
Podlove Podcast ValidatorPodlove Podcast Validator
Podlove Podcast Validator
 
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine YardHow I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
 
Xlab #1: Advantages of functional programming in Java 8
Xlab #1: Advantages of functional programming in Java 8Xlab #1: Advantages of functional programming in Java 8
Xlab #1: Advantages of functional programming in Java 8
 
re:Invent 2020 DAT301 Deep Dive on Amazon Aurora with PostgreSQL Compatibility
re:Invent 2020 DAT301 Deep Dive on Amazon Aurora with PostgreSQL Compatibilityre:Invent 2020 DAT301 Deep Dive on Amazon Aurora with PostgreSQL Compatibility
re:Invent 2020 DAT301 Deep Dive on Amazon Aurora with PostgreSQL Compatibility
 
Apache Spark for Library Developers with William Benton and Erik Erlandson
 Apache Spark for Library Developers with William Benton and Erik Erlandson Apache Spark for Library Developers with William Benton and Erik Erlandson
Apache Spark for Library Developers with William Benton and Erik Erlandson
 
TDC 2012 - Patterns e Anti-Patterns em Ruby
TDC 2012 - Patterns e Anti-Patterns em RubyTDC 2012 - Patterns e Anti-Patterns em Ruby
TDC 2012 - Patterns e Anti-Patterns em Ruby
 
Traceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14thTraceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14th
 
Virtual Machine for Regular Expressions
Virtual Machine for Regular ExpressionsVirtual Machine for Regular Expressions
Virtual Machine for Regular Expressions
 
Sending a for ahuh. win32 exploit development old school
Sending a for ahuh. win32 exploit development old schoolSending a for ahuh. win32 exploit development old school
Sending a for ahuh. win32 exploit development old school
 
Cassandra + Spark (You’ve got the lighter, let’s start a fire)
Cassandra + Spark (You’ve got the lighter, let’s start a fire)Cassandra + Spark (You’ve got the lighter, let’s start a fire)
Cassandra + Spark (You’ve got the lighter, let’s start a fire)
 
Building a Scalable Distributed Stats Infrastructure with Storm and KairosDB
Building a Scalable Distributed Stats Infrastructure with Storm and KairosDBBuilding a Scalable Distributed Stats Infrastructure with Storm and KairosDB
Building a Scalable Distributed Stats Infrastructure with Storm and KairosDB
 
Rails on Oracle 2011
Rails on Oracle 2011Rails on Oracle 2011
Rails on Oracle 2011
 

Dernier

+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@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 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 ...
 
+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...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
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
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
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
 
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
 
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...
 
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
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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?
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

Kick-R: Get your own R instance with 36 cores on AWS

  • 1. Kick-R: Get your own R instance with 36 cores on AWS Kick-R: Get your own R instance with 36 cores on AWS Kick-R: Get your own R instance with 36 cores on AWS Kick-R: Get your own R instance with 36 cores on AWS Kick-R: Get your own R instance with 36 cores on AWS Kiwamu Okabe @ Centillion Japan Co.,Ltd. Kiwamu Okabe @ Centillion Japan Co.,Ltd. Kiwamu Okabe @ Centillion Japan Co.,Ltd. Kiwamu Okabe @ Centillion Japan Co.,Ltd. Kiwamu Okabe @ Centillion Japan Co.,Ltd.
  • 2. One day, my boss said...One day, my boss said...One day, my boss said...One day, my boss said...One day, my boss said... ☆ Boss: "Hey, my R script needs much time to run..." ☆ Boss: "Hey, my R script needs much time to run..." ☆ Boss: "Hey, my R script needs much time to run..." ☆ Boss: "Hey, my R script needs much time to run..." ☆ Boss: "Hey, my R script needs much time to run..." ☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"☆ Me: "O.K. I'll try to fix it using AWS!"
  • 3. My solution named "Kick-R"My solution named "Kick-R"My solution named "Kick-R"My solution named "Kick-R"My solution named "Kick-R"
  • 4. DemonstrationDemonstrationDemonstrationDemonstrationDemonstration data(spam) cores�<-�detectCores() cl�<-�makeCluster(cores) registerDoParallel(cl) system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine, ������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{ ��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree) }) stopCluster(cl) data(spam) cores�<-�detectCores() cl�<-�makeCluster(cores) registerDoParallel(cl) system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine, ������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{ ��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree) }) stopCluster(cl) data(spam) cores�<-�detectCores() cl�<-�makeCluster(cores) registerDoParallel(cl) system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine, ������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{ ��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree) }) stopCluster(cl) data(spam) cores�<-�detectCores() cl�<-�makeCluster(cores) registerDoParallel(cl) system.time(fit.rf�<-�foreach(ntree�=�rep(40,�36),�.combine�=�combine, ������������������.export�=�"spam",�.packages�=�"randomForest")�%dopar%�{ ��randomForest(type�~�.,�data�=�spam,�ntree�=�ntree) }) stopCluster(cl) data(spam) cores�<- detectCores() cl�<- makeCluster(cores) registerDoParallel(cl) system.time(fit.rf�<- foreach(ntree�= rep(40,�36),�.combine�=�combine, .export�= "spam",�.packages�= "randomForest")�%dopar% { randomForest(type�~ .,�data�=�spam,�ntree�=�ntree) }) stopCluster(cl) ☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220☆ 25.0 sec on ThinkPad X220 ☆ 10.5 sec on AWS☆ 10.5 sec on AWS☆ 10.5 sec on AWS☆ 10.5 sec on AWS☆ 10.5 sec on AWS
  • 5. How to build?How to build?How to build?How to build?How to build? $�sudo�apt-get�install�git�make�bundler�unzip $�cd�/usr/local/bin $�wget�https://releases.hashicorp.com/packer/0.8.6/ packer_0.8.6_linux_amd64.zip $�wget�https://releases.hashicorp.com/terraform/0.6.7/ terraform_0.6.7_linux_amd64.zip $�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip $�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip $�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX $�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY $�cd�~/src $�git�clone�https://github.com/centillion-tech/kick-r.git $�cd�kick-r $�make�setup $�sudo�apt-get�install�git�make�bundler�unzip $�cd�/usr/local/bin $�wget�https://releases.hashicorp.com/packer/0.8.6/ packer_0.8.6_linux_amd64.zip $�wget�https://releases.hashicorp.com/terraform/0.6.7/ terraform_0.6.7_linux_amd64.zip $�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip $�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip $�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX $�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY $�cd�~/src $�git�clone�https://github.com/centillion-tech/kick-r.git $�cd�kick-r $�make�setup $�sudo�apt-get�install�git�make�bundler�unzip $�cd�/usr/local/bin $�wget�https://releases.hashicorp.com/packer/0.8.6/ packer_0.8.6_linux_amd64.zip $�wget�https://releases.hashicorp.com/terraform/0.6.7/ terraform_0.6.7_linux_amd64.zip $�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip $�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip $�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX $�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY $�cd�~/src $�git�clone�https://github.com/centillion-tech/kick-r.git $�cd�kick-r $�make�setup $�sudo�apt-get�install�git�make�bundler�unzip $�cd�/usr/local/bin $�wget�https://releases.hashicorp.com/packer/0.8.6/ packer_0.8.6_linux_amd64.zip $�wget�https://releases.hashicorp.com/terraform/0.6.7/ terraform_0.6.7_linux_amd64.zip $�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip $�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip $�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX $�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY $�cd�~/src $�git�clone�https://github.com/centillion-tech/kick-r.git $�cd�kick-r $�make�setup $�sudo�apt-get�install�git�make�bundler�unzip $�cd�/usr/local/bin $�wget�https://releases.hashicorp.com/packer/0.8.6/ packer_0.8.6_linux_amd64.zip $�wget�https://releases.hashicorp.com/terraform/0.6.7/ terraform_0.6.7_linux_amd64.zip $�sudo�unzip�-x�packer_0.8.6_linux_amd64.zip $�sudo�unzip�-x�terraform_0.6.7_linux_amd64.zip $�export�AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXX $�export�AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY $�cd�~/src $�git�clone�https://github.com/centillion-tech/kick-r.git $�cd�kick-r $�make�setup
  • 6. How to run?How to run?How to run?How to run?How to run? $�make $�make�ssh-config�>�~/.ssh/config $�ssh�kick-r ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1 R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing" $�make $�make�ssh-config�>�~/.ssh/config $�ssh�kick-r ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1 R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing" $�make $�make�ssh-config�>�~/.ssh/config $�ssh�kick-r ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1 R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing" $�make $�make�ssh-config�>�~/.ssh/config $�ssh�kick-r ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1 R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing" $�make $�make�ssh-config�>�~/.ssh/config $�ssh�kick-r ubuntu@ip-10-189-135-202:~$�R�--version�│�head�-1 R�version�3.0.2�(2013-09-25)�--�"Frisbee�Sailing"
  • 7. How to use on Emacs?How to use on Emacs?How to use on Emacs?How to use on Emacs?How to use on Emacs? M-x�R /ssh:kick-r: M-x�R /ssh:kick-r: M-x�R /ssh:kick-r: M-x�R /ssh:kick-r: M-x�R /ssh:kick-r: X forwarding is available.X forwarding is available.X forwarding is available.X forwarding is available.X forwarding is available.
  • 8. How to cleanup all of environment?How to cleanup all of environment?How to cleanup all of environment?How to cleanup all of environment?How to cleanup all of environment? make�distcleanmake�distcleanmake�distcleanmake�distcleanmake�distclean
  • 9. Try it!Try it!Try it!Try it!Try it! https://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-rhttps://github.com/centillion-tech/kick-r
  • 10. License of photos #1License of photos #1License of photos #1License of photos #1License of photos #1 *�Side�Kick�Cara�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/davishaw/442139414/ ��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0 *�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/chrishimself/3490002460/ ��Copyright:�Christian�H.�/�License:�CC�BY�2.0 *�Kicking�scooters�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/amira_a/10597007134/ ��Copyright:�amira_a�/�License:�CC�BY�2.0 *�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/mujitra/2527994700/ ��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0 *�Dive�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/joeshlabotnik/516341295/ ��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0 *�Side�Kick�Cara�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/davishaw/442139414/ ��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0 *�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/chrishimself/3490002460/ ��Copyright:�Christian�H.�/�License:�CC�BY�2.0 *�Kicking�scooters�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/amira_a/10597007134/ ��Copyright:�amira_a�/�License:�CC�BY�2.0 *�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/mujitra/2527994700/ ��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0 *�Dive�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/joeshlabotnik/516341295/ ��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0 *�Side�Kick�Cara�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/davishaw/442139414/ ��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0 *�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/chrishimself/3490002460/ ��Copyright:�Christian�H.�/�License:�CC�BY�2.0 *�Kicking�scooters�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/amira_a/10597007134/ ��Copyright:�amira_a�/�License:�CC�BY�2.0 *�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/mujitra/2527994700/ ��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0 *�Dive�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/joeshlabotnik/516341295/ ��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0 *�Side�Kick�Cara�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/davishaw/442139414/ ��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0 *�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/chrishimself/3490002460/ ��Copyright:�Christian�H.�/�License:�CC�BY�2.0 *�Kicking�scooters�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/amira_a/10597007134/ ��Copyright:�amira_a�/�License:�CC�BY�2.0 *�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/mujitra/2527994700/ ��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0 *�Dive�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/joeshlabotnik/516341295/ ��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0 *�Side�Kick�Cara�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/davishaw/442139414/ ��Copyright:�David�Farrell-Shaw�/�License:�CC�BY�2.0 *�Boss�Coffee�Vending�Machine�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/chrishimself/3490002460/ ��Copyright:�Christian�H.�/�License:�CC�BY�2.0 *�Kicking�scooters�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/amira_a/10597007134/ ��Copyright:�amira_a�/�License:�CC�BY�2.0 *�amazon.co.jp�Credit�Card.�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/mujitra/2527994700/ ��Copyright:�MIKI�Yoshihito�/�License:�CC�BY�2.0 *�Dive�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/joeshlabotnik/516341295/ ��Copyright:�Peter�Dutton�/�License:�CC�BY�2.0
  • 11. License of photos #2License of photos #2License of photos #2License of photos #2License of photos #2 *�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/steren/2732488224/ ��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0 *�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/steren/2732488224/ ��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0 *�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/steren/2732488224/ ��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0 *�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/steren/2732488224/ ��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0 *�Creative�Commons�BBB�│�Flickr�-�Photo�Sharing! ��https://www.flickr.com/photos/steren/2732488224/ ��Copyright:�Steren�Giannini�/�License:�CC�BY�2.0