On Tue, Mar 7, 2023 at 11:19 AM Michael Wong <fraggamuffin@gmail.com> wrote:
Hi all, SG19 Machine Learning meeting will focus on Matrix. We still want to drive graph and stats to completion and we can have brief moments to review where they are depending on how much Matrix takes up. Are there any other suggested topics? Thank you.


Michael Wong is inviting
you to a scheduled Zoom meeting.

Topic: SG19 monthly
Time: 02:00 PM Eastern Time (US and Canada)
    Every month on the Second Thu,


Join from PC, Mac, Linux, iOS or Android:

https://iso.zoom.us/j/93084591725?pwd=K3QxZjJlcnljaE13ZWU5cTlLNkx0Zz09
    Password: 035530

Or iPhone one-tap :
    US: +13017158592,,93084591725# or +13126266799,,93084591725#
Or Telephone:
    Dial(for higher quality, dial a number based on your current location):
        US: +1 301 715 8592 or +1 312 626 6799 or +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 877 853 5247 (Toll Free)
    Meeting ID: 930 8459 1725
    Password: 035530
    International numbers available: https://iso.zoom.us/u/agewu4X97

Or Skype for Business (Lync):
    https://iso.zoom.us/skype/93084591725

Agenda:

1. Opening and introductions

The ISO Code of conduct:
https://www.iso.org/files/live/sites/isoorg/files/store/en/PUB100397.pdf

IEC Code of Conduct:

https://www.iec.ch/basecamp/iec-code-conduct-technical-work

ISO patent policy.

https://isotc.iso.org/livelink/livelink/fetch/2000/2122/3770791/Common_Policy.htm?nodeid=6344764&vernum=-2

The WG21 Practices and Procedures and Code of Conduct:
https://isocpp.org/std/standing-documents/sd-4-wg21-practices-and-procedures

1.1 Roll call of participants
Guy Davidson, Phil Ratzloff, Scott Macmillan, Dounia Khaldi, Benjamin Brock, Boguslaw Cyganek, Jens Maurer, Nathan Owen, Oliver Rosten, Rene Rivera, Richard Dosselmann, Michael Wong, Mohammed Osama


1.2 Adopt agenda

1.3 Approve minutes from previous meeting, and approve publishing
 previously approved minutes to ISOCPP.org

1.4 Action items from previous meetings

2. Main issues (125 min)

2.1 General logistics

Meeting plan, focus on one paper per meeting but does not preclude other
paper
updates:

CPPCON minutes:
https://wiki.edg.com/bin/view/Wg21virtual2022-07/SG14


    Nov 10, 2022 02:00 PM ET: Cancelled due to Kona F2F
    Dec 8, 2022 02:00 PM ET: Graph
    Jan 12, 2023 02:00 PM ET: Stats
    Feb 9, 2023 02:00 PM ET: F2F cancelled
    Mar 9, 2023 02:00 PM ET: Matrix


ISO meeting status

future C++ Std meetings

2.2 Paper reviews

2.2.1: ML topics

2.2.1.1 Graph Proposal Phil Ratsloff et al

Update: need a bit more time. 
Latest paper:

Here’s a link to the paper (different than the previous paper reviewed).
There are some additional updates I’m planning on making before the meeting.

https://docs.google.com/document/d/1OpH-xxRri7tJTtJJIZTYmSHkkrZJkdBwm9zJ7LqolfQ/edit?usp=sharing




P1709R3:
https://docs.google.com/document/d/1kLHhbSTX7j0tPeTYECQFSNx3R35Mu3xO5_dyYdRy4dM/edit?usp=sharing

https://docs.google.com/document/d/1QkfDzGyfNQKs86y053M0YHOLP6frzhTJqzg1Ug_vkkE/edit?usp=sharing

<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2119r0.html>

<
https://docs.google.com/document/d/175wIm8o4BNGti0WLq8U6uZORegKVjmnpfc-_E8PoGS0/edit?ts=5fff27cd#heading=h.9ogkehmdmtel
*>*

Array copy semantics:
array copy-semantics paper P1997 "Relaxing Restrictions on Arrays",
https://wg21.link/p1997

Stats feedback:

P2376R0
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2376r0.pdf>
Comments
on Simple Statistical Functions (p1708r4): Contracts, Exceptions and
Special cases Johan Lundberg

2.2.1.2 Reinforcement Learning Larry Lewis Jorge Silva

Reinforcement Learning proposal:

2.2.1.3 Differential Calculus:

https://docs.google.com/document/d/175wIm8o4BNGti0WLq8U6uZORegKVjmnpfc-_E8PoGS0/edit?ts=5fff27cd#heading=h.9ogkehmdmtel

2.2.1.4: Stats paper

Question from Oliver about checks constraints. Toeb discussed in future call  and to post on reflector. 


P2681R0
<https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2681r0.pdf> More
Stats Functions Richard Dosselmann, Michael Wong
Current github

https://github.com/cplusplus/papers/issues/475

https://github.com/cplusplus/papers/issues/979

Stats review Richard Dosselman et al

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1708r4.pdf

Feedback from Johan Lundberg and Oleksandr Korval

https://isocpp.org/files/papers/D2376R0.pdf

P1708R3: Math proposal for Machine Learning: 3rd review

PXXXX: combinatorics: 1st Review

*> std.org/jtc1/sc22/wg21/docs/papers/2020/p1708r2
<http://std.org/jtc1/sc22/wg21/docs/papers/2020/p1708r2>*
*> above is the stats paper that was reviewed in Prague*
*> http://wiki.edg.com/bin/view/Wg21prague/P1708R2SG19
<http://wiki.edg.com/bin/view/Wg21prague/P1708R2SG19>*
*>*
*> Review Jolanta Polish feedback.*
*> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2119r0.html
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2119r0.html>*


2.2.1.4: Matrix paper

Dounia presenting:
1. Matrix proposal done in SYCL 
matrix type accepted both static and dynamic, but now drops dynamic_extent
Matrix datatype
mma_engine type is new where sizes are transparent to the user
defined with a specified combination of type and size
explicit data transfers
separate memory operations and layout from compute

new fns are multiply and add operation, map function (loop over scalars, conversion to a vector)
extensible to add more operations

mma_engine gives you query and abstract away HW details
in SYCL this is in private memory in a work item, if shared with all work items, then you need a subgroup like simd which clusters these lanes to run in parallel, cluster subgroups to become work groups, and many workgroups makes up a kernel;

bulk execution is like parallel for , but has no 2d range 

layout (mdspan), row major(right), column major (left)

 Robert van de Geijn at University of Texas Austin
Some of Robert's work: https://github.com/flame/blis

this offers full control, but also enables fusion when you have 2 kernels that dont communicate with each other in a pipelining way, breaking it up makes it low level but gives control

gpu_execution, does P2300 serve GPU_execution? what about matrix gpu execution?

current framework seems to assume shared cpu/GPU memory 

please feedback to P2300

different data types, dims, element type, can take away the a, b type,  accumulator type

uint3, sint4 are not in C++ 

uint32_t is better as parameter or size_t  as sparse matrix may have more than 32 bits, its compile info so can take larger size.

Guy Davidson:D1385R8
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1385r7.pdf
construct vectors by constructing single row 
plan at Varna is to use what is presented at ACCU 
COT is the storage engine and operation types

graph is a CSR graph, can this apply to this matrix, yes can put mdspan inside,
close relation in sparse matrix and graphs, talk to Christian in issaquah, and was not sure mdspan can do sparse matrix well, using vectors. 


matrix synopsis shops lots of @includes, like deque, will need to trim even if the interface might requires these symbols, as all implementation need to get the full header, can just get the bits you need using a common include file
#include is not needed in synopsis

SG6 OK but did not see the vector.
LEWG waiting. may present in Varna









2.2.3 any other proposal for reviews?

2.3 Other Papers and proposals

P1416R1: SG19 - Linear Algebra for Data Science and Machine Learning
https://docs.google.com/document/d/1IKUNiUhBgRURW-UkspK7fAAyIhfXuMxjk7xKikK4Yp8/edit#heading=h.tj9hitg7dbtr

P1415: Machine Learning Layered list
https://docs.google.com/document/d/1elNFdIXWoetbxjO1OKol_Wj8fyi4Z4hogfj5tLVSj64/edit#heading=h.tj9hitg7dbtr

2.2.2 SG14 Linear Algebra progress:
Different layers of proposal
https://docs.google.com/document/d/1poXfr7mUPovJC9ZQ5SDVM_1Nb6oYAXlK_d0ljdUAtSQ/edit

2.5 Future F2F meetings:

2.6 future C++ Standard meetings:
https://isocpp.org/std/meetings-and-participation/upcoming-meetings

None

3. Any other business

New reflector

http://lists.isocpp.org/mailman/listinfo.cgi/sg19

Old Reflector
https://groups.google.com/a/isocpp.org/forum/#!newtopic/sg19
<https://groups.google.com/a/isocpp.org/forum/?fromgroups=#!forum/sg14>

Code and proposal Staging area

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




   Jan 2, 2022 02:00 PM ET: Stats
    Feb 9, 2022 02:00 PM ET: F2F Cancelled
    mar 9, 2022 02:00 PM ET: Matrix