Skip to content

Instantly share code, notes, and snippets.

@inducer
Created July 19, 2023 16:25
Show Gist options
  • Save inducer/79a422c28681c2d5963ff140cf778c06 to your computer and use it in GitHub Desktop.
Save inducer/79a422c28681c2d5963ff140cf778c06 to your computer and use it in GitHub Desktop.
diff --git a/test/test_fmm.py b/test/test_fmm.py
index d00b5b4..edba175 100644
--- a/test/test_fmm.py
+++ b/test/test_fmm.py
@@ -92,8 +92,7 @@ pytest_generate_tests = pytest_generate_tests_for_array_contexts([
def test_sumpy_fmm(actx_factory, knl, local_expn_class, mpole_expn_class,
order_varies_with_level, use_translation_classes, use_fft,
fft_backend, visualize=False):
- if visualize:
- logging.basicConfig(level=logging.INFO)
+ logging.basicConfig(level=logging.INFO)
if local_expn_class == VolumeTaylorLocalExpansion and use_fft:
pytest.skip("VolumeTaylorExpansion with FFT takes a lot of resources.")
@@ -120,8 +119,8 @@ def _test_sumpy_fmm(actx_factory, knl, local_expn_class, mpole_expn_class,
actx = actx_factory()
- nsources = 1000
- ntargets = 300
+ nsources = 1_000_000
+ ntargets = nsources
dtype = np.float64
from boxtree.tools import make_normal_particle_array as p_normal
@@ -235,20 +234,22 @@ def _test_sumpy_fmm(actx_factory, knl, local_expn_class, mpole_expn_class,
from boxtree.fmm import drive_fmm
- pot, = drive_fmm(wrangler, (weights,))
+ for i in range(100):
+ print(i)
+ pot, = drive_fmm(wrangler, (weights,))
- from sumpy import P2P
- p2p = P2P(actx.context, target_kernels, exclude_self=False)
- evt, (ref_pot,) = p2p(actx.queue, targets, sources, (weights,),
- **extra_kwargs)
+ # from sumpy import P2P
+ # p2p = P2P(actx.context, target_kernels, exclude_self=False)
+ # evt, (ref_pot,) = p2p(actx.queue, targets, sources, (weights,),
+ # **extra_kwargs)
- pot = actx.to_numpy(pot)
- ref_pot = actx.to_numpy(ref_pot)
+ # pot = actx.to_numpy(pot)
+ # ref_pot = actx.to_numpy(ref_pot)
- rel_err = la.norm(pot - ref_pot, np.inf) / la.norm(ref_pot, np.inf)
- logger.info("order %d -> relative l2 error: %g", order, rel_err)
+ # rel_err = la.norm(pot - ref_pot, np.inf) / la.norm(ref_pot, np.inf)
+ # logger.info("order %d -> relative l2 error: %g", order, rel_err)
- pconv_verifier.add_data_point(order, rel_err)
+ # pconv_verifier.add_data_point(order, rel_err)
logger.info("\n%s", pconv_verifier)
pconv_verifier()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment