Skip to content

Commit b17bbb6

Browse files
authored
Merge pull request #56 from DiamondLightSource/fbp2dastra
changes to accomodate fbp2d_astra method
2 parents 6ea8f1e + f6526b1 commit b17bbb6

File tree

4 files changed

+31
-2
lines changed

4 files changed

+31
-2
lines changed

httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,15 +145,24 @@ prep:
145145
method: module
146146
recon:
147147
algorithm:
148-
FBP3d_tomobar:
148+
FBP2d_astra:
149149
pattern: sinogram
150150
output_dims_change: True
151-
implementation: gpu_cupy
151+
implementation: gpu
152152
save_result_default: True
153153
padding: False
154154
memory_gpu:
155155
multiplier: None
156156
method: module
157+
FBP3d_tomobar:
158+
pattern: sinogram
159+
output_dims_change: True
160+
implementation: gpu_cupy
161+
save_result_default: True
162+
padding: False
163+
memory_gpu:
164+
multiplier: 1.0
165+
method: direct
157166
SIRT3d_tomobar:
158167
pattern: sinogram
159168
output_dims_change: True

httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
"_calc_memory_bytes_FBP3d_tomobar",
3030
"_calc_memory_bytes_SIRT3d_tomobar",
3131
"_calc_memory_bytes_CGLS3d_tomobar",
32+
"_calc_output_dim_FBP2d_astra",
3233
"_calc_output_dim_FBP3d_tomobar",
3334
"_calc_output_dim_SIRT3d_tomobar",
3435
"_calc_output_dim_CGLS3d_tomobar",
@@ -49,6 +50,10 @@ def __calc_output_dim_recon(non_slice_dims_shape, **kwargs):
4950
return output_dims
5051

5152

53+
def _calc_output_dim_FBP2d_astra(non_slice_dims_shape, **kwargs):
54+
return __calc_output_dim_recon(non_slice_dims_shape, **kwargs)
55+
56+
5257
def _calc_output_dim_FBP3d_tomobar(non_slice_dims_shape, **kwargs):
5358
return __calc_output_dim_recon(non_slice_dims_shape, **kwargs)
5459

tests/test_httomolibgpu.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -728,3 +728,13 @@ def test_sino_360_to_180_memoryhook(
728728

729729
assert estimated_bytes >= max_mem
730730
assert percentage_difference <= 35
731+
732+
733+
def test_FBP2d_astra_output_dim():
734+
# Call memory estimator to estimate memory usage
735+
recon_size = 300
736+
output_dims = _calc_output_dim_FBP2d_astra(
737+
non_slice_dims_shape=(10, 10),
738+
recon_size=recon_size,
739+
)
740+
assert output_dims == (recon_size, recon_size)

tests/test_method_query.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ def test_httomolibgpu_implementation():
4141
assert query.get_implementation() == "gpu_cupy"
4242

4343

44+
def test_httomolibgpu_implementation2():
45+
query = MethodsDatabaseQuery("httomolibgpu.recon.algorithm", "FBP2d_astra")
46+
assert query.get_implementation() == "gpu"
47+
48+
4449
def test_httomolibgpu_output_dims_change():
4550
query = MethodsDatabaseQuery("httomolibgpu.prep.normalize", "normalize")
4651
assert query.get_output_dims_change() is False

0 commit comments

Comments
 (0)