Skip to content

Gpu code #58

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 217 commits into
base: master
Choose a base branch
from
Open

Gpu code #58

wants to merge 217 commits into from

Conversation

abouzied-nasar
Copy link

No description provided.

… b to stop an error related to prototype overloading in dummy.c in src/cuda
… task.c and h queue.h and removed unused vars from runner_doiact_functions_hydro_gpu.h
… tasks. Code now hangs so there must be some issue with task activation. problem for tomorrow!
@abouzied-nasar
Copy link
Author

This is the current state of the gpu code as implemented in the latest SWIFT version. It's not working properly yet as I think there is an issue with the GPU task activation (the code hangs before the first time step) and I need to implement a mechanism for creating deps for unpack tasks whic do not belong to a cell

…ave been source of hanging bug. Not the case :(
… deps for unpack tasks. CPU version works perfectly but GPU code now hangs for some reason
…gpu and re-worked runner_main_clean.cu but code still hangs
…gpu and re-worked runner_main_clean.cu but code still hangs
…. Removed them all and code still hangs. Will copy back previous files innext commit
…ing to with not unskipping tasks properly. IFDEFs are totally correct and code does not hang when GPU code commented out
…ng. Code is doing something but I don't think it's actually progressing through time steps
…y be one function with if statement or some sort of variable over-loading to allow one function to work on 3 different data types. Something for another day!
…much clean of un-necessary allocations. There are some counters that need to be remove eventually as they are just for debugging and timing but left in for now
…w move onto sorting out recursion through sub_pair tasks.
…s about negative wait though when using recursion through pair tasks
…only have been done once for the top level task. Moved decrementing from the GPU launch function into runner_main so that s->waiting only decremented once per top level task
…npacking but I still need to sort out the counters for all eventualities
…rse->pack->offload->re-pack_if_necessary->offload_again_if_necessary
…(probably). Need to figure out how to get the locking/unlocking business to work properly though as I am now unpacking to a few unlocked cells
…resho.ym edited to allow recursion). The code now hangs trying to lock a pair of cells. Commented out the lock/unlock mechanism to confirm that code does not give correct results without locking cells
… pointers to cii_l and cjj_l are incorrect. Need to go through the algorithm again and double check I'm using the right indices and re-setting indices correctly
…he new top_task->ci/cj arrays. Code now crashes when trying to recurse and add entries to the top_task->ci/cj arrays
…till get same issue. It is not because of how I am allocating the arrays the issue is in how I am managing the counting and book keeping
…ys and still get same issue. It is not because of how I am allocating the arrays the issue is in how I am managing the counting and book keeping"

This reverts commit 1625f17.
…same counter for recursion and for offload and unpacking. Seems a bit better but code still crashes trying toe write somewhere that doesn't exist in the counter arrays. The counter for n_leaves_found seems iffy as it has gone up to 30 with this configuration which seems way too much for what should be one level of recursion
…ting n_packed per top level task. Tested on 1 thread and code is running fine
…when run on multi threads. Also, since problem gets worse in parallel there's probz an issue with locking/unlocking DEBUG DEBUG DEBUG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants