Due to the nature of my research, I find myself waiting many hours for my computer program to finish running in order to find more bugs in my code so that I can debug. I generally have a pretty good idea on the big picture of my project and what the next two or three tasks I have to complete are.
As an undergraduate, I am not directing my own research but I feel that I'm not using my time as well as I can during these "downtimes". There's a lot I don't understand in my project, so my mind wanders and I end up reading textbooks or general papers in hopes that I can increase my base knowledge in my field. This base knowledge doesn't directly benefit my capabilities in this project though.
I also journal my thoughts and keep a constantly updated TODO list and list of questions I have which I work on, but I feel a sense of slow progress as I wait. Things I can do for example is read the library documentation or practice GDB debugging, etc. Of these things, I am not sure if they will even be that helpful.
I kind of want to ask for more work, but at the same time, there are a lot of unsolved problems in my current project; it's just that I can't constantly work on it since I must wait for some response from my programs I run. Thus, I don't feel that it's right for me to ask for more work since I can't even wrap up the work I'm doing right now. Am I doing something wrong?