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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Shoichi Kaji
June 24, 2015
Technology
1.3k
0
Share
speed of cpan module installation
Gotanda.pm #5 2015/06/24
Shoichi Kaji
June 24, 2015
More Decks by Shoichi Kaji
See All by Shoichi Kaji
go-exhaustruct linterのすすめ
skaji
0
120
Parallel::Pipesの紹介
skaji
2
1.1k
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
4.2k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
300
Perl Quiz
skaji
0
170
cpm at PerlCon 2019
skaji
0
150
Perl5 Package Manager
skaji
0
790
Internal of cpm
skaji
0
650
How to execute external programs in Perl
skaji
3
740
Other Decks in Technology
See All in Technology
LLM時代のリファクタリング戦略_AIエージェントによる段階的・安全なTS移行方法
play_inc
0
180
Kaggle未経験社員をメダリストに育てる「AIドラゴン桜」
lycorptech_jp
PRO
0
560
TypeScriptとAngular Signal で実現する保守性の高いアプリケーション設計 - 3層アーキテクチャによる責務分離の実践(たつかわ) https://2026.tskaigi.org/talks/10
nealle
1
340
『家族アルバム みてね』における インシデント対応との向き合い方 / Approach incident response in Family Album
kohbis
2
180
[みん強]AIの価値を最大化するデータ基盤戦略:Self-Service型Data Meshへの転換とAgentic AI Meshに向けた取り組み with Snowflake他
y_matsubara
1
180
はじめてのAI-DLC
yoshidashingo
2
530
Harnessing the Power of Mocks and Stubs in PHPUnit / #laravellivejp
asumikam
0
560
DI コンテナ自動生成ツールを実装してみた / intro-autodi
uhzz
0
870
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
320
RubyでRuby拡張を書いたらRubyより35倍速になったってどういうこと??
kazuho
3
610
TSKaigi 2026 - enumよ、さようなら
teamlab
PRO
3
540
まだ道半ば、AI-DLCを歩み始めている話
news_it_enj
2
180
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
190
Leo the Paperboy
mayatellez
7
1.8k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
190
Balancing Empowerment & Direction
lara
6
1.1k
Building Applications with DynamoDB
mza
96
7k
Six Lessons from altMBA
skipperchong
29
4.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
230
Marketing to machines
jonoalderson
1
5.3k
Speed Design
sergeychernyshev
33
1.7k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
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.