Skip to content
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

Gpu code #58

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

Gpu code #58

wants to merge 137 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
…ty pairs and selfs, in comparison to same setup but with smaller test case
…hould be replaced with a continue; if the task in unpack
…d of ==0 for when stealing is active for selfs too. Code still hangs but after 60-70 steps. Not perfect but good enough for the first paper
…gs. Need to double check if I put a bug in somewhere or if it is just not good enough to let me run a few steps for the paper
…f < 2. Removed some commented out code in runner_main. Edited scheduler_gettask so stealing code is a bit cleaner when stealing GPU tasks
…ather than exit(0). Removed if statment querying for n tasks left in scheduler from within runner_main as it was causing kernel launches with invalid configuration (0 blocks). Reverted space.h to default parameters. Added parameters to control subcell size for splitting in gresho.yml (cleaner way of doing it)
…n anticipated. The code works fine for h=1.9dx and lower but we end up with 8x particles per cell if we set h=1.99dx due to some cells being un-splittable due to h condition
…hangs with s->waiting greater than zero and the dumper thread shows that some unpacks are waiting (for packs) and some end_force tasks are waiting (for unpack_f tasks)
… launch_leftovers = 1 whilst the number of tasks left is equal or greater to 1 and the code sets launc_leftovers to 1 even when the counter shows that there is still 1 pack task of that type left
…sert() causes counters to go negative. Code hangs when changing condition to launch_leftovers to if (tasks_left == 0)
…seem to be working as intended. Probably incorrect usage of the CAS
…un for longer before hanging. Need to investigate why!
…r GPU memory allocation. Removed packs_stolen counter update from scheduler_gettask(). Cleaned up scheduler.c
…r GPU memory allocation. Removed packs_stolen counter update from scheduler_gettask(). Cleaned up scheduler.c
…fixed code hanging without task stealing. Tried out a few ideas to try and prevent code from hanging with stealing ON to no avail
…nch_leftovers. Seems to run for slightly longer but still hangs. Need to test on GH to see if I can get away with this code for writing the paper!
…so that they are an array attached to scheduler struct where the array indices represent the scheduler's queues. The code hangs at step 0 suggesting there is a mistake in the new implementation. Double check & REVISE
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