Problem Running Anuga with CUDA

Open
#73 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
python
Domain
hpc

Research direction

Reproduce the advanced-domain failure with the linked CUDA merimbula case, using ANUGA 1.3.1, and inspect src/anuga_cuda/init.py and src/anuga_cuda/gpu_domain_advanced.py around the traceback locations. Done means the advanced domain no longer raises the missing yieldtime error while running the case.

Written by the indexing model from the issue text.

Description

Hi all,

I plan to use ANUGA with CUDA. I use this implementation of ANUGA-CUDA https://github.com/budiaji/anuga-cuda

That implementation has two domain, gpu_domain_basic and gpu_domain_advanced. I can choose which domain I use by modifying file https://github.com/budiaji/anuga-cuda/blob/master/src/anuga_cuda/__init__.py

I ran simple merimbula case here https://github.com/budiaji/anuga-cuda/blob/master/tests/CUDA/merimbula/merimbula.py

I am using anuga version 1.3.1. Using basic domain, the simulation ran fine. But using advanced domain I got this error:

Traceback (most recent call last):
  File "test_cuda_shallow_water.py", line 66, in <module>
    for t in domain.evolve(yieldstep = yieldstep, finaltime = finaltime):
  File "/home/somat/source/anuga-cuda/src/anuga_cuda/gpu_domain_advanced.py", line 2580, in evolve
    self.evolve_one_euler_step(yieldstep, self.finaltime)
  File "/home/somat/source/anuga-cuda/src/anuga_cuda/gpu_domain_advanced.py", line 2849, in check_point
    fn(*args, **kv)
  File "/home/somat/source/anuga-cuda/src/anuga_cuda/gpu_domain_advanced.py", line 2191, in evolve_one_euler_step
    self.update_timestep(yieldstep, finaltime)
  File "/home/somat/source/anuga-cuda/src/anuga_cuda/gpu_domain_advanced.py", line 2851, in check_point
    fn.original(self.cotesting_domain, *args, **kv)
  File "/home/somat/.virtualenvs/anuga-1.3.1/local/lib/python2.7/site-packages/anuga/abstract_2d_finite_volumes/generic_domain.py", line 2100, in update_timestep
    if self.get_time() + timestep > self.yieldtime:
AttributeError: CUDA_advanced_domain instance has no attribute 'yieldtime'

I thought that CUDA_advanced_domain class has no attribute yieldtime. I checked and it has attribute yieldtime. But somehow it's missing.

Any ideas? Thank you.

Dominant language
Python
Stars
229
Forks
110
Avg merge
1h 38m
Merged PRs (30d)
1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from GeoscienceAustralia/anuga_core

All issues in GeoscienceAustralia/anuga_core

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.