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 invitingyou to a scheduled Zoom meeting.Topic: SG19 monthlyTime: 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: 035530Or 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 +1408 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/agewu4X97Or Skype for Business (Lync): https://iso.zoom.us/skype/93084591725Agenda:1. Opening and introductionsThe ISO Code of conduct:https://www.iso.org/files/live/sites/isoorg/files/store/en/PUB100397.pdfIEC Code of Conduct:https://www.iec.ch/basecamp/iec-code-conduct-technical-workISO patent policy.https://isotc.iso.org/livelink/livelink/fetch/2000/2122/3770791/Common_Policy.htm?nodeid=6344764&vernum=-2The WG21 Practices and Procedures and Code of Conduct:https://isocpp.org/std/standing-documents/sd-4-wg21-practices-and-procedures1.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 agenda1.3 Approve minutes from previous meeting, and approve publishing previously approved minutes to ISOCPP.org1.4 Action items from previous meetings2. Main issues (125 min)2.1 General logisticsMeeting plan, focus on one paper per meeting but does not preclude otherpaperupdates: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: MatrixISO meeting statusfuture C++ Std meetings2.2 Paper reviews2.2.1: ML topics2.2.1.1 Graph Proposal Phil Ratsloff et al
Update: need a bit more time.
Question from Oliver about checks constraints. Toeb discussed in future call and to post on reflector.
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
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
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