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.1k
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
Perl Quiz
skaji
0
100
cpm at PerlCon 2019
skaji
0
110
Perl5 Package Manager
skaji
0
590
Internal of cpm
skaji
0
500
How to execute external programs in Perl
skaji
3
510
Writing Perl with w0rp/ale
skaji
0
2.1k
nginx unit
skaji
0
36
Perl6 ecosystem
skaji
1
1.3k
App::RemoteCommand 2018
skaji
0
17
Other Decks in Technology
See All in Technology
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
JSON攻略法.pdf
miyakemito
8
4.9k
日本におけるデータエンジニアリングのこれまでとこれから
foursue
16
4.2k
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
200
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
260
web-application-security
matsuihidetoshi
0
150
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
160
非同期推論システムによるコスト削減と信頼性向上
koki_nishihara
0
210
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
160
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
290
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
220
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
300
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
68
8.6k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Building an army of robots
kneath
300
41k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
78
42k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
14
1.6k
Facilitating Awesome Meetings
lara
42
5.6k
Typedesign – Prime Four
hannesfritz
36
2.1k
Statistics for Hackers
jakevdp
789
220k
It's Worth the Effort
3n
180
27k
Being A Developer After 40
akosma
57
580k
Happy Clients
brianwarren
92
6.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
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.