HPX V1.6.0 released -- STE||AR Group

The STE||AR Group has released V1.6.0 of HPX -- A C++ Standard library for parallelism and concurrency.

HPX V1.6.0 Released

The newest version of HPX (V1.6.0) is now available for download! This release continues the focus on C++20 conformance with multiple new algorithms adapted to be C++20 conformant and becoming customization point objects (CPOs). We have added experimental support for HIP, allowing existing CUDA features to now be compiled with hipcc and run on AMD GPUs as well. We have also continued improving the performance of the parallel executors, and added an experimental fork-join executor. The full list of improvements, fixes, and breaking changes can be found in the release notes.

    HPX is a general purpose parallel C++ runtime system for applications of any scale. It implements all of the related facilities as defined by the C++ Standard. As of this writing, HPX provides the only widely available open-source implementation of the new C++17 parallel algorithms. Additionally, HPX implements functionalities proposed as part of the ongoing C++ standardization process, such as large parts of the features related parallelism and concurrency as specified by the upcoming C++20 Standard, the C++ Concurrency TS, Parallelism TS V2, data-parallel algorithms, executors, and many more. It also extends the existing C++ Standard APIs to the distributed case (e.g. compute clusters) and for heterogeneous systems (e.g. GPUs).

    HPX seamlessly enables a new Asynchronous C++ Standard Programming Model that tends to improve the parallel efficiency of our applications and helps reducing complexities usually associated with parallelism and concurrency.

 

Looking for C++ Employers for the online C++ Job fair on March 16th

Meeting C++ organizes the 2nd online C++ job fair on March 16th!

Looking for C++ Employers for March 16th

by Jens Weller

From the article:

Meeting C++ organizes the 2nd online C++ Job fair on March 16th!

The first online job fair in October 2020 was a big success, and now with the world coming back from the pandemic, I'd like to continue organizing these events online. This time the event will take place in wonder.me, a platform where users can freely roam around on a virtual map and engage in conversations by joining a circle. Join the Meeting C++ online User Group for further updates on the event.

The virtual job fair where you can attend and talk to different employers or job searchers is planned for March 16th. For Tuesday afternoon from 15-18:00 (CET) you'll be able to join the event and talk to employers and other job searchers. Each employer that registers will have its own named area. Employers need to sign up until March 10th.

Overload 161 is now available

ACCU’s Overload journal of February 2021 is out. It contains the following C++ related articles.

Overload 161 is now available

From the journal:

In. Sub. Ordinate.
By Frances Buontempo
Mindless rebellion is mindless. Frances Buontempo encourages mindful consideration of when to refuse.

A Case Against Blind Use of C++ Parallel Algorithms
By Lucian Radu Teodorescu
C++17 introduced parallel algorithms. Lucian Radu Teodorescu reminds us we need to think when we use them.

C++ – an Invisible Foundation of Everything
By Bjarne Stroustrup
What is C++ and why do people still use it? Bjarne Stroustrup provides a short note answering these questions.

Test Precisely and Concretely
By Kevlin Henney
Tests can hit complete coverage but fail to communicate. Kevlin Henney reminds us that assertions should be necessary, sufficient, and comprehensible.

Afterwood
By Chris Oldwood
Think you’ve learnt it all? Chris Oldwood reminds us that unlearning then becomes our next problem.

Book “Beginning C++20”--Marc Gregoire

Another book.

Book “Beginning C++20”

by Marc Gregoire

From the article:

My friend Peter Van Weert finished a new edition of “Beginning C++20” for which I was technical editor. It’s a great book to learn C++20 for programmers new to C++ and those who may be looking for a refresh primer on C++ in general...

GotW #99 Solution: Postconditions -- Herb Sutter

Solution just posted:

GotW #99 Solution: Postconditions

by Herb Sutter

From the article:

Postconditions are directly related to assertions (see GotW #97)... but how, exactly? And since we can already write postconditions using assertions, why would having language support benefit us more for writing postconditions more than for writing (ordinary) assertions?

How std::any Works--Jonathan Boccara

Lambda magic.

How std::any Works

by Jonathan Boccara

From the article:

In the previous post we’ve seen a very nice technique to use value semantics with inheritance and virtual methods, which was made possible by std::any.

Given its usefulness, it would be interesting to better understand std::any. Indeed, std::any is sometimes said to be “the modern void*“. But it does much more than a void*...

12 Different Ways to Filter Containers in Modern C++--Bartlomiej Filipek

Many ways.

12 Different Ways to Filter Containers in Modern C++

by Bartlomiej Filipek

From the article:

Do you know how many ways we can implement a filter function in C++?

While the problem is relatively easy to understand - take a container, copy elements that match a predicate and the return a new container - it’s good to exercise with the Standard Library and check a few ideas. We can also apply some Modern C++ techniques.

Let’s start!

ACCU 2021 Accepting Volunteer Applications

ACCU 2021 will be held online March, 10-13.

ACCU 2021 Accepting Volunteer Applications

by ACCU

From the announcement

It is our pleasure to announce the 1st year of the ACCU Conference Volunteer program! We are inviting students and young coders with an interest in C++ and software development to attend the March 10-13, 2021 online conference as Volunteers.

The Volunteer program is an excellent way for students and young coders with an interest in C++ and the development process in general to learn about language and make lasting connections with the community.

Volunteers will receive free registration.

Volunteers will handle various tasks during the conference, such as assisting at the online-help desk, in the -lobby, or in the -exhibitor hall.

Students from all fields of study are welcome to apply.

Please note that the deadline is the 16th of February