What is the different between Texture and Constant memory?

and How can I use double in Texture memory?

You can convert the double to an int2 as suggested in the CUDA 2.1 FAQ post.

You can use a union on the host side to convert double to int2:

union doubleToint2


	double	 d;

	signed int i[2];