<div dir="ltr">Hi Simon,<div><br></div><div>Yes I switched on an off the --lowmem option and it has no influence on the behaviour I mentioned.</div><div>In my case the system memory is sufficient to handle the projections plus the volume. </div>
<div>The major bottleneck is the amount of graphics memory. </div><div>If I reconstruct a little bit more slices than the limit that I found with one stream, the allocation of GPU resource for CUFFT in the CudaFFTRampImageFilter will fail (which was more or less expected).</div>
<div>However with --divisions > 1 it is indeed able to reconstruct more slices, but only a very few more; otherwise the CUFFT would fail again. </div><div>I would expect the limitations of the amount of slices to be approximately proportional to the number of streams, or do I miss anything about stream division?</div>
<div><br></div><div>Thanks, </div><div>Chao</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-05-21 13:43 GMT+02:00 Simon Rit <span dir="ltr"><<a href="mailto:simon.rit@creatis.insa-lyon.fr" target="_blank">simon.rit@creatis.insa-lyon.fr</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Chao,<br>
There are two things that use memory, the volume and the projections.<br>
The --divisions option divides the volume only. The --lowmem option<br>
works on a subset of projections at a time. Did you try this?<br>
Simon<br>
<div><div class="h5"><br>
On Wed, May 21, 2014 at 12:18 PM, Chao Wu <<a href="mailto:wuchao04@gmail.com">wuchao04@gmail.com</a>> wrote:<br>
> Hoi,<br>
><br>
> I may need some hint about how the stream division works in rtkfdk.<br>
> I noticed that the StreamingImageFilter from ITK is used but I cannot figure<br>
> out quickly how the division has been performed.<br>
> I did some test with reconstructing 400 1500x1200 projections into a<br>
> 640xNx640 volume (the pixel and voxel size are comparable).<br>
> The reconstructions were executed by rtkfdk with CUDA.<br>
> When I leave the origin of the volume at the center by default, I can<br>
> reconstruct up to N=200 slices with --divisions=1 due to the limitation of<br>
> the graphic memory. Then when I increase the number of divisions to 2, I can<br>
> only reconstruct up to 215 slices; and with divisions to 3 only up to 219<br>
> slices. Does anyone have an idea why it scales like this?<br>
> Thanks in advance.<br>
><br>
> Best regards,<br>
> Chao<br>
><br>
</div></div>> _______________________________________________<br>
> Rtk-users mailing list<br>
> <a href="mailto:Rtk-users@openrtk.org">Rtk-users@openrtk.org</a><br>
> <a href="http://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users" target="_blank">http://public.kitware.com/cgi-bin/mailman/listinfo/rtk-users</a><br>
><br>
</blockquote></div><br></div>