C++ Under the Sea

BREEPARK Breda
Netherlands
10 October 2024
   Workshops
11 October 2024
   Main conference

Schedule

Here are the schedule for Thursday and Friday! Please note each date requires its own separate ticket.

10 OCTOBER – WORKSHOPS

Thursday

9:00 – 10:00

Reception

11:30 – 11:45

Break

13:15 – 14:00

Lunch (provided)

15:15 – 15:30

Break

16:45 – 17:00

Break

18:00

End

11 OCTOBER – MAIN CONFERENCE

Friday

8:00 – 9:30

Reception

12:00 – 13:00

Lunch (provided)

15:00 – 15:30

Break

17:30

End

17:30 – 18:30

Drinks
(sponsored by IMC)

Lunch and refreshments will be provided on both days. Closing drinks will be provided on Friday.

C++ Under the Sea is a new conference in the Netherlands, featuring speakers across industries who share insights and wonders about C++. Located in beautiful Breda, C++ Under the Sea is easily accessible by train from several countries, and with convenient airports as well.

The conference is an extension of the Dutch C++ meetup group, which has enjoyed regular meetings at high-profile venues across the Netherlands since 2013, with nearly 1,700 members.


Speakers

The Dutch C++ Meetup group has enjoyed many high-profile speakers from around the world since its inception years ago. These have included members of the ISO C++ committee, well-known C++ trainers, and many industry professionals working in northwest Europe.

Research Scientist at NVIDIA
Co-host ADSP: The Podcast


Fusing algorithms across languages and accelerating code on the CPU and GPU. This talk will discuss C++ Ranges, Rust Iterators, Swift Lazy Sequences, Python Itertools and more. Different GPU techniques will include CUDA Thrust with nvcc, C++ stdpar with nvc++, CuPy, and more. Finally, the results of profiling these approaches will be shown.

Software Engineer at IMC Trading

Logging is one of the backbones of an application. In the multi-threaded low-latency world, it’s crucial to have efficient low-overhead logging. This talk is a deep dive into designing this framework, including the small details that matter for performance.

Principal Architect at NVIDIA
Co-host ADSP: The Podcast

At the heart of the C++ programming language is the multi-threaded abstract machine and its execution model, the platform-agnostic formal model that generically describes how to run a C++ program. In this talk, you will learn the rules that govern how your C++ code is executed and see how those rules impact the C++ code you write every day. 

Senior developer at Net Insight


Experience has shown that when working with data in bulk, or when the data sets are small, structs of vectors is the way to go for performance. Working with structs of vectors can be cumbersome, however. Let’s have a look at what can be done with the recent additions to the C++ language and standard library. 

Software Engineer at Intel Corporation


Have you ever fancied delving into high-performance computing? Whether you’re a novice or a seasoned pro looking to unleash the full potential of your GPU, this session will equip you with the skills to get the most out of your GPU. This talk will begin by introducing high-performance computing and various GPU programming frameworks. It will then delve into GPU programming constructs and profiling GPU kernels to maximize performance and efficiency. To wrap it up, we’ll put the bits and pieces into practice by live coding a SYCL kernel. Topics discussed will include blocks, work items, work ranges, memory barriers and fences, parallel algorithms, GPU occupancy levels, copy times, and memory access patterns.

Staff Software Engineer at TomTom


Boost.Geometry is one of the most popular libraries within the Boost C++ Libraries. This presentation will provide an in-depth exploration of Boost.Geometry, highlighting its design principles centered around C++20 concepts, tag dispatching, and template meta programming using traits. We will illustrate Boost.Geometry’s distance algorithm both from a user perspective and from the C++ design perspective, and how one function call can work for different types and coordinate systems. Additionally, a brief live example will be demonstrated. From this hands-on introduction of Boost.Geometry, participants will gain valuable insights into the application of concepts and traits in a real-world, large-scale library, empowering them to apply this knowledge in their own C++ development projects.

Consultant and Trainer

Lifetime management in C++ offers flexibility and power, but it comes with significant complexity, especially as the language has evolved. The Rules of 0 and 5 are essential for managing this complexity. Ideally, your types should require no Special Member Functions (like destructors, copy/move constructors, or assignment operators). However, if you do need one, you’ll likely need all five, and knowing how to implement them correctly can be challenging. Understanding the type you’re working with is crucial, so we’ll break down the common categories. Come with us on a journey through these rules, type categories and behaviours and learn to make sense of lifetime management in modern C++.

Principal Engineer Software at ST Engineering iDirect

Before C++20 we had to write six comparison operators for our user defined types (or even more). For sure, a tedious task. All this gets simplified with the introduction of the spaceship operator. What happens to your code when you turn on -std=c++20 — even before we go near the spaceship operator, did your build break? Why does that happen? We will first investigate another new feature of C++20, the rewriting rules, and how that impacts your code base. Then we will dissect the spaceship operator, both how it is used and its implementation. What are comparison categories and why are these important with respect to the spaceship operator? All will be answered. What initially looked so simple does require some extra thought to correctly use the tool. We will discuss its traps and some of the less trivial considerations of this new operator.


Workshops

On October 10, three pre-conference workshops will offer hands-on training in various topics such as C++ Concepts, compile-time resources, and coroutines.

These all-day, specialized workshops will be conducted by instructors Mateusz Peuz, Phil Nash, and Jason Turner, providing in-depth instruction on utilizing these language features.

Please note that these workshops require separate tickets from the main conference. You have the option to attend either or both days. Lunch and refreshments are included, and don’t forget to bring your laptop!


Location

Breepark is a new and modern conference facility in Breda, the Netherlands. Easily accessible by public transit from downtown Breda and by train from surrounding countries.

More info on travel directions and discover the highlights of Breda here.


Sponsors

These are the companies that make everything possible.

Video Sponsor

Community


Getting to Breepark, Breda

Breepark is located directly on the A27 and therefore accessible by car. Plus, there are more than 2,000 free parking spaces!

If you are planning your journey from abroad, you can book your international journey to Breda with NS International train.

By car you can reach Breepark from the center of Breda in about fifteen minutes. By bike it is about twenty minutes ride from the center of Breda to Breepark.  Uber is also an option.

On this page you will find the map of Breepark.

Check out the official website of the Municipality of Breda to know how to get around in Breda, discover places to visit and tips on where to stay.

Bus 130

It is super easy to reach the venue by bus from Central Station in Breda.

Here are the available bus times from Breda Central Station to Breepark that will get you there in time for the reception. Note that these times are for bus 130. After these listed times, the bus runs only once per hour, so please plan accordingly. More info: bus 130.

Be Our Guest!

Receive a 10% discount on your reservation at Golden Tulip Hotel Keyser in Breda. Apply the voucher code CPP2024 during the booking process. This offer is valid for stays between October 9th, 2024, and October 13th, 2024.

To avail of the discount, please ensure that you input the promotional code “CPP2024” during the booking process. This offer applies to reservations made with or without breakfast included.

Kindly note that this discount is exclusively applicable for direct bookings made through www.hotel-keyser.nl and does not extend to bookings made via external booking channels.