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
960
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
3.9k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
240
Perl Quiz
skaji
0
150
cpm at PerlCon 2019
skaji
0
120
Perl5 Package Manager
skaji
0
730
Internal of cpm
skaji
0
620
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
夏休みWebアプリパフォーマンス相談室/web-app-performance-on-radio
hachi_eiji
0
160
ロールが細分化された組織でSREと協働するインフラエンジニアは何をするか? / SRE Lounge #18
kossykinto
0
220
JAWS AI/ML #30 AI コーディング IDE "Kiro" を触ってみよう
inariku
3
370
Serverless Meetup #21
yoshidashingo
1
120
2時間で300+テーブルをデータ基盤に連携するためのAI活用 / FukuokaDataEngineer
sansan_randd
0
150
Kiroでインフラ要件定義~テスト を実施してみた
nagisa53
3
360
薬屋のひとりごとにみるトラブルシューティング
tomokusaba
0
330
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
3
700
「AIと一緒にやる」が当たり前になるまでの奮闘記
kakehashi
PRO
3
150
【新卒研修資料】数理最適化 / Mathematical Optimization
brainpadpr
27
13k
Amazon S3 Vectorsは大規模ベクトル検索を低コスト化するサーバーレスなベクトルデータベースだ #jawsugsaga / S3 Vectors As A Serverless Vector Database
quiver
1
510
ZOZOTOWNの大規模マーケティングメール配信を支えるアーキテクチャ
zozotech
PRO
0
330
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Being A Developer After 40
akosma
90
590k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
A Tale of Four Properties
chriscoyier
160
23k
Making Projects Easy
brettharned
117
6.3k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
The Cult of Friendly URLs
andyhume
79
6.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.