Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Numpy, the Python foundation for number crunching
Search
Data Science London
November 12, 2012
Technology
1
5k
Numpy, the Python foundation for number crunching
Talk by Didrik Pinte, MD at Enthought at Data Science London meetup 18/10/12
Data Science London
November 12, 2012
Tweet
Share
More Decks by Data Science London
See All by Data Science London
Semi-Supervised Anomaly Detection
datasciencelondon
0
1k
Hacking the Rail: Ingesting, analysing & visualising realtime streaming data
datasciencelondon
1
47k
Stateful Data-Parallel Processing
datasciencelondon
0
47k
Semantic web warmed up: Ontologies for the IoT
datasciencelondon
0
130
IoT data ingestion pipelines and Clojure transducers
datasciencelondon
0
280
TrendCalculus: A data science for trends
datasciencelondon
1
48k
Data Science in Mobile Health
datasciencelondon
1
8.3k
Large-scale Recommender Systems on Just a PC (with GraphChi)
datasciencelondon
1
17k
Taming Graph Dynamics at Scale
datasciencelondon
0
8.1k
Other Decks in Technology
See All in Technology
useEffectってなんで非推奨みたいなこと言われてるの?
maguroalternative
9
6k
20251127 BigQueryリモート関数で作る、お手軽AIバッチ実行環境
daimatz
0
410
Docker, Infraestructuras seguras y Hardening
josejuansanchez
0
130
TypeScript×CASLでつくるSaaSの認可 / Authz with CASL
saka2jp
2
170
Design System Documentation Tooling 2025
takanorip
1
850
Dify on AWS の選択肢
ysekiy
0
120
Google Stitch 大型アップデートが実現するアイデアとコードの完全なる融合
nekoailab
0
100
翻訳・対話・越境で強いチームワークを作ろう! / Building Strong Teamwork through Interpretation, Dialogue, and Border-Crossing
ar_tama
4
1.1k
進化の早すぎる生成 AI と向き合う
satohjohn
0
470
生成AIシステムとAIエージェントに関する性能や安全性の評価
shibuiwilliam
2
300
Databricksによるエージェント構築
taka_aki
1
100
原理から解き明かす AIと人間の成長 - Progate BAR
teba_eleven
2
280
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Writing Fast Ruby
sferik
630
62k
GraphQLとの向き合い方2022年版
quramy
49
14k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
The Language of Interfaces
destraynor
162
25k
Site-Speed That Sticks
csswizardry
13
980
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Why Our Code Smells
bkeepers
PRO
340
57k
Transcript
Numpy, the Python foundation for number crunching Didrik Pinte, Enthought
London Data Science meetup Monday 22 October 2012
Number crunching? •High-level api •Interactivity & visualization •Performance •Low-level access
Monday 22 October 2012
Evidence ? PyCuda PyTrilinos Joblib petsc4py PyAlgoTrade numpy-boost Clyther PyOpenGL
Monday 22 October 2012
Evidence ? PyCuda PyTrilinos Joblib petsc4py PyAlgoTrade numpy-boost Clyther PyOpenGL
Monday 22 October 2012
Why then? •The API ... •Simple but powerful memory model
•Open access to the data Monday 22 October 2012
Array data structure Monday 22 October 2012
Let’s look at the code! •Examples: – API / interactivity
– memory management with stride_tricks – pikos – extensions with talib –(joblib, memmap/multiprocessing, ipython //) Monday 22 October 2012
API / interactivity Monday 22 October 2012
Memory management 1 2 3 4 5 6 7 8
9 10 1 2 3 4 2 3 4 5 3 4 5 6 12 11 = 4 5 6 7 5 6 7 8 6 7 8 9 7 8 9 10 8 9 10 11 ... Monday 22 October 2012
Memory management 1 2 3 4 5 6 7 8
9 10 1 2 3 4 2 3 4 5 3 4 5 6 12 11 = Shape 12, Strides 8, Shape 9,4, Strides 8,8 4 5 6 7 5 6 7 8 6 7 8 9 7 8 9 10 8 9 10 11 ... Monday 22 October 2012
Memory management - pikos Monday 22 October 2012
Memory management - chaco Monday 22 October 2012
Low level access %timeit talib.moving_average(adj_close, optInTimePeriod=5) 100000 loops, best of
3: 7.67 us per loop %timeit as_strided(adj_close, shape=(len(adj_close)-4, 5), strides=(8, 8)).mean (axis=1) 10000 loops, best of 3: 28.2 us per loop Monday 22 October 2012
Conclusion •It’s obvious, no? Monday 22 October 2012
Q & A ? Monday 22 October 2012