| 967 | |
| 968 | |
| 969 | void seissol::initializer::MemoryManager::initFrictionData() { |
| 970 | if (m_seissolParams->drParameters.isDynamicRuptureEnabled) { |
| 971 | |
| 972 | m_DRInitializer->initializeFault(m_dynRup.get(), &m_dynRupTree); |
| 973 | |
| 974 | #ifdef ACL_DEVICE |
| 975 | if (auto* impl = dynamic_cast<dr::friction_law::gpu::FrictionSolverInterface*>(m_FrictionLawDevice.get())) { |
| 976 | impl->initSyclQueue(); |
| 977 | |
| 978 | LayerMask mask = seissol::initializer::LayerMask(Ghost); |
| 979 | auto maxSize = m_dynRupTree.getMaxClusterSize(mask); |
| 980 | impl->setMaxClusterSize(maxSize); |
| 981 | |
| 982 | impl->allocateAuxiliaryMemory(); |
| 983 | impl->copyStaticDataToDevice(); |
| 984 | } |
| 985 | #endif // ACL_DEVICE |
| 986 | } |
| 987 | } |
| 988 | |
| 989 | void seissol::initializer::MemoryManager::synchronizeTo(seissol::initializer::AllocationPlace place) { |
| 990 | #ifdef ACL_DEVICE |
no test coverage detected