<!DOCTYPE html>
<!-- BaNnErBlUrFlE-BoDy-start -->
<!-- Preheader Text : BEGIN -->
<div style="display:none !important;display:none;visibility:hidden;mso-hide:all;font-size:1px;color:#ffffff;line-height:1px;height:0px;max-height:0px;opacity:0;overflow:hidden;">
Dear all, In this week’s languages working group meeting John Biddiscombe (CSCS) will join us to talk about "MPI and std: : execution (the c++ 26 async API)". The meeting will take place on Thursday, Oct 9, at 10am US central time. Meeting details</div>
<!-- Preheader Text : END -->

<!-- Email Banner : BEGIN -->
<div style="display:none !important;display:none;visibility:hidden;mso-hide:all;font-size:1px;color:#ffffff;line-height:1px;max-height:0px;opacity:0;overflow:hidden;">ZjQcmQRYFpfptBannerStart</div>

<!--[if ((ie)|(mso))]>
  <table border="0" cellspacing="0" cellpadding="0" width="100%" style="padding: 16px 0px 16px 0px; direction: ltr" ><tr><td>
    <table border="0" cellspacing="0" cellpadding="0" style="padding: 0px 10px 5px 6px; width: 100%; border-radius:4px; border-top:4px solid #90a4ae;background-color:#D0D8DC;"><tr><td valign="top">
      <table align="left" border="0" cellspacing="0" cellpadding="0" style="padding: 4px 8px 4px 8px">
        <tr><td style="color:#000000; font-family: 'Arial', sans-serif; font-weight:bold; font-size:14px; direction: ltr">
          This Message Is From an External Sender
        </td></tr>
        <tr><td style="color:#000000; font-weight:normal; font-family: 'Arial', sans-serif; font-size:12px; direction: ltr">
          This message came from outside your organization.
        </td></tr>

      </table>

    </td></tr></table>
  </td></tr></table>
<![endif]-->

<![if !((ie)|(mso))]>
  <div dir="ltr"  id="pfptBannerbevnzeo" style="all: revert !important; display:block !important; text-align: left !important; margin:16px 0px 16px 0px !important; padding:8px 16px 8px 16px !important; border-radius: 4px !important; min-width: 200px !important; background-color: #D0D8DC !important; background-color: #D0D8DC; border-top: 4px solid #90a4ae !important; border-top: 4px solid #90a4ae;">
    <div id="pfptBannerbevnzeo" style="all: unset !important; float:left !important; display:block !important; margin: 0px 0px 1px 0px !important; max-width: 600px !important;">
      <div id="pfptBannerbevnzeo" style="all: unset !important; display:block !important; visibility: visible !important; background-color: #D0D8DC !important; color:#000000 !important; color:#000000; font-family: 'Arial', sans-serif !important; font-family: 'Arial', sans-serif; font-weight:bold !important; font-weight:bold; font-size:14px !important; line-height:18px !important; line-height:18px">
        This Message Is From an External Sender
      </div>
      <div id="pfptBannerbevnzeo" style="all: unset !important; display:block !important; visibility: visible !important; background-color: #D0D8DC !important; color:#000000 !important; color:#000000; font-weight:normal; font-family: 'Arial', sans-serif !important; font-family: 'Arial', sans-serif; font-size:12px !important; line-height:18px !important; line-height:18px; margin-top:2px !important;">
This message came from outside your organization.
      </div>

    </div>

    <div style="clear: both !important; display: block !important; visibility: hidden !important; line-height: 0 !important; font-size: 0.01px !important; height: 0px"> </div>
  </div>
<![endif]>

<div style="display:none !important;display:none;visibility:hidden;mso-hide:all;font-size:1px;color:#ffffff;line-height:1px;max-height:0px;opacity:0;overflow:hidden;">ZjQcmQRYFpfptBannerEnd</div>
<!-- Email Banner : END -->

