InfoQ Homepage Parallel Programming Content on InfoQ
-
Functional Programming for Array-Based Parallelism
Gabriele Keller overviews functional array-based high-performance computing, how to map such programs efficiently to parallel hardware, and discusses challenges and ongoing work.
-
Solving New School with the Old School (Clojure)
Jearvon Dharrie discusses Clojure, a language that's taking some older ideas and solving 21st-century problems, covering types, clojure.spec, parallelism and concurrency with core.async, and more.
-
Get Func-y: Understanding Delegates in .NET
Jeremy Clark discusses what delegates are, detailing Func and Action delegate types, and showing how to use them to make classes more flexible.
-
From Concurrent to Parallel
Brian Goetz explores the different goals, tools, and techniques involved between concurrency and parallelism approaches, and how to analyze a computation for potential parallelism.
-
Understanding Parallel Stream Performance in Java SE 8
Brian Goetz explores tools and techniques involved in parallelism, and how to analyze a computation for potential parallelism, with specific attention to the parallel stream library in Java 8.
-
Fast, Parallel, or Reliable: Pick 3, a Tour of Elixir
Jordan Day introduces the Elixir language, its syntax and the semantics of an Elixir application, highlighting differences that make Elixir apps more reliable than those written in other languages.
-
Scaling Distributed Systems
Natalia Chechina outlines features of actor and functional programming models, and the reason these models attract so much interest in parallel, concurrent, and scaling world.
-
Exercises in Programming Style
Crista Lopes demos writing the same program using multiple styles, showcasing the richness of human computational thought and the need to avoid being stuck with one or two styles for life.
-
Atomic Counters or a Lesson on Performance and Hardware Concurrency
Detlef Vollmann explores the performance and scalability issues of atomic
and possible solutions to overcome them. -
Translating Imperative Code to MapReduce
The authors present an approach for automatic translation of sequential, imperative code into a parallel MapReduce framework using Mold, translating Java code to run on Apache Spark.
-
Cybertron: Pushing the Limit on I/O Reduction in Data-Parallel Programs
The authors introduce Cybertron, a new tool for reducing I/O operations in data-parallel programs through a constraint-based encoding.
-
Comfortable Concurrency
Dominic Robinson reflects on several concurrency models, trying to assess which is more pleasant to work with.