Open petermcLBL opened 3 years ago
Spiral fails on examples/rconv on GPUs with these files, (attached with ".txt" suffix so github will allow them):
rconv.h rconv2.fftx.cpp rconv3.fftx.cpp testrconv.cu
On cori.nersc.gov: module load cgpu cuda cmake python PrgEnv-intel In build directory:
module load cgpu cuda cmake python PrgEnv-intel
cmake -D_codegen=GPU .. make install
Also attached generated Spiral script rconv3.fftx.generator.g (with ".txt" suffix so github will allow it). rconv.h.txt rconv2.fftx.cpp.txt rconv3.fftx.cpp.txt rconv3.fftx.generator.g.txt testrconv.cu.txt
What happens when we build:
Scanning dependencies of target NAME.rconv.rconv3.fftx.generator.g [ 26%] Built target NAME.rconv.rconv3.fftx.generator.g [ 28%] Generating code for rconv3.fftx.source.cu ``` ...
spiral> spiral> [[ while reading stdin:36 ]] Error, Record: element 'node' must have an assigned value in
web:error brk> Top()
; [[ defined in /global/homes/p/petermc/spiral-software/namespaces/packages/fftx/fftxapi.gi:50 ]] meth ( self, rt ) local s, s2, ss, Xptr, Yptr, tags; self.symbol := When(IsBound(rt.node.params[2].params), rt.node.params[2].params, [ ]); if IsBound(rt.node.params[2].XType) then Xptr := var("Xptr", rt.node.params[2].XType); else Xptr := X; fi; if IsBound(rt.node.params[2].YType) then Yptr := var("Yptr", rt.node.params[2].YType); else Yptr := Y; fi; self.Xptr := Xptr; self.Yptr := Yptr; s := SumsRuleTree(rt, self); tags := rec( ruletree := rec() ); if IsBound(s.ruletree) then tags.ruletree := s.ruletree; fi; s2 := fixUpSigmaSPL(s, self); ss := SubstVars(s2, rec( X := Xptr, Y := Yptr )); ss := SubstTopDown(ss, @(1, [ NoDiagPullinLeft, NoDiagPullinRight, Grp ]), (e) -> e.child(1)); if IsBound(self.postProcessSums) then ss := self.postProcessSums(ss, self); fi; ss.ruletree := tags.ruletree; return ss; end
There is a question about whether it doesn't work because of unsupported sizes. So I tried setting nx, ny, nz all to 80 in rconv.h, and I get the same error.
Spiral fails on examples/rconv on GPUs with these files, (attached with ".txt" suffix so github will allow them):
On cori.nersc.gov:
module load cgpu cuda cmake python PrgEnv-intel
In build directory:Also attached generated Spiral script rconv3.fftx.generator.g (with ".txt" suffix so github will allow it). rconv.h.txt rconv2.fftx.cpp.txt rconv3.fftx.cpp.txt rconv3.fftx.generator.g.txt testrconv.cu.txt
What happens when we build:
spiral> spiral> [[ while reading stdin:36 ]] Error, Record: element 'node' must have an assigned value in
3 ->.sumsRuleTree(rt)
2 ->.fftxGen(tt)
1 -> main loop
web:error brk> Top()