<!-- BaNnErBlUrFlE-BoDy-end -->
<html>
<head><!-- BaNnErBlUrFlE-HeAdEr-start -->
<style>
  #pfptBannerbevnzeo { all: revert !important; display: block !important; 
    visibility: visible !important; opacity: 1 !important; 
    background-color: #D0D8DC !important; 
    max-width: none !important; max-height: none !important }
  .pfptPrimaryButtonbevnzeo:hover, .pfptPrimaryButtonbevnzeo:focus {
    background-color: #b4c1c7 !important; }
  .pfptPrimaryButtonbevnzeo:active {
    background-color: #90a4ae !important; }
</style>

<!-- BaNnErBlUrFlE-HeAdEr-end -->
<meta charset="utf-8"></head><body><pre style="font-family: sans-serif; font-size: 100%; white-space: pre-wrap; word-wrap: break-word">Dear all,

In this week’s languages working group meeting John Biddiscombe (CSCS) will join us to talk about "MPI and std::execution (the c++ 26 async API)". 
The meeting will take place on Thursday, Oct 9, at 10am US central time. Meeting details are as usual, and are now also available at <a href="https://urldefense.us/v3/__https://github.com/mpiwg-languages/languages-issues/wiki__;!!G_uCfscf7eWS!fPKOYoslF1Dy0kzrfZEcg5TuM8NddEyzUbg3C2l2RAGkb9-8ahCYifDof1JoxxitPZTNS36szYIR-Q_EYxggNSVSiGPsdgk$">https://urldefense.us/v3/__https://github.com/mpiwg-languages/languages-issues/wiki__;!!G_uCfscf7eWS!fPKOYoslF1Dy0kzrfZEcg5TuM8NddEyzUbg3C2l2RAGkb9-8ahCYifDof1JoxxitPZTNS36szYIR-Q_EYxggNSVSiGPsdgk$</a>. If you are unable to access the connection information, please send me your GitHub handle, so I can make you a member of the mpiwg-languages organisation. Also, feel free to invite interested colleagues.

Looking forward to an interesting talk and discussion!

Best,
Tim

Abstract:
C++ 26 introduces std::execution or 'Senders' which provides an API that allows one to attach continuations (which can be viewed as callbacks) to functions executed asynchronously. The user is free to compose chains of execution and spawn new work in response to triggered callbacks. The API provides an explicit mechanism to transfer work from one thread (or execution context) to another which makes it simple to coordinate work between a progress thread and worker threads. We have wrapped MPI_Requests in a simple template wrapper that allows async MPI functions to be used as senders with the polling and callback triggering hidden from the user to give a clean interface and we present our results of using this approach in a task based eigenvalue solver. We show some results of different versions of pipelines used in our continuations and how they affect the final timing of our miniapps. The API lends itself to a native C++ MPI interface and we can imagine it being provided by a future MPI implementation. 



--
Karlsruhe Institute of Technology (KIT)
Institute of Theoretical Informatics
Algorithm Engineering Group

Tim Niklas Uhl, M.Sc.
Doctoral Researcher, PhD Candidate

Am Fasanengarten 5, Room 221
Building 50.34
76131 Karlsruhe, Germany

Phone: +49 721 608-43564
Fax: +49 721 608-43088
E-mail: uhl@kit.edu
Web: <a href="https://urldefense.us/v3/__https://ae.iti.kit.edu/english/uhl.php__;!!G_uCfscf7eWS!fPKOYoslF1Dy0kzrfZEcg5TuM8NddEyzUbg3C2l2RAGkb9-8ahCYifDof1JoxxitPZTNS36szYIR-Q_EYxggNSVSuRKJxyw$">https://urldefense.us/v3/__https://ae.iti.kit.edu/english/uhl.php__;!!G_uCfscf7eWS!fPKOYoslF1Dy0kzrfZEcg5TuM8NddEyzUbg3C2l2RAGkb9-8ahCYifDof1JoxxitPZTNS36szYIR-Q_EYxggNSVSuRKJxyw$</a>

Registered Office:
Kaiserstraße 12, 76131 Karlsruhe, Germany

KIT – The Research University in the Helmholtz Association

</pre></body></html>