Madgraph5 GPU development
Virtual (Zoom)
# Madgrapg4gpu dev meeting 21.06.21
Present: SR, TC, AV (notes), Andy, Walter, Smita, OM, Carl, Laurence, SH (later)
## Andy's demo
AR: the profiler developed on eemumu does not work out of the box on kokkos,
because the directory layout is slightly different.
AR suggests a standard layout.
TC: please split 132128 so you know what is what, eg add underscores
AV: or even 1b32t128i
TC: we could remove the units like sec-1 from the json
AV: note I also added one 'MEcalconly', the profiler should allow for some schema evolution (eg new metrics added)
AV: I also added a cudadevicesync between the calc and the copy
TC: yes also notices this is important
AV: also tested that the sum of calc+copy does not increase
TC to AV: please put back masses in rambo!
This would help comparing physics results cuda to kokkos
[after the meeting: look at https://github.com/madgraph5/madgraph4gpu/issues/183]
OM: should also put back cuts in ggttgg otherwise we are comparing infinities
[after the meeting:look at https://github.com/madgraph5/madgraph4gpu/issues/100]
AR: will we get epoch3 soon?
OM: no not soon
TC: why do you dump to json all metrics
SR: yes probably we do not need everything
AV: agree, keep only ME metrics... personally I only use the stdout, but json is useful for Andy's too
TC: personally will only inclde the ME metrics for kokkos
## Round table
AR: nta
AV: completed a first draft of the chep paper
AV: patches for single precision for ggttgg, and also makefiles to allow CI builds and simulatneous build
AV: had a chat with Tommaso Boccali, have access to Marconi HPC at CINECA with Power and A100
AV: considering to apply for the GPU hackathon
TC: involved with US CCE, mainly for HPC submissions, reported some kokkos results to the performance WG there
OM: sharing some slides (shown last time but TC was not there)
Essentially working on MadEvent to bunch many events together before computing the ME
Aiming for 32 events at a time
> AV: actually an interesting point could be to change our code to send 2000 blocks one by one,
instead of a single kernel with 2000 blocks and 32 threads -> will open a ticket
[after the meeting: look at https://github.com/madgraph5/madgraph4gpu/issues/219]
Sincle last week, fixed some issues in QCD process, validation seems good, but there are some loose ends
(eg rapidity distribution, maybe there are some cuts that are missing)
Note that rapidity is a special variabl ein MG because it is compute in the lab referece frame,
all other variables are computed in the center of mass refernec frame
> SR: how about passing variables to c++?
OM: this work is all still in fortran, but now it starts to be under control, should be easy to switch
> AV: can you please generate ggtt in epoch2 so I can vectorize it?
OM: will do, but maybe I am getting closer to have time for epoch3...
AV: good, then at that point we should hav ethe meeting about code generation
AV: would be nice to also add the separation of color algebra in the epoch3
> SR: do we want to do epoch3 before fortran interface?
AV: would be nice to at least do the reading of fortan aosoa from c++ once
(and have the code included, whether it is standalon iPar functions or SR's transposition)
CV: shares some more slides, peculiar to see sigmakin 3a << copy 3b
> AV: this is what needs a cudadevicesynchronize... should be included but not sure, will check
CV: with 160 registers in ggttgg, get a higher throughput than 256
> all: very interesting! try also more points between 160 and 256 and between 128 and 160
> AV: look also at https://github.com/madgraph5/madgraph4gpu/issues/26
SH: (sorry for being late, was at another meeting which happens every two weeks)
SH: will activate CI builds for floats
SR: prepared a prototype for AOSOA transposition on the GPU
SR: waiting for OM to prepare some code to start testing the interface to fortran
## AOB
Holiday plans?
SR: will be away from next week Tue for 10 days
AV: will be there in JUly, then away in August till ~Sep 10
SR: propose a meeting next Mon, then we see