C++ Logo

SG14

Advanced search

Subject: Re: Apr 8th Sg14 monthly call agenda
From: Michael Wong (fraggamuffin_at_[hidden])
Date: 2020-04-09 08:52:40


HI all, thanks I will update the minutes just before mailing it in.

Here is a Google spreadsheet that is open to sign up to the github for
joinigng the Low cost deterministic C++ exception for Embedded
implementation:

https://docs.google.com/spreadsheets/d/106_uuEy1mxVaBACgJ-cSegcTFTZfTZnjwvKNfmHBH5Y/edit#gid=0

I have added the names entered here, and the names that registered during
the Prague SG14 meeting, though I don't have your github names of the
following folks. So please enter it in the spreadsheet. Thanks.
Inbal Levi

Sebastien Buttner
Kristof Beyls
Odin Holmes
James Berrow
Oliver Kowalke
James Renwick

On Thu, Apr 9, 2020 at 9:39 AM Ben Craig via SG14 <sg14_at_[hidden]>
wrote:

> Github user ben-craig. Sign me up
>
>
>
> *From:* SG14 <sg14-bounces_at_[hidden]> *On Behalf Of *Paul M.
> Bendixen via SG14
> *Sent:* Thursday, April 9, 2020 4:55 AM
> *To:* sg14_at_[hidden]
> *Cc:* Paul M. Bendixen <paulbendixen_at_[hidden]>
> *Subject:* [EXTERNAL] Re: [SG14] Apr 8th Sg14 monthly call agenda
>
>
>
> Minor nit:
>
> My name is BendiXen, but maybe you used all the xs for variables ;-)
>
>
>
> My comment regarding cassert was to say that having different rules for
> embedded and the rest of C++ was a hindrance to adoption ( e.g. using
> libraries)
>
>
>
> Best
>
> Paul Bendixen
>
>
>
> tor. 9. apr. 2020 11.04 skrev Guy Cpp via SG14 <sg14_at_[hidden]>:
>
> Please add me to the attendee list; I turned up a little late.
>
>
> Cheers,
> G
>
>
>
> On Wed, 8 Apr 2020 at 21:00, Michael Wong via SG14 <sg14_at_[hidden]>
> wrote:
>
>
>
>
>
> On Wed, Apr 8, 2020 at 11:55 AM Michael Wong <fraggamuffin_at_[hidden]>
> wrote:
>
> Topic: SG14 Low Latency Monthly. Hi all, I have turned on high security
> for this call in light of recent events.
>
> Hi,
>
> Michael Wong is inviting you to a scheduled Zoom meeting.
>
> Topic: SG14 monthly Apr 2020-Oct 2020
> Time: Apr 8, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: May 13, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: June 10, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Jul 8, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Aug 12, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Sep 9, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Oct 14, 2020 02:00 PM Eastern Time (US and Canada)
>
> Join from PC, Mac, Linux, iOS or Android:
> https://iso.zoom.us/j/819108882?pwd=L0pPZm5QRWlTYXdJditvU1JLdjFYUT09
> <https://urldefense.com/v3/__https:/iso.zoom.us/j/819108882?pwd=L0pPZm5QRWlTYXdJditvU1JLdjFYUT09__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19WncSWZS$>
> Password: 013549
>
> Or iPhone one-tap :
> US: +13462487799,,819108882# or +14086380968,,819108882#
> Or Telephone:
> Dial(for higher quality, dial a number based on your current
> location):
> US: +1 346 248 7799 or +1 408 638 0968 or +1 646 876 9923 or +1
> 669 900 6833 or +1 253 215 8782 or +1 301 715 8592 or +1 312 626 6799
> or 877 853 5247 (Toll Free)
> Meeting ID: 819 108 882
> Password: 013549
> International numbers available: https://iso.zoom.us/u/abhaIjFKLZ
> <https://urldefense.com/v3/__https:/iso.zoom.us/u/abhaIjFKLZ__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19a085pg4$>
>
> Or Skype for Business (Lync):
> https://iso.zoom.us/skype/819108882
> <https://urldefense.com/v3/__https:/iso.zoom.us/skype/819108882__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19c_Sf0lz$>
>
>
>
> Agenda:
>
> 1. Opening and introductions
>
> 1.1 Roll call of participants
>
> Derek Haines
>
> Henry Miller
>
> James renwick
>
> Andrews Weis
>
> Antony Peacock
>
> ben Craig, Ben Saks
>
> BillyBaker
>
> Connor Horman
>
> Max Gardner
>
> Patrice Roy
>
> Paul Bendien
>
> Sophia Poirier
>
> Staffan Tjernstrom
>
> Steven Varga
>
> Jens Maurer
>
> Inbal Levi
>
> Michael Wong
>
> Dan Raviv?
>
> Charles Bay
>
> Matthew Butler
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> 1.2 Adopt agenda
>
> Approve.
>
> 1.3 Approve minutes from previous meeting, and approve publishing
> previously approved minutes to ISOCPP.org
>
> Approve.
>
>
>
> 1.4 Action items from previous meetings
>
> 2. Main issues (125 min)
>
> 2.1 General logistics
>
> Prague summary
>
> Mailing deadline is monthly on 15th
>
> All meetings going online.
>
> 2.2 Paper reviews
>
>
>
> Low-cost Deterministic C++ Exceptions for Embedded Systems
> <https://urldefense.com/v3/__https:/www.research.ed.ac.uk/portal/files/78829292/low_cost_deterministic_C_exceptions_for_embedded_systems.pdf__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19ZpJwLHg$>
>
> Low-cost Deterministic C++ Exceptions for Embedded Systems
>
> James Renwick
>
> James Renwick et al.
>
> BC: passing an address, so you can indirect jmp instead of return?
>
> leave optimzation off for now, what it this just look like normal code
>
>
>
> when propagating exception up the call stack, just do a return
>
> BC: regular processor, branch cost is small, but on gpu divergign control
> throws is high, throwing an exception on gpu is already expensive
>
> for gpu instead of terminate might do a HW specific thing
>
> CH: too many banches will cross bank boundaries;
>
> Even with a nave implementaion, we can see n times better
>
>
>
> ST: precompield external libraries 1K allocated for stack and with only
> 256 bytes from the stack, what happens? Right we dont deal with dynamic
> library yet, but it doesnt make teh exception object unique, and nothing is
> unique on the exception object here
>
> DLL and static libraries crossing boundary may be UB here or an ODR
> violation
>
>
>
> JM: table reduction does not match waht you said about text increase
> maching?
>
> because unwind library is gone
>
>
>
> BC: version of clang?
>
> clang 6
>
>
>
> CH:on function size vs binary size;
>
> should the catch block, which can be called out to another function,
>
>
>
> buffer on where to put EH object and it falls back to the heap, so this
> can do the same thing
>
> need to inject parameter, which could thow., need to distinguisj C and C++
> function so need throw specifier added, abi change
>
> or pass by TLS
>
>
>
> a C language linkage, dont inject, standards says thata fn pointer inside
> a structure,
>
> type of ptr
>
> extern C allowed to throw, so we can detect what linkage a fn has
>
> C adapting deterministic exception
>
> we just need implmentation with a compielr flag
>
> parameter injection will be an abi break
>
>
>
> exception_ptr was intended to allow copying to support bot hreference
> counting heap allocated as is eager copy implementations
>
>
>
> you know the size because you call the copy constructor and not just
> memcpy it
>
> resolve copy construction when you write the throw expression so you know
> the size of the xception object
>
> but if pass exception ptr through to another functions object, that could
> take a dynamic size,
>
> if you can pass exception ptr around, can assign it to global variable,
> stack space does not matter, you have a life time problem; so it has to be
> on the heap to solve this
>
> so if eh object lives on stack, cant touch the heap, the nwe have a
> problem; yes you can outlive, so copy an exception ptr object stackframe,
> then for these reasons
>
> exception_ptr is aimed at heap implementation
>
> so we propose similar that is agnostic, encapsulate exception object, call
> get_current exception, then you are responsible for this object, no
> reference count, so you move it around
>
>
>
> cross noexcept bounday with an exception ptr, want to pass exeption
> through noexcept boundary without passing exception object as parameter for
> the rethrowing case
>
>
>
> want std exception ptr that has shared ownership and unique ownership of
> the exception object
>
>
>
> no language or library changes in this paper
>
> its an implementation report
>
> should we advise exception ptr is toxic
>
>
>
> Paul: claims is standard conformant, leaves out what noexcept specifier
> mean
>
>
>
> Ben: it would no changes, there are proposal would be changing stuff
> substantially, address cost benefit analysis of those papers
>
>
>
> some of the mitigation: adding noexcept blocks to mark large parts as
> noexcept, change the calling convention to make it so a prebuilt C library
> can work with this
>
>
>
> PB: C assert is verymuch a hint of adoption
>
>
>
> Exception_ptr: can we ban it in free_standing, or use Rust send
>
>
>
> exception_ptr on the heap is fine, problem is when you move it, it is
> nolonger available in the catch block, if you copy exception its fine as
> implementation only allow move only objects
>
>
>
> if it is moved onto the heap, then its a problem, but OK if you copy from
> stack to heap
>
>
>
> open the github (limited form)and form a group and tthen come back to
> discuss bridfing mechanism
>
>
>
> please reply to this thread if inetersted in joining this Exception
> Handing for Embedded implementation group.
>
>
>
> P2057r0
> <https://urldefense.com/v3/__http:/www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2057r0.pdf__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19V9euEDT$>
>
> SG14 SG19 Past, Present and Future status
>
> Michael Wong
>
> Michael Wong et al.
>
>
>
> PB: numeric proposal an ommission?Yes please add
>
> 2.2.1 any other proposal for reviews?
>
> MW: Interested in Networking RPC proposal? Yes
>
> ST: Error handling compendium?
>
> 2.3 Domain-specific discussions
>
> 2.3.1 SIG chairs
>
> - Embedded Programming chairs: Ben Craig, Wouter van Ooijen and Odin
> Holmes, John McFarlane
> <
>
> http://wiki.edg.com/bin/edit/Wg21belfast/McFarlane?topicparent=Wg21belfast.SG14CPPCON2019-09-17;nowysiwyg=1
> <https://urldefense.com/v3/__http:/wiki.edg.com/bin/edit/Wg21belfast/McFarlane?topicparent=Wg21belfast.SG14CPPCON2019-09-17;nowysiwyg=1__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19TigatDr$>>
>
>
> - Financial/Trading chairs: Stephan TJ, Carl Cooke, Neal Horlock,
> Mateusz Pusz, Clay Trychta,
> - Games chairs: Rene Riviera, Guy Davidson and Paul Hampson
> - Linear Algebra chairs: Bob Steagall, Mark Hoemmen, Guy Davidson
>
> 2.4 Other Papers and proposals
>
> 2.5 Future F2F meetings:
>
> 2.6 future C++ Standard meetings:
> https://isocpp.org/std/meetings-and-participation/upcoming-meetings
> <https://urldefense.com/v3/__https:/isocpp.org/std/meetings-and-participation/upcoming-meetings__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19aFyQm9I$>
>
> - 2020-11: (New York, tentative)
> - 2021-02-22 to 27: Kona, HI, USA
>
> 3. Any other business
> Reflector
> https://lists.isocpp.org/mailman/listinfo.cgi/sg14
> <https://urldefense.com/v3/__https:/lists.isocpp.org/mailman/listinfo.cgi/sg14__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19QgY4KHs$>
> As well as look through papers marked "SG14" in recent standards committee
> paper mailings:
> http://open-std.org/jtc1/sc22/wg21/docs/papers/2015/
> <https://urldefense.com/v3/__http:/open-std.org/jtc1/sc22/wg21/docs/papers/2015/__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19bnJhoER$>
> http://open-std.org/jtc1/sc22/wg21/docs/papers/2016/
> <https://urldefense.com/v3/__http:/open-std.org/jtc1/sc22/wg21/docs/papers/2016/__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19XBTPb27$>
>
> Code and proposal Staging area
> https://github.com/WG21-SG14/SG14
> <https://urldefense.com/v3/__https:/github.com/WG21-SG14/SG14__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19UFYZFSE$>
> 4. Review
>
> 4.1 Review and approve resolutions and issues [e.g., changes to SG's
> working draft]
>
> 4.2 Review action items (5 min)
>
> 5. Closing process
>
> 5.1 Establish next agenda
>
> 5.2 Future meeting
>
> Time: May 13, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: June 10, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Jul 8, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Aug 12, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Sep 9, 2020 02:00 PM Eastern Time (US and Canada)
>
> Time: Oct 14, 2020 02:00 PM Eastern Time (US and Canada)
>
> _______________________________________________
> SG14 mailing list
> SG14_at_[hidden]
> https://lists.isocpp.org/mailman/listinfo.cgi/sg14
> <https://urldefense.com/v3/__https:/lists.isocpp.org/mailman/listinfo.cgi/sg14__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19QgY4KHs$>
>
> _______________________________________________
> SG14 mailing list
> SG14_at_[hidden]
> https://lists.isocpp.org/mailman/listinfo.cgi/sg14
> <https://urldefense.com/v3/__https:/lists.isocpp.org/mailman/listinfo.cgi/sg14__;!!FbZ0ZwI3Qg!5IDP-p-EEaQOMZrPdy1JsDOZnYyfcsWdkQDHhPfaWbyPCUKSIM-19QgY4KHs$>
>
> _______________________________________________
> SG14 mailing list
> SG14_at_[hidden]
> https://lists.isocpp.org/mailman/listinfo.cgi/sg14
>



SG14 list run by sg14-owner@lists.isocpp.org

Older Archives on Google Groups