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
970
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
3.9k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
250
Perl Quiz
skaji
0
150
cpm at PerlCon 2019
skaji
0
120
Perl5 Package Manager
skaji
0
740
Internal of cpm
skaji
0
630
How to execute external programs in Perl
skaji
3
680
Writing Perl with w0rp/ale
skaji
0
2.3k
Other Decks in Technology
See All in Technology
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
860
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
1
240
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
21
11k
DDD集約とサービスコンテキスト境界との関係性
pandayumi
3
280
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.3k
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
260
【NoMapsTECH 2025】AI Edge Computing Workshop
akit37
0
190
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
110
エラーとアクセシビリティ
schktjm
1
1.3k
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
130
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
120
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
200
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Code Review Best Practice
trishagee
70
19k
How STYLIGHT went responsive
nonsquared
100
5.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Become a Pro
speakerdeck
PRO
29
5.5k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Bash Introduction
62gerente
615
210k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
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.