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
SPVMでPerlのforループを100倍高速化する
Search
Yuki Kimoto
July 21, 2020
Programming
1
1.1k
SPVMでPerlのforループを100倍高速化する
SPVMという静的型プログラムミング言語を使ってPerlのforループを100倍高速化する方法を解説。
Yuki Kimoto
July 21, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
CDK引数設計道場100本ノック
badmintoncryer
2
370
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
1
370
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
1
780
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
120
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
600
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
270
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
330
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
250
テスト駆動Kaggle
isax1015
1
510
生成AI時代のコンポーネントライブラリの作り方
touyou
1
260
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
450
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
250
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Optimizing for Happiness
mojombo
379
70k
Designing Experiences People Love
moore
142
24k
Six Lessons from altMBA
skipperchong
28
3.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Embracing the Ebb and Flow
colly
86
4.7k
A designer walks into a library…
pauljervisheath
207
24k
Code Review Best Practice
trishagee
69
19k
Transcript
SPVMでPerlのforループを 100倍速くする 吉祥寺.pm 2020年7月21日 木本裕紀
自己紹介 •Perlゼミ •Perlプログラミングちゃんねる – YouTube •プログラミング言語開発
Ubuntuサーバー構築入門 – Perlゼミ講座
Perlプログラミングちゃんねる - YouTube
SPVM - プログラミング言語開発
SPVMの目的 • Perlの数値計算と配列演算を高速化する • XSを書かなくてもC/C++/cudaをバインディング
SPVMのソースコード これはPerl? いえ、SPVM。 SPVM Language Specificationで検索。
Perlからの呼び出し SPVMのサブルーチンは、Perlのメ ソッドとして呼び出せる SPVM Exchange API
SPVMの高速化 – プリコンパイル C言語のソースコードに 変換され機械語にコンパ りう
C言語バインディング ネイティブ呼び出し
C言語ソースコード C言語呼び出し バインディングも可能
和を求めるforループのベンチマーク結果 100倍速くなった!
バインディングを試したライブラリ • zlib - 圧縮ライブラリ C言語 • GSL – GNU科学技術計算ライブラリ
C言語 • Eigen 行列演算ライブラリ C++ • OpenMP - CPU並列計算ライブラリ • cuda – NVIDIA GPGPU並列計算用のコンパイラ
SPVM 1.0は、8月末リリース目標
ご清聴、ありがとうございました。