Commit 50fd48e0 authored by Jean-Matthieu Gallard's avatar Jean-Matthieu Gallard

KernelGen mixedPicard - Works but no good results, maybe need to fix stop criterion

parent 154792b2
......@@ -197,3 +197,30 @@ class FusedSpaceTimePredictorVolumeIntegralModel(AbstractModelBaseClass):
if self.context["nDim"]>=3:
self.context["matmulConfigs"]["gradQ_z_RKLoop"] = MatmulConfig(nVar, nDof, nDof, nData*nDof2, nDofPad, nVarPad*nDof2, 1, 1, 0, 1, "gradQ_z_RKLoop", "nopf", "gemm")
self.context["matmulConfigs"]["lqi"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad*(nDof**nDim), nDofPad, nVarPad, 1, 0, 1, 1, "lqi", "nopf", "gemm") # beta, 0 => overwrite C
if self.context["initialGuess"] == "mixedPicard":
if self.context["useVectPDE"]:
if self.context["useFlux"]:
self.context["matmulConfigs"]["rhs_x_sp"] = MatmulConfig(nDofPad, nVar, nDof, nDofPad, nDofPad, nDofPad , 1, 1, 1, 1, "rhs_x_sp", "nopf", "gemm", precision="SP")
self.context["matmulConfigs"]["rhs_y_sp"] = MatmulConfig(nDofPad*nVar, nDof, nDof, nDofPad*nVar, nDofPad, nDofPad*nVar , 1, 1, 1, 1, "rhs_y_sp", "nopf", "gemm", precision="SP")
if self.context["nDim"]>=3:
self.context["matmulConfigs"]["rhs_z_sp"] = MatmulConfig(nDofPad*nVar*nDof, nDof, nDof, nDofPad*nVar*nDof, nDofPad, nDofPad*nVar*nDof, 1, 1, 1, 1, "rhs_z_sp", "nopf", "gemm", precision="SP")
if self.context["useNCP"] or self.context['useViscousFlux']:
self.context["matmulConfigs"]["gradQ_x_sp"] = MatmulConfig(nDofPad, nVar, nDof, nDofPad, nDofPad, nDofPad , 1, 1, 1, 1, "gradQ_x_sp", "nopf", "gemm", precision="SP")
self.context["matmulConfigs"]["gradQ_y_sp"] = MatmulConfig(nDofPad*nVar, nDof, nDof, nDofPad*nVar, nDofPad, nDofPad*nVar , 1, 1, 1, 1, "gradQ_y_sp", "nopf", "gemm", precision="SP")
if self.context["nDim"]>=3:
self.context["matmulConfigs"]["gradQ_z_sp"] = MatmulConfig(nDofPad*nVar*nDof, nDof, nDof, nDofPad*nVar*nDof, nDofPad, nDofPad*nVar*nDof, 1, 1, 1, 1, "gradQ_z_sp", "nopf", "gemm", precision="SP")
self.context["matmulConfigs"]["lqi_sp"] = MatmulConfig(nDofPad*nVar, nDof, nDof, nDofPad*nVar*nDof*nDof3D, nDofPad, nDofPad*nVar, 1, 0, 1, 1, "lqi_sp", "nopf", "gemm", precision="SP") # beta, 0 => overwrite C
else: #scalar predictor recompute
if self.context["useFlux"]:
self.context["matmulConfigs"]["rhs_x_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad , nDofPad, nVarPad , 1, 1, 1, 1, "rhs_x_sp", "nopf", "gemm", precision="SP")
self.context["matmulConfigs"]["rhs_y_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad*nDof , nDofPad, nVarPad*nDof , 1, 1, 1, 1, "rhs_y_sp", "nopf", "gemm", precision="SP")
if self.context["nDim"]>=3:
self.context["matmulConfigs"]["rhs_z_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad*nDof2, nDofPad, nVarPad*nDof2, 1, 1, 1, 1, "rhs_z_sp", "nopf", "gemm", precision="SP")
if self.context["useNCP"] or self.context['useViscousFlux']:
self.context["matmulConfigs"]["gradQ_x_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad , nDofPad, nVarPad , 1, 1, 1, 1, "gradQ_x_sp", "nopf", "gemm", precision="SP")
self.context["matmulConfigs"]["gradQ_y_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad*nDof, nDofPad, nVarPad*nDof , 1, 1, 1, 1, "gradQ_y_sp", "nopf", "gemm", precision="SP")
if self.context["nDim"]>=3:
self.context["matmulConfigs"]["gradQ_z_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad*nDof2, nDofPad, nVarPad*nDof2, 1, 1, 1, 1, "gradQ_z_sp", "nopf", "gemm", precision="SP")
self.context["matmulConfigs"]["lqi_sp"] = MatmulConfig(nVarPad, nDof, nDof, nVarPad*(nDof**nDim), nDofPad, nVarPad, 1, 0, 1, 1, "lqi_sp", "nopf", "gemm", precision="SP") # beta, 0 => overwrite C
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment