Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-11 23:31:36

0001 #ifndef HeterogeneousCore_AlpakaTest_interface_alpaka_AlpakaESTestData_h
0002 #define HeterogeneousCore_AlpakaTest_interface_alpaka_AlpakaESTestData_h
0003 
0004 #include "DataFormats/Portable/interface/alpaka/PortableCollection.h"
0005 #include "HeterogeneousCore/AlpakaInterface/interface/config.h"
0006 #include "HeterogeneousCore/AlpakaInterface/interface/memory.h"
0007 #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestData.h"
0008 #include "HeterogeneousCore/AlpakaTest/interface/AlpakaESTestSoA.h"
0009 
0010 namespace ALPAKA_ACCELERATOR_NAMESPACE {
0011   // PortableCollection-based model
0012   using AlpakaESTestDataAHost = cms::alpakatest::AlpakaESTestDataAHost;
0013   using AlpakaESTestDataADevice = PortableCollection<cms::alpakatest::AlpakaESTestSoAA>;
0014 
0015   using AlpakaESTestDataCHost = cms::alpakatest::AlpakaESTestDataCHost;
0016   using AlpakaESTestDataCDevice = PortableCollection<cms::alpakatest::AlpakaESTestSoAC>;
0017 
0018   using AlpakaESTestDataDHost = cms::alpakatest::AlpakaESTestDataDHost;
0019   using AlpakaESTestDataDDevice = PortableCollection<cms::alpakatest::AlpakaESTestSoAD>;
0020 
0021   using AlpakaESTestDataEHost = cms::alpakatest::AlpakaESTestDataEHost;
0022   using AlpakaESTestDataEDevice = cms::alpakatest::AlpakaESTestDataE<Device>;
0023 
0024   using AlpakaESTestDataACMultiHost = cms::alpakatest::AlpakaESTestDataACMultiHost;
0025   using AlpakaESTestDataACMultiDevice =
0026       PortableMultiCollection<Device, cms::alpakatest::AlpakaESTestSoAA, cms::alpakatest::AlpakaESTestSoAC>;
0027 
0028 }  // namespace ALPAKA_ACCELERATOR_NAMESPACE
0029 
0030 // check that the portable device collections for the host device are the same as the portable host collections
0031 ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataADevice, cms::alpakatest::AlpakaESTestDataAHost);
0032 ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataCDevice, cms::alpakatest::AlpakaESTestDataCHost);
0033 ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataDDevice, cms::alpakatest::AlpakaESTestDataDHost);
0034 ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataEDevice, cms::alpakatest::AlpakaESTestDataEHost);
0035 ASSERT_DEVICE_MATCHES_HOST_COLLECTION(AlpakaESTestDataACMultiDevice, ::cms::alpakatest::AlpakaESTestDataACMultiHost);
0036 
0037 #endif  // HeterogeneousCore_AlpakaTest_interface_alpaka_AlpakaESTestData_h