It seems that the relation between $p$ and $\theta$ should be fairly simple (with $p>\theta$). Because we are talking about sufficiently general programs, $p$ is just the supremum of clocking times given a single parameter $\omega_1$.
To observe why $p>\theta$ is true, we can do the following. First set a counter variable $n$ to $\omega_1+1$. Now just check for the admissibility of $n$. If the check returns false then just increase the value of $n$ by $1$ and check again. The smallest point at which this check will return true will be $\theta$.
Another thing is that if we define $q(\omega_1)$ same as $q$ but by limiting run-times to $\omega_1$, then we have: $q(\omega_1)< \beta < \theta<p$. We can observe that $q(\omega_1)<\theta$ because $q(\omega_1) \leq |\, \omega_1-\mathrm{computable} \,|\,\,$ by its definition. And, since $\omega_1$ is a bad ordinal, we further have $|\, \omega_1-\mathrm{computable} \,|<\theta\,\,$ givinggiving us $q(\omega_1)<\theta$.
The relation of $q$ to the other ordinals isn't clear to me though.