Skip to content

Commit 7e83811

Browse files
committed
misc: Bit of clean up
1 parent 8bda24e commit 7e83811

9 files changed

Lines changed: 2005 additions & 2269 deletions

File tree

devito/data/decomposition.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,8 +453,8 @@ def index_loc_to_glb(self, *args):
453453
def index_glb_to_loc_unsafe(self, glb_idx, rel=True):
454454
"""
455455
Convert a global index to a local index even if not owned.
456-
WARNING: Must not be used to index data as there are no guard rails against returning out
457-
of bound indices.
456+
WARNING: Must not be used to index data as there are no guard
457+
rails against returning out of bound indices.
458458
"""
459459
if not self.loc_empty:
460460
loc_abs_min = self.loc_abs_min - self.glb_min

devito/ir/cgen/printer.py

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -171,19 +171,7 @@ def _print_FIndexed(self, expr):
171171
except AttributeError:
172172
label = expr.base.label
173173
return f'{self._print(label)}({inds})'
174-
175-
# def _print_PostIncrementIndexed(self, expr):
176-
# """
177-
# Print an Indexed as a ...
178-
179-
# Examples
180-
# --------
181-
# U[k] -> U[k++]
182-
# """
183-
# # from IPython import embed; embed()
184-
# inds = ''.join(['[' + self._print(x) + '++' + ']' for x in expr.indices])
185-
# return f'{self._print(expr.base.label)}{inds}'
186-
174+
187175
def _print_Rational(self, expr):
188176
"""Print a Rational as a C-like float/float division."""
189177
# This method and _print_Float below forcefully add a F to any

devito/ir/iet/nodes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1149,7 +1149,7 @@ def expr_symbols(self):
11491149
else:
11501150
ret.extend([self.pointer, self.pointee.indexed])
11511151
ret.extend(flatten(i.free_symbols
1152-
for i in self.pointee.symbolic_shape[1:]))
1152+
for i in self.pointee.symbolic_shape[1:]))
11531153
else:
11541154
assert False, f"Unexpected pointer type {type(self.pointer)}"
11551155

devito/petsc/equations.py

Lines changed: 13 additions & 158 deletions
Original file line numberDiff line numberDiff line change
@@ -16,159 +16,6 @@ def lower_exprs_petsc(expressions, **kwargs):
1616
return expressions
1717

1818

19-
# def constrain_essential_bcs(expressions, **kwargs):
20-
# """ """
21-
22-
# sregistry = kwargs.get("sregistry")
23-
24-
# constrain_expressions = [e for e in expressions if isinstance(e, ConstrainBC)]
25-
26-
# if not constrain_expressions:
27-
# return expressions
28-
29-
# # Ensure all ConstrainBCs share the same target
30-
# targets = {e.target.function for e in constrain_expressions}
31-
# # if len(targets) != 1:
32-
# # raise ValueError(
33-
# # f"All ConstrainBCs must have the same target, "
34-
# # f"but found {len(targets)} different targets: {targets}"
35-
# # )
36-
37-
# # Safe to pick the single target
38-
# target = next(iter(targets))
39-
# # from IPython import embed; embed()
40-
41-
# all_dims = {d for e in constrain_expressions for d in extract_dims(e)}
42-
43-
# subdims = [d for d in all_dims if d.is_Sub and not d.local]
44-
# space_dims = [d for d in all_dims if isinstance(d, SpaceDimension)]
45-
46-
# mapper = {}
47-
48-
# for d in subdims:
49-
# if d in mapper:
50-
# continue
51-
52-
# subdim_max = SubDimMax(
53-
# sregistry.make_name(prefix=f"{d.name}_max"),
54-
# subdim=d,
55-
# )
56-
# subdim_min = SubDimMin(
57-
# sregistry.make_name(prefix=f"{d.name}_min"),
58-
# subdim=d,
59-
# )
60-
61-
# halo_left = target.function._size_halo[d].left
62-
# halo_right = target.function._size_halo[d].right
63-
64-
# # the name for this can just be d.name
65-
# mapper[d] = CustomDimension(
66-
# name=sregistry.make_name(prefix=f"{d.name}_new"),
67-
# symbolic_min=Max(subdim_min, d.parent.symbolic_min - halo_left),
68-
# symbolic_max=Min(subdim_max, d.parent.symbolic_max + halo_right),
69-
# )
70-
71-
# for d in space_dims:
72-
# if d in mapper:
73-
# continue
74-
75-
# space_dim_max = SpaceDimMax(
76-
# sregistry.make_name(prefix=f"{d.name}_max"),
77-
# space_dim=d,
78-
# )
79-
# space_dim_min = SpaceDimMin(
80-
# sregistry.make_name(prefix=f"{d.name}_min"),
81-
# space_dim=d,
82-
# )
83-
84-
# halo_left = target.function._size_halo[d].left
85-
# halo_right = target.function._size_halo[d].right
86-
87-
# mapper[d] = CustomDimension(
88-
# name=sregistry.make_name(prefix=f"{d.name}_expanded"),
89-
# symbolic_min=Max(space_dim_min, d.symbolic_min - halo_left),
90-
# symbolic_max=Min(space_dim_max, d.symbolic_max + halo_right),
91-
# )
92-
93-
# new_exprs = []
94-
95-
# for e in expressions:
96-
# if not isinstance(e, ConstrainBC):
97-
# new_exprs.append(e)
98-
# continue
99-
100-
# dims = extract_dims(e)
101-
102-
# if not dims:
103-
# new_exprs.append(e)
104-
# continue
105-
106-
# new_e = uxreplace(e, mapper)
107-
108-
# if e.implicit_dims:
109-
# new_e = new_e._rebuild(
110-
# implicit_dims=tuple(mapper.get(d, d) for d in e.implicit_dims)
111-
# )
112-
113-
# new_exprs.append(new_e)
114-
115-
# return new_exprs
116-
117-
118-
119-
## not a global mapper
120-
# def constrain_essential_bcs(expressions, **kwargs):
121-
# new_exprs = []
122-
# sregistry = kwargs['sregistry']
123-
124-
# for e in expressions:
125-
# if not isinstance(e, ConstrainBC):
126-
# new_exprs.append(e)
127-
# continue
128-
129-
# dims = extract_dims(e)
130-
# if not dims:
131-
# new_exprs.append(e)
132-
# continue
133-
134-
# # Build local mapper for this expression
135-
# mapper = {}
136-
137-
# for d in dims:
138-
# halo = e.target.function._size_halo[d]
139-
140-
# if d.is_Sub and not d.local:
141-
# subdim_max = SubDimMax(sregistry.make_name(prefix=f"{d.name}_max"), subdim=d)
142-
# subdim_min = SubDimMin(sregistry.make_name(prefix=f"{d.name}_min"), subdim=d)
143-
144-
# mapper[d] = CustomDimension(
145-
# name=d.name,
146-
# symbolic_min=Max(subdim_min, d.parent.symbolic_min - halo.left),
147-
# symbolic_max=Min(subdim_max, d.parent.symbolic_max + halo.right),
148-
# )
149-
150-
# elif isinstance(d, SpaceDimension):
151-
# space_dim_max = SpaceDimMax(sregistry.make_name(prefix=f"{d.name}_max"), space_dim=d)
152-
# space_dim_min = SpaceDimMin(sregistry.make_name(prefix=f"{d.name}_min"), space_dim=d)
153-
154-
# mapper[d] = CustomDimension(
155-
# name=d.name,
156-
# symbolic_min=Max(space_dim_min, d.symbolic_min - halo.left),
157-
# symbolic_max=Min(space_dim_max, d.symbolic_max + halo.right),
158-
# )
159-
160-
# new_e = uxreplace(e, mapper)
161-
# if e.implicit_dims:
162-
# new_e = new_e._rebuild(
163-
# implicit_dims=tuple(mapper.get(d, d) for d in e.implicit_dims)
164-
# )
165-
166-
# new_exprs.append(new_e)
167-
168-
# return new_exprs
169-
170-
171-
17219
def constrain_essential_bcs(expressions, **kwargs):
17320
"""
17421
Expand ConstrainBC expressions to include halo regions by creating new
@@ -197,8 +44,12 @@ def constrain_essential_bcs(expressions, **kwargs):
19744
for d in subdims:
19845
halo = halo_size[d]
19946

200-
subdim_max = SubDimMax(sregistry.make_name(prefix=f"{d.name}_max"), subdim=d)
201-
subdim_min = SubDimMin(sregistry.make_name(prefix=f"{d.name}_min"), subdim=d)
47+
subdim_max = SubDimMax(
48+
sregistry.make_name(prefix=f"{d.name}_max"), subdim=d
49+
)
50+
subdim_min = SubDimMin(
51+
sregistry.make_name(prefix=f"{d.name}_min"), subdim=d
52+
)
20253

20354
mapper[d] = CustomDimension(
20455
name=sregistry.make_name(prefix=f"{d.name}_new"),
@@ -208,8 +59,12 @@ def constrain_essential_bcs(expressions, **kwargs):
20859

20960
for d in space_dims:
21061
halo = halo_size[d]
211-
space_dim_max = SpaceDimMax(sregistry.make_name(prefix=f"{d.name}_max"), space_dim=d)
212-
space_dim_min = SpaceDimMin(sregistry.make_name(prefix=f"{d.name}_min"), space_dim=d)
62+
space_dim_max = SpaceDimMax(
63+
sregistry.make_name(prefix=f"{d.name}_max"), space_dim=d
64+
)
65+
space_dim_min = SpaceDimMin(
66+
sregistry.make_name(prefix=f"{d.name}_min"), space_dim=d
67+
)
21368

21469
mapper[d] = CustomDimension(
21570
name=sregistry.make_name(prefix=f"{d.name}_expanded"),
@@ -246,4 +101,4 @@ def extract_dims(expr):
246101
mode="unique",
247102
)
248103
dims.update(expr.implicit_dims)
249-
return dims
104+
return dims

devito/petsc/iet/builder.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,14 @@ def _create_dmda_calls(self, dmda):
152152

153153
calls_set_app_ctx = petsc_call('DMSetApplicationContext', [dmda, Byref(mainctx)])
154154

155-
return dmda_create, dm_set_from_opts, dm_setup, dm_mat_type, call_struct_callback, calls_set_app_ctx
155+
return (
156+
dmda_create,
157+
dm_set_from_opts,
158+
dm_setup,
159+
dm_mat_type,
160+
call_struct_callback,
161+
calls_set_app_ctx
162+
)
156163

157164
def _create_dmda(self, dmda):
158165
sobjs = self.solver_objs
@@ -192,7 +199,7 @@ def _create_dmda(self, dmda):
192199
dmda = petsc_call(f'DMDACreate{nspace_dims}d', args)
193200

194201
return dmda
195-
202+
196203

197204
class CoupledBuilder(BuilderBase):
198205
def _setup(self):

devito/petsc/types/dimension.py

Lines changed: 1 addition & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
from devito.types.dimension import Thickness
22

33

4-
54
class SubDimMax(Thickness):
65
"""
76
"""
8-
97
def __init_finalize__(self, *args, **kwargs):
108
self._subdim = kwargs.pop('subdim')
119
self._dtype = self._subdim.dtype
@@ -16,21 +14,14 @@ def __init_finalize__(self, *args, **kwargs):
1614
def subdim(self):
1715
return self._subdim
1816

19-
2017
def _arg_values(self, grid=None, **kwargs):
21-
2218
dist = grid.distributor
23-
2419
# global rtkn
2520
grtkn = kwargs.get(self.subdim.rtkn.name, self.subdim.rtkn.value)
26-
# print(g_x_M)
2721
# decomposition info
2822
decomp = dist.decomposition[self.subdim.parent]
2923
g_x_M = decomp.glb_max
30-
# print(g_x_M)
3124
val = decomp.index_glb_to_loc_unsafe(g_x_M - grtkn)
32-
# print(val)
33-
3425

3526
return {self.name: int(val)}
3627

@@ -39,7 +30,6 @@ def _arg_values(self, grid=None, **kwargs):
3930
class SubDimMin(Thickness):
4031
"""
4132
"""
42-
4333
def __init_finalize__(self, *args, **kwargs):
4434
self._subdim = kwargs.pop('subdim')
4535
self._dtype = self._subdim.dtype
@@ -51,9 +41,7 @@ def subdim(self):
5141
return self._subdim
5242

5343
def _arg_values(self, grid=None, **kwargs):
54-
5544
dist = grid.distributor
56-
5745
# global ltkn
5846
gltkn = kwargs.get(self.subdim.ltkn.name, self.subdim.ltkn.value)
5947

@@ -65,11 +53,9 @@ def _arg_values(self, grid=None, **kwargs):
6553
return {self.name: int(val)}
6654

6755

68-
6956
class SpaceDimMax(Thickness):
7057
"""
7158
"""
72-
7359
def __init_finalize__(self, *args, **kwargs):
7460
self._space_dim = kwargs.pop('space_dim')
7561
self._dtype = self._space_dim.dtype
@@ -80,27 +66,17 @@ def __init_finalize__(self, *args, **kwargs):
8066
def space_dim(self):
8167
return self._space_dim
8268

83-
8469
def _arg_values(self, grid=None, **kwargs):
85-
8670
dist = grid.distributor
87-
88-
# global rtkn
89-
# grtkn = kwargs.get(self.subdim.rtkn.name, self.subdim.rtkn.value)
90-
# print(g_x_M)
91-
# decomposition info
9271
decomp = dist.decomposition[self.space_dim]
9372
# obvs not just x etc..
9473
g_x_M = decomp.glb_max
95-
# print(g_x_M)
96-
val = decomp.index_glb_to_loc_unsafe(g_x_M)
97-
# print(val)
9874

75+
val = decomp.index_glb_to_loc_unsafe(g_x_M)
9976

10077
return {self.name: int(val)}
10178

10279

103-
10480
class SpaceDimMin(Thickness):
10581
"""
10682
"""
@@ -117,20 +93,10 @@ def space_dim(self):
11793

11894

11995
def _arg_values(self, grid=None, **kwargs):
120-
12196
dist = grid.distributor
122-
123-
12497
decomp = dist.decomposition[self.space_dim]
12598
# obvs not just x etc..
12699
g_x_m = decomp.glb_min
127-
# print(g_x_M)
128100
val = decomp.index_glb_to_loc_unsafe(g_x_m)
129-
# print(val)
130-
131101

132102
return {self.name: int(val)}
133-
134-
135-
136-

devito/petsc/types/equation.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,7 @@ def __new__(cls, *args, target=None, **kwargs):
2424
obj = super().__new__(cls, *args, **kwargs)
2525

2626
if target is None:
27-
lhs = obj.lhs
28-
target = getattr(lhs, "function", lhs)
27+
target = obj.lhs.function
2928

3029
obj._target = target
3130
return obj

0 commit comments

Comments
 (0)