How to get the dimension of tensors at runtime?
You have to make the tensors an output of the graph. For example, if showme_tensor is the tensor you want to print, just run the graph like that : 
_showme_tensor = sess.run(showme_tensor) 
and then you can just print the output as you print a list. If you have different tensors to print, you can just add them like that :
_showme_tensor_1, _showme_tensor_2 = sess.run([showme_tensor_1, showme_tensor_2])
I can get the dimensions of tensors at graph construction time via manually printing shapes of tensors(tf.shape()) but how to get the shape of these tensors at session runtime? 
The reason that I want shape of tensors at runtime is because at graph construction time shape of some tensors is coming as (?,8) and I cannot deduce the first dimension then.