Learn · CERN

Talk1 h 35 min

Concurrency at work with Go

Francesc Campoy · CERN

Watch At CERN

About

High Energy and Nuclear Physics (HENP) libraries are now required to be increasingly multi-thread-safe, if not multi-thread-friendly and multi-threaded. This is usually done using the new constructs and library components offered by the C++11 and C++14 standards. These components are however quite low-level (threads, mutexes, locks, ...) and hard to use and compose, or easy to misuse.

However, Go -- a somewhat new language -- provides a set of better building blocks for tackling concurrency: goroutines and channels. This language is now used by the cloud industry at large; docker/moby, rkt, Kubernetes, OpenShift, etc... are obvious flagships for Go. It is also used in other interesting places like SpaceX's telemetry monitoring system and in the New York Times', YouTube's or Disney's content delivery infrastructures.

In this talk, we will describe the building blocks of Go and see how they are combined to easily create concurrent programs that grow with grace, are fast to compile and deploy, but also easy to reason about (and debug).

We will conclude by demonstrating Go's concurrency principles by using Mandelbrot sets as an example of CPU-heavy task, showing how the language can help make our programs faster.

About the speaker

Francesc Campoy is currently VP of Developer Relations at source{d}, and worked previously as Senior Developer Advocate at Google. He is a software engineer with extensive experience on C++ developing, and specially interested on software architecture and design.

Specialties: Design patterns, software design (UML, RUP) and architecture, advanced C++ (stl, templates, debugging, profiling). Heterogeneous education background (AI, computer graphics, algebra and mathematics). .

0:00:00 Slide 1

0:01:20 Slide 2

0:04:37 Slide 3

0:04:58 Slide 4

0:05:10 Slide 5

The talk

  1. Concurrency at work with Go 2017-11-09 · 1 h 35 min · CERN's player

Credits and licence

Institution
CERN
Department
CERN Computing Seminar
Speaker
Francesc Campoy
Year
2017
Language
English
Subjects
Computer science
Source
CERN
Licence
CERN, as CERN states it. CERN's terms
Attribution
© CERN. CERN provides its audiovisual media free of charge for educational and informational use, credited to CERN; this lecture is shown in CERN's own player.
Who can watch
CERN gives no rating. Invisible Network shows it to Tweens profiles and older, judged from what the source says about it. How courses are placed