Date: Thu, 9 Mar 2023 15:20:11 -0500
On Tue, Mar 7, 2023 at 11:19 AM Michael Wong <fraggamuffin_at_[hidden]> 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
>
> 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
>
Received on 2023-03-09 20:20:25