1/ As someone who enjoys, thinks constantly about, and almost romanticizes tool building, I really liked this article by @mZargham and @gablerjonathan. It talks about something that's been bothering me for a while and I agree with: there's a tooling gap.https://medium.com/block-science/cadcad-filling-a-critical-gap-in-open-source-data-science-fcd0d3faa8ed …
-
Show this thread
-
2/ I wrote my dissertation's ABM in Cythonized Python. But, it was a bit weird in that, the agents weren't implemented via a classical object-oriented way. Instead, I used numpy arrays with agent IDs.
2 replies 0 retweets 1 likeShow this thread -
Replying to @generativist
I’m still thinking about a lot of what you’re saying here, but first: this isn’t weird in HPC/sims. Structure of Array is much better for most data locality irl. We used to enjoy challenging the OO folks to implement and benchmark
https://en.m.wikipedia.org/wiki/AOS_and_SOA …2 replies 0 retweets 1 like -
Replying to @lwwch @generativist
Also if you’ve ever needed to write SIMD by hand, you’ll never want to use an array of objects/structures. It’s something like 10x less code and effort as SoA
1 reply 0 retweets 1 like -
Replying to @lwwch
I think it made it more performant in and of itself. And in terms of productivity, most of my analysis was on already accessible ndarrays — which is pretty sweet.
1 reply 0 retweets 1 like -
Replying to @generativist
Yeah even with cython doing the heavy lifting, it still can’t touch most blas implementations that numpy uses if you stick to the tensor ops. Disclaimer: I have a serious crush on numpy.
1 reply 0 retweets 1 like
Me too. I feel lost without it ;)
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.