TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

A quick introduction to data parallelism in Julia

160 pointsby amkkmaover 4 years ago

4 comments

tkfover 4 years ago
Hi, the author here.<p>One of the hidden messages of the introduction is: watch Guy Steele&#x27;s talks [1][2][3] if you are interested in data parallelism! These talks are not Julia-specific and the idea is applicable and very useful in any languages. My libraries are heavily inspired by these talks.<p>Of course, if you haven&#x27;t used Julia yet, it&#x27;d be great if (data) parallelism gives you an excuse to try it out! It has a fantastic foundation for composable multi-threaded parallelism [4].<p>[1] How to Think about Parallel Programming: Not! <a href="https:&#x2F;&#x2F;www.infoq.com&#x2F;presentations&#x2F;Thinking-Parallel-Programming&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.infoq.com&#x2F;presentations&#x2F;Thinking-Parallel-Progra...</a><p>[2] Four Solutions to a Trivial Problem <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=ftcIcn8AmSY" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=ftcIcn8AmSY</a><p>[3] Organizing Functional Code for Parallel Execution; or, foldl and foldr Considered Slightly Harmful <a href="https:&#x2F;&#x2F;vimeo.com&#x2F;6624203" rel="nofollow">https:&#x2F;&#x2F;vimeo.com&#x2F;6624203</a><p>[4] Announcing composable multi-threaded parallelism in Julia <a href="https:&#x2F;&#x2F;julialang.org&#x2F;blog&#x2F;2019&#x2F;07&#x2F;multithreading&#x2F;" rel="nofollow">https:&#x2F;&#x2F;julialang.org&#x2F;blog&#x2F;2019&#x2F;07&#x2F;multithreading&#x2F;</a>
评论 #24702543 未加载
评论 #24705417 未加载
eigenspaceover 4 years ago
Takafumi has really built up some amazing infrastructure in the package ecosystem. His Transducers.jl [1] is really interesting and powerful and lately he&#x27;s done a lot of work with things like FLoops.jl [2] and ThreadsX.jl [3] to try and bring the benefits of transducers to more &#x27;regular&#x27; familiar representations so more people can enjoy the benefits. The basic idea behind all of it is that he has an efficient and modular way of describing various &#x27;looping&#x27; constructs that can be stuck together, optimized and parallelized automatically.<p>It&#x27;d be quite interesting to see this stuff extended to GPUs.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;JuliaFolds&#x2F;Transducers.jl" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;JuliaFolds&#x2F;Transducers.jl</a><p>[2] <a href="https:&#x2F;&#x2F;github.com&#x2F;JuliaFolds&#x2F;FLoops.jl" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;JuliaFolds&#x2F;FLoops.jl</a><p>[3] <a href="https:&#x2F;&#x2F;github.com&#x2F;tkf&#x2F;ThreadsX.jl" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tkf&#x2F;ThreadsX.jl</a>
评论 #24700934 未加载
评论 #24700742 未加载
mellingover 4 years ago
There&#x27;s a current MIT course call Introduction to Computational Thinking that&#x27;s using Julia. I&#x27;ve watch a handful of videos so far. Good introduction to Julia.<p><a href="https:&#x2F;&#x2F;computationalthinking.mit.edu&#x2F;Fall20&#x2F;" rel="nofollow">https:&#x2F;&#x2F;computationalthinking.mit.edu&#x2F;Fall20&#x2F;</a>
评论 #24701242 未加载
blackbear_over 4 years ago
Data parallelism is one of Python&#x27;s most embarrassing shortcomings which is unlikely to be solved anytime soon.<p>This could be a big reason to switch!