I believe the difference is that the L2_RQSTS events
include L1 prefetching. Prefetches from
the L1 hardware prefetch algorithms appear like demand requests to the L2_RQSTS
events. The MEM_LOAD events filter out both prefetches from L1 and prefetches from L2. SoMEM_LOAD events are
truly counting only demand loads issued from software.