Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
speed of cpan module installation
Search
Shoichi Kaji
June 24, 2015
Technology
0
1.2k
speed of cpan module installation
Gotanda.pm #5 2015/06/24
Shoichi Kaji
June 24, 2015
Tweet
Share
More Decks by Shoichi Kaji
See All by Shoichi Kaji
Parallel::Pipesの紹介
skaji
2
920
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
3.9k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
240
Perl Quiz
skaji
0
140
cpm at PerlCon 2019
skaji
0
120
Perl5 Package Manager
skaji
0
720
Internal of cpm
skaji
0
620
How to execute external programs in Perl
skaji
3
660
Writing Perl with w0rp/ale
skaji
0
2.3k
Other Decks in Technology
See All in Technology
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.2k
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
1
170
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
500
Core Audio tapを使ったリアルタイム音声処理のお話
yuta0306
0
150
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
300
Connect 100+を支える技術
kanyamaguc
0
150
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
940
強化されたAmazon Location Serviceによる新機能と開発者体験
dayjournal
3
250
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 完全版 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming - Expanded
tomzoh
4
3.4k
5min GuardDuty Extended Threat Detection EKS
takakuni
0
180
AI導入の理想と現実~コストと浸透〜
oprstchn
0
150
解析の定理証明実践@Lean 4
dec9ue
1
200
Featured
See All Featured
KATA
mclloyd
30
14k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Documentation Writing (for coders)
carmenintech
72
4.9k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Being A Developer After 40
akosma
90
590k
GraphQLとの向き合い方2022年版
quramy
49
14k
4 Signs Your Business is Dying
shpigford
184
22k
Bash Introduction
62gerente
614
210k
Gamification - CAS2011
davidbonilla
81
5.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
800
Transcript
speed of cpan module installation Shoichi Kaji
contens • installation of cpan modules • speed is important
• what can I do? • demo • conclusion
installation of cpan modules • all you have to do
is to type: • cpanm Module • How easy!
But
if you install a lot of cpan modules, it takes
long time!
speed is important • If you develop a perl project,
it is common to depends on hundreds of cpan modules • Then bootstrapping time is >10minutes • This is A PROBLEM!
What can I do? • In QA Hackathon 2015 at
Berlin, miyagawa developed cpanm2.0 “menlo”, which will be released a “regular” perl module. • OK, let’s use menlo in parallel!
Acme::CPAN::Installer https://github.com/shoichikaji/Acme-CPAN-Installer
Acme::CPAN::Installer • With cpanfile.snapshot, install cpan distributions in parallel.
• [EXPERIMENTAL] With the assumption that dependencies are statically determined, resolve distributions name and install them in parallel.
DEMO
result > ls cpanfile cpanfile.snapshot > cat cpanfile requires ‘Plack’;
> time carton install … real 0m33.857s > time cpan-installer … real 0m13.344s #### 33sec => 13sec! ####
conclusion • cpanm is nice • we can use it
as a module • If we install cpan modules in parallel, then we see speed improvement! • I propose that cpan module dependencies must be statically determined